使用 SSL 的应用程序的 fakenet

逆向工程 工具 https协议
2021-06-30 11:25:23

我满怀希望地尝试使用 fakenet-ng 来测试欺骗或 MITM 类型的漏洞。我正在测试的 android 应用程序使用 HTTPS POST,并且使用 fakenet 它停止发送任何数据,因为该应用程序拒绝可能由 fakenet 创建的 SSL 证书。我也在 Windows 10 上简单地尝试了 Edge 和 Chrome,同样的交易 - 我无法到达一垒。我找不到有关 fakenet 和证书的任何信息。Fakenet 将解密 SSL 列为一项很棒的功能 - 但如果没有解决证书问题,它似乎毫无用处 - 我一定遗漏了一些东西 - 如何让应用程序将 HTTPS 数据发送到 fakenet?

2个回答

我正在使用 burpsuite 进行 HTTPS 检查。需要在手机上安装其根证书。大多数应用程序不验证证书,或使用手机证书存储。Windows 用户经常使用 Fiddler。

这些工具会生成一个新的 CA 证书,需要将其移至手机证书存储区并获得信任。

如果应用程序第一次下载证书并使用 SSL 固定,最好在首次启动应用程序之前确保您的手机设置为使用代理。

我尝试过的所有电话应用程序都使用操作系统调用,因此将使用系统代理。因此,带有数据修改的 MitM 是微不足道的。

如果我们谈论的是客户端证书,请尝试在 apk 上运行 unzip 并查看包中是否有证书文件。

反向工程 HTTPS 通常是微不足道的,但越来越多的人要么做 HTTPS 固定,要么使用 JWT 进行登录,或者做其他事情来确保请求不被修改。在这种情况下,您需要真正进行低级逆向工程。

似乎大多数人更好地使用该mitmproxy工具(请参阅文档)以及SSLsplit这种用法。

为了完整起见,这里有几页解释了如何做: