本文是使用人工智能生成的技术说明与实现示例。所发布的代码和步骤基于一手资料构建,但未经作者在真实设备上进行运行验证。根据环境和版本的不同,实际运行效果可能会有所差异。
OWASP Top 10 是一份标准文档,旨在加深人们对 Web 应用程序中最重要安全风险的认识。它在开发人员和 Web 应用安全领域得到广泛认可,并被定位为迈向更安全编码的第一步。企业采用该文档并开始将应用程序风险降至最低的过程,可以成为将组织内的软件开发文化转变为产出安全代码的有效第一步。 本文将根据官方信息,梳理 OWASP Top 10 的历史、数据分析计划以及与运维检查相对应的构成要素。
从官方信息看 OWASP Top 10 的概述与演变
OWASP Top 10 代表了关于 Web 应用程序漏洞和安全风险的广泛共识文档。最新版本为 OWASP Top Ten 2025,而过去的版本如 OWASP Top Ten 2021、OWASP Top 10 2017(PDF)以及更早的版本则在 GitHub 仓库等平台公开。
此外,随着各版本的发布,多语言翻译工作一直在积极开展。例如,在 2021 版、2017 版和 2013 版等版本中,留下了日语等许多语言的已完成翻译以及社区贡献的记录。
面向 2025 版的数据分析计划与收集流程
针对 OWASP Top 10 2025,已制定出详细的数据分析计划,用于收集和分析与已识别应用程序漏洞相关联的综合数据集。
数据收集来源与基础设施
数据收集自各种渠道,例如安全供应商、咨询公司、漏洞赏金计划以及企业和组织的贡献。这些数据将进行标准化处理,以便在人机协同工具(HaT)和工具辅助人类(TaH)之间进行标准对齐的比较。计划利用 OWASP Azure 云基础设施进行分析和存储。
数据贡献的形式与验证(已验证 / 未验证)
数据贡献支持已知(Known)和接近匿名(Pseudo-anonymous)的形式。从提高数据有效性、质量和可靠性的角度出发,建议采用可识别贡献者的“已知”形式。贡献者的验证状态分为以下几种情况:
已验证数据贡献(Verified Data Contribution)
情景 1:贡献者已知,且同意公开披露其作为贡献当事方的身份。
情景 2:贡献者已知,但不倾向于公开具名。
情景 3:贡献者已知,但不希望记录在数据集中。
未验证数据贡献(Unverified Data Contribution)
- 情景 4:贡献者匿名。当未验证数据包含在分析对象中时,会进行谨慎区分处理。
数据结构以及必填项与可选项
为了进行准确的分析,规定了必要的数据元素和可选的元数据。最低要求的项目包括:时间范围(期间)、测试的应用程序总数、CWE 列表以及包含各自 CWE 的应用程序数量。
此外,建议额外提供以下元数据:
贡献者名称(组织名或匿名)
贡献者的联系电子邮箱
时间范围(2024 年、2023 年、2022 年、2021 年等)
测试的应用程序数量
测试类型(TaH、HaT、工具)
主要语言(代码)
地理区域(全球、北美、欧盟、亚洲、其他)
主要行业(多个、金融、工业、软件等)
是否包含重新测试或同一应用程序的重复测试(T/F)
CWE 数据(CWE 列表及检测到的应用程序数量。建议使用核心 CWE 而非 CWE 类别)
此外,如果同时拥有 HaT(Human assisted Tools:工具主导、体量和频率较高)和 TaH(Tool assisted Human:人工主导、体量和频率较低)这两种数据集,建议分别提交。
调查与社区补充
除了数据分析外,类似于 OWASP Top 10 2021,还将使用谷歌表单等工具进行调查,以确定那些尚未反映在数据中但社区认为很重要的类别。调查中包含的 CWE 是根据当前趋势的发现以及数据中 Top 10 之外的 CWE 等因素来选定的。
分析方法的要点
在进行高级别数据标准化的同时,也将保留原始数据集的版本以供未来分析使用。将分析 CWE 的分布,并在必要时将 CWE 重新分类并整合到更大的分组(分类)中,所有标准化操作都将进行明确记录。
此外,作为风险评估方法,将延续计算和确定发生率(Incidence rate)的模型,该发生率表示应用程序包含至少一个 CWE 实例的概率,而不是单个应用程序内的发现频率(Frequency)。通过比较数据集中测试的应用程序总数与发现每个 CWE 的应用程序数量来计算发生率。此外,正在推进为前 20 到 30 个 CWE 开发基础 CWSS 分数,并将潜在影响纳入 Top 10 权重中的方针。
使用时的注意事项与运维检查对应思路
在将 OWASP Top 10 对应到组织的运维检查中时,安全的方法不是重现攻击,而是清点针对各个风险分类的配置和监控项目。正如一手资料所示,要求以变革开发文化和将风险降至最低为第一步,参考公开的标准文档和数据结构定义来梳理本公司的应用程序资产和测试结果。

