跳过内容

MASTG-TEST-0286: 允许信任用户提供 CA 的网络安全配置

概述

此测试评估 Android 应用是否通过在其网络安全配置中包含 <certificates src="user"/>显式信任用户添加的 CA 证书。 即使从 Android 7.0(API 级别 24)开始,应用默认不再信任用户添加的 CA,此配置也会覆盖该行为。

这种信任可能会使应用程序暴露于 MITM 攻击,因为用户安装的恶意 CA 可能会拦截安全通信。

步骤

  1. 获取 AndroidManifest.xml( 从 AndroidManifest 获取信息)。
  2. 检查是否在 <application> 标签中设置了 android:networkSecurityConfig 属性。
  3. 检查引用的网络安全配置文件,并提取所有使用 <certificates src="user" /> 的地方。

观察

输出包含来自网络安全配置文件的所有 <trust-anchors> 以及任何已定义的 <certificates> 条目(如果存在)。

评估

如果 <certificates src="user" /> 已被定义为网络安全配置文件中 <trust-anchors> 的一部分,则测试用例失败。