MASTG-TEST-0236: 网络上观察到的明文流量
概述¶
此测试会拦截应用的传入和传出网络流量,并检查是否存在任何明文通信。尽管静态检查只能显示*潜在*的明文流量,但此动态测试会显示应用明确进行的所有通信。
警告
- 在网络级别拦截流量将显示*设备*执行的所有流量,而不仅仅是单个应用的流量。将流量与特定应用关联起来可能很困难,尤其是在设备上安装了更多应用时。
- 将拦截到的流量与应用中的特定位置关联起来可能很困难,并且需要手动分析代码。
- 动态分析在您与应用进行广泛交互时效果最佳。但即便如此,仍然可能存在难以或无法在每台设备上执行的特殊情况。因此,此测试的结果可能不尽全面。
步骤¶
您可以采用以下方法之一
- 设置 * 基本网络监控/嗅探*(适用于安卓)或 * 基本网络监控/嗅探*(适用于 iOS)以捕获所有流量。
- 设置 * 设置拦截代理*(适用于安卓)或 * 设置拦截代理*(适用于 iOS)以捕获所有流量。
备注:
- 拦截代理只会显示 HTTP(S) 流量。但是,您可以使用一些特定于工具的插件,例如 Burp-non-HTTP-Extension 或其他工具,例如 * MITM Relay* 来解码和可视化通过 XMPP 及其他协议进行的通信。
- 由于证书锁定(certificate pinning),某些应用可能无法与 Burp 和 * ZAP* 等代理正常工作。在这种情况下,您仍然可以使用基本网络嗅探来检测明文流量。否则,您可以尝试禁用锁定(请参阅安卓的 * 绕过证书锁定* 和 iOS 的 * 绕过证书锁定*)。
观察¶
输出包含捕获的网络流量。
评估¶
如果目标应用产生任何明文流量,则测试用例失败。
注意:这可能很难确定,因为流量可能来自设备上的任何应用。请参阅概述部分。