【问题标题】:Can an App intercept network traffic of another app?一个 App 可以拦截另一个 App 的网络流量吗?
【发布时间】:2018-09-19 00:42:58
【问题描述】:

我的 android 应用程序向服务器发送带有一些访问参数的 GET 请求。服务器响应一个 json 文件。 有没有办法让我在它交付的那一刻得到那个 json 文件?

问这个问题是因为有人可以嗅探我的应用程序的网络流量,我想消除它。

【问题讨论】:

    标签: android json http https get


    【解决方案1】:

    不,您不能嗅探其他应用程序的网络调用,否则将被视为操作系统中的安全漏洞,这在正常访问下几乎是不可能的

    【讨论】:

      【解决方案2】:

      正如@Pavneet_Singh 的回答中所述,应用程序无法读取其他应用程序生成的流量,除非它是 VPN 应用程序,它可以读取通过的所有流量。用户需要明确接受这一点。有一些网络分析器应用程序的例子就是这样运行的。

      问这个问题是因为有人嗅探我的应用程序,我不知道有没有办法消除它。

      听起来您担心有人在分析您应用的网络流量。任何人都可以使用代理服务器来分析通过它的网络流量,例如使用WireSharkFiddler。如果你不想这样,你可以使用 HTTPS 来加密你的网络流量,certificate pinning 只在服务器经过验证后才发出请求。没有证书固定的 HTTPS 不足以阻止其他人读取您的应用程序发送的流量。

      【讨论】:

      • 感谢@Bertware!这就是我想听到的。
      • 证书固定旨在缓解最不可信的 CA 问题,几乎可以在每个应用程序中实施。但是,说“没有证书固定的 HTTPS 不足以防止其他人读取您的应用程序发送的流量”这种说法太强了。
      • @JamesKPolk 我说的是完全控制网络和设备的第三个人,这意味着他可以安装额外的证书等。这样即使是 HTTPS 也可以被规避(如果我'我错了)。例如,这是 Fiddler 中的默认功能。对于“正常”使用,我认为 HTTPS 足够强大。
      • 是的,当您无法信任您所在的平台时,固定有助于缓解问题在某种程度上,尤其有助于解决有人安装的情况。例如Fiddler 证书或其他代理证书。我想我只是在吹毛求疵,正如我所说,固定几乎总是一个好主意,而且并不是特别难。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-09
      • 2019-08-17
      相关资源
      最近更新 更多