近期,owasp十大应用风向清单发布了更新,基于十几家不同组织的安全数据组合,覆盖了近300万个应用程序,以及对221名安全专家的调查。

此次榜单更新,出现了一些变化,软件供应链故障和异常条件处理不当首次出现在十大清单。

此次榜单更新,出现了一些变化,软件供应链故障和异常条件处理不当首次出现在十大清单。
但一些长期存在的问题,如失效的访问控制,仍然位居榜首,事实上,失效的访问控自2003年owasp首次发布该清单以来就一直存在。
略显意外的是,人工智能未进入前十名,但处于即将被纳入的边缘,被列入一个“下一步”关注问题章节。此外同样处于即将被纳入的边缘的风险还有应用程序缺乏弹性和内存管理故障。
以下是owasp 2025十大应用风险清单:
top1:失效的访问控制
当应用程序未能正确执行对已认证用户允许执行操作的限制时,允许攻击者访问未经授权的功能或数据。
例如,攻击者可能操纵url参数以访问其他用户的账户信息,或将自身权限从普通用户提升为管理员。此项现在还包含了服务器端请求伪造,这在2021年是一个独立的清单项。
top2:安全配置错误
安全设置未正确定义、实施或维护,使系统暴露于攻击之下。
常见例子包括从未更改的默认凭据、遗留的不必要功能、暴露敏感信息的错误消息,或公开可访问的云存储桶。此风险点从2021年的第五位跃升至2025年的第二位。
top3:软件供应链故障
攻击者会在软件构建、分发或更新过程中进行破坏,注入恶意代码,然后分发给多个组织。
例如,攻击者可能破坏一个流行的开源库并注入恶意代码,然后这些代码被纳入成千上万个依赖它的应用程序中;或者破坏供应商的系统,在合法的软件更新中插入后门。
top4:加密机制失效
应用程序未能通过加密有效保护敏感数据,或使用强度薄弱或已破解的加密算法。
常见例子包括以明文传输敏感数据、使用弱加密算法、未正确验证ssl/tls证书,或存储密码时未进行适当哈希处理。这些故障通常导致敏感数据暴露或系统被攻破。此项从2021年列表的第二位下降。
top5:注入
将不受信任的数据作为命令或查询的一部分提交,进而欺骗应用程序执行非预期的命令或访问未经授权的数据。
常见例子包括跨站脚本和sql注入。此项在今年列表上也下降了几位。
top6:不安全的设计
在应用程序设计阶段未充分考虑安全性,导致控制措施缺失或无效。
常见例子包括未能实施适当的威胁建模、在开发开始前未建立安全需求,或设计缺乏深度防御的系统。此类别于2021年引入,旨在关注设计和架构缺陷而非实现错误,但由于行业在威胁建模方面取得了显著改进,它下降了几个位置。
top7:身份验证失败
应用程序未能正确验证用户身份,或未能保护身份验证凭据和会话令牌。
例如,允许暴力破解攻击、允许弱密码、在url中暴露会话id、注销后未正确使会话失效,或未对敏感功能实施多因素认证。
top8:软件和数据完整性故障
应用程序未能维护信任边界并验证软件、代码和数据工件的完整性。
例如,依赖来自不可信来源的插件、库或模块而未进行完整性检查;不安全的ci/cd流水线允许在部署前修改代码;或应用程序在未验证数字签名的情况下自动更新。
top9:安全日志和监控故障
应用程序未能记录与安全相关的事件,或未能在发生可疑活动时及时发出警报通知安全团队。
例如,未记录失败的登录尝试、在本地存储日志而无备份、记录的细节不足以重建攻击,或生成的日志无法与安全信息和事件管理(siem)系统集成,仅有完善的日志而没有警报,对于识别安全事件价值有限。
top10:异常条件处理不当
应用程序未能正确处理错误、边缘情况和异常条件,导致安全漏洞。
常见例子包括显示详细错误消息泄露系统架构的敏感信息、发生错误时安全检查失败并允许未授权访问,或应用程序崩溃时在内存转储中暴露敏感数据。
这是一个的类别,一位owasp项目负责人表示,此类别几年来一直徘徊在十名之外,此次入选是基于对专家的调查。
参考链接:
https://www.csoonline.com/article/4126865/software-supply-chain-risks-join-the-owasp-top-10-list-access-control-still-on-top.html
https://www.csoonline.com/article/4126865/software-supply-chain-risks-join-the-owasp-top-10-list-access-control-still-on-top.html

