分析移动应用程序通过 SSL 发送的请求的最佳方法是什么?通信协议不一定是 HTTP/S,因此使用 BURP/ZAP/Fiddler 或任何其他 HTTP 代理拦截它们不一定有效,但是 - 我如何让流量甚至到达代理?
对于经典 HTTPS,您应该使用 Burp/Zap/mitmproxy,因为我知道没有更好的替代方案。我还没有真正看到在应用程序中使用 SSL/TLS 套件的任何其他协议,但我要么尝试对应用程序进行逆向工程以获取协议,要么尝试获取加密密钥并解密流量。但这需要很多时间。
您确定它真的是非标准端口上的 HTTPS 以外的其他协议吗?
安装应用程序的设备是否需要 root 才能执行此任务?
您不需要根设备进行 HTTPS 嗅探,您所要做的就是设置代理和受信任的证书。对于其他协议 - 嗯,这取决于......您可以将所有流量重定向到您选择的网关,但只要协议是加密的,我相信这对您没有多大用处。
如果应用程序使用证书固定,还有办法做到这一点吗?
是的,可以在两个主要平台上绕过证书固定。两者都需要 root ,想。
我特别有兴趣了解 Whatsapp 安全模型的工作原理——即他们有什么机制来防止恶意用户获取合法用户的聊天历史记录(因为没有实际登录——是否有 cookie/另一个从设备发送的识别服务器前用户的机制?)
我的组织正在考虑实施一个以类似方式工作的消息传递应用程序,我们正在努力确保恶意用户无法窃取合法用户的身份。(我们不打算实现登录机制)
好吧,您最好的选择是聘请有能力的渗透测试人员进行应用程序安全评估。我认为 WhatsApp 的安全性应该非常高,因为他们很少发生严重的安全事件,而且他们是一个拥有庞大用户群的知名组织,而且他们非常重视安全......但你永远不能太确定。
希望这篇文章能有所帮助。