隐藏请求/响应标头,以获取来自提琴手或其他调试代理应用的请求

时间:2019-06-06 17:48:59

标签: api security fiddler mobile-application charles-proxy

我有一个高度依赖于api响应的移动应用程序,我正在使用charles代理和小提琴手来查看我的应用程序发出的api调用,并且我注意到get api调用之一可以查看所有请求的完整网址参数(可以)和请求标头(包括安全密钥)。

因此,使用这些信息,任何人都可以在移动应用程序外部执行该api。我的应用有数百万用户,如果有人运行脚本来增加流量,也会增加服务器负载。所以有什么办法可以保护或隐藏那些密钥?

我只能想到一种实现方式

应用程序和api上的加密

还有更好的方法吗?

1 个答案:

答案 0 :(得分:0)

您可以在应用程序中实现证书或公钥固定(对于叶子或根CA证书)。这使攻击者更难使用代理和拦截HTTPS通信。但是,使用XPosed和SSL取消固定模块仍然可以使用。

请记住,APK文件可以轻松反编译,因此您不必攻击网络流量。

因此,下一步是加强您的应用程序,使其抵抗XPosed或Frida的操纵。请注意,好的强化框架会花费很多钱。通常,提供的保护随着成本的提高而增加。

另请参阅this related question