首页 > 解决方案 > 如何在 Android 中执行中间人攻击?

问题描述

我正在构建一个我想阻止特定主机的应用程序。我们通过 Android 中的 VPNService 拦截了网络流量,我们得到了所有的数据包。我进行了 DNS 解析以从目标地址获取主机名。我的目标是根据 Web 内容阻止特定的 URL。为了获得完整的 URL,我正在考虑尝试 MITM 攻击以从 TCP 数据包中获取解密数据。

我应该如何采用这种方法?另外,有没有其他方法可以实现这个目标?

注意:这仅适用于非 root 设备。

标签: androidvpnmitmproxy

解决方案


您可能希望调整此https://stackoverflow.com/a/22040887/6655884以使用您的服务。这个想法是安装您自己的证书根目录,以便您的 MITM 证书在 Android 上受到信任。

这不需要root。

但是,如果您打算将其作为 APK 启动,而不是针对特定设备,则要求用户安装证书是行不通的。

我认为不安装自定义证书是不可能的


推荐阅读