支持 OWASP 移动应用安全验证标准
移动应用安全验证标准是构建安全移动应用的重要一步。Ostorlab 现已支持针对 L1、L2 和 Resilience 级别生成合规报告。

移动应用安全验证标准(MASVS)是一个 OWASP 项目,它凝聚了 Carlos Holguera(@grepharder)和 Sven Schleier(@bsd_daemon)的出色工作,并得到了 NowSecure 的慷慨支持。
MASVS 是一项移动应用安全标准,开发人员和移动软件工程师可以利用它来保护移动应用的安全。
安全测试人员也可以使用该标准来验证测试结果的一致性和完整性。
通过实现这些目标,MASVS 可以为移动应用的安全性提供基线和一定程度的信心。
OWASP 安全级别
MASVS 定义了三个合规级别:L1、L2 和 Resilience。
OWASP L1:标准安全
L1 是所有移动应用的移动安全测试基线。 它列出了在对开发成本和用户体验影响合理的前提下可以遵循的安全最佳实践。 所有应用都必须满足 MASVS-L1 中的要求。
OWASP L2:纵深防御
MASVS-L2 引入了超出标准要求的高级安全控制措施。要满足 MASVS-L2,必须存在威胁模型,并且安全必须成为应用架构和设计中不可或缺的一部分。基于威胁模型,可以选择并成功实施合适的 MASVS-L2 控制措施。该级别适用于处理高度敏感数据的应用,例如手机银行应用。
OWASP Resilience:抵御逆向工程与篡改的韧性
最后一个级别是 Resilience,它确保针对客户端威胁的防护,适用于以保护知识产权为业务目标的移动应用。MASVS-R 中列出的韧性控制措施可用于增加获取原始源代码所需的工作量,并阻碍篡改或破解。
OWASP 安全要求分组:
MASVS 以 MSTG-ID 的形式对其要求进行了细分。MSTG-ID 分为以下几组: 架构设计与威胁建模要求: 该要求涉及规划移动应用架构时的安全问题,目标是识别所有功能组件和安全角色。 此外,由于大多数移动应用都作为远程服务的客户端运行,该要求确保了仅对移动应用进行孤立测试是不够的。
-
数据存储与隐私要求: 保护用户凭据和私人信息等敏感数据是移动安全的一个关键重点。首先,如果 IPC 等操作系统机制使用不当,敏感数据可能会无意中暴露给在同一设备上运行的其他应用。数据还可能无意中泄露到云存储、备份或键盘缓存中。与其他设备相比,移动设备更容易丢失或被盗,因此攻击者获得物理访问权限的情况更有可能发生。该要求确保存在额外的保护措施,使获取敏感数据变得更加困难。
-
密码学要求: 在保护移动设备上存储的数据时,密码学是必不可少的要素。这也是一个很容易出现严重问题的类别,尤其是在没有遵循标准规范的情况下。本章中控制措施的目的是确保被验证的应用按照行业最佳实践使用密码学,包括: 使用经过验证的密码库 正确选择和配置密码原语
-
身份验证与会话管理要求: 在大多数情况下,用户登录远程服务是移动应用整体架构中不可或缺的一部分。尽管大部分逻辑发生在服务端,MASVS 仍对用户账户和会话的管理方式定义了一些基本要求。
-
网络通信要求: 本节的目的是确保移动应用与远程服务端点之间交换的信息的机密性和完整性。移动应用至少必须使用配置得当的 TLS 协议,为网络通信建立安全的加密通道。Level 2 列出了额外的纵深防御措施,例如 SSL 证书锁定。
-
平台交互要求: 该组中的控制措施确保应用以安全的方式使用平台 API 和标准组件,涵盖应用之间通过 IPC 进行的通信。
-
代码质量与构建设置要求: 该控制措施的目标是确保遵循基本的安全编码实践,并启用编译器提供的“免费”安全功能。
-
阻碍动态分析与篡改: 本节中的控制措施应根据需要应用,具体取决于对应用遭到未经授权篡改和/或代码遭到逆向工程所带来风险的评估。有关业务风险及相关技术威胁的列表,请参阅 OWASP 文档“Technical Risks of Reverse Engineering and Unauthorized Code Modification Reverse Engineering and Code Modification Prevention”。
-
设备绑定: 应用使用基于设备多个唯一属性生成的设备指纹,实现“设备绑定”功能。
-
阻碍理解: 属于该应用的所有可执行文件和库要么在文件级别进行了加密,和/或可执行文件内部的重要代码和数据段经过加密或加壳。简单的静态分析无法揭示重要的代码或数据。
Ostorlab 的 MASVS 扫描覆盖
Ostorlab 新的标准功能会自动生成一份报告,展示在满足 MASVS 标准各级别方面存在的问题。

只需在扫描报告中切换到标准选项卡,即可轻松访问这些报告。您可以在各报告之间轻松切换,也就是说,您可以根据技术目标从一个级别切换到另一个级别,从而确定应优先关注哪个级别。 每个级别都会列出相应的类别及其描述,包括发现的问题,并清晰地标示各项发现及其风险等级、标签、标题、描述以及对漏洞本身的引用。
每个 OWASP 级别后面都会以红色显示发现的问题数量,否则会显示一个“未发现问题”的标签。
您现在就可以使用 Ostorlab 免费社区版扫描器生成报告,并列出影响您不同合规级别的所有发现。