2025 OWASP TOP1 丨访问控制失效(Broken Access Control)
OWASP原文背景引用在前十名中保持第1位的地位测试的应用中100%都被发现存在某种形式的访问控制失效。重要CWE包括CWE-200向未经授权行为者暴露敏感信息、CWE-201通过发送数据暴露敏感信息、CWE-918服务器端请求伪造SSRF和CWE-352跨站点请求伪造CSRF。该类别在贡献数据中出现次数最多相关 CVE 数量第二多。A01 故障的访问控制 - OWASP Top 102025基本描述认证Authentication通过账号、密码或者物理凭证等其他方式进行身份确认。授权/访问控制Authorization/Access Control访问控制能够防止用户作出超出权限的行为将用户限制在其所应在的范围内。认证和授权的区别认证并非等同于授权许多系统会把认证等同于授权产生水平越权漏洞。一般错误理解是登录后就会有账户当访问内容的时候会查看账户的权限等级权限足够则允许访问。这样一来当平级访问其他账户内容时就会发生水平越权。也就是你的平级同事进了公司没有到自己的工位上反而坐在了你的工位上开始用你电脑打游戏到时候一查还算是你打的。所以在认证之后访问内容时应该做好授权用代码最好理解// 认证验证权限等级 if ( role.level admin ) // 授权 if ( role.id current_id )失效影响访问控制失效导致的最直接后果就是数据泄露与隐私暴露。此外还会导致账户接管、业务操作、财务损失、服务破坏、数据丢失篡改。主要类型水平越权Horizontal Privilege Escalation同级别用户之间非法访问对方的私有数据。垂直越权Vertical Privilege Escalation低权限用户如普通会员执行了高权限如管理员才能做的操作。上下文相关的访问控制失效某些操作在特定状态下才允许但系统未校验状态。强制浏览Forced Browsing通过猜测或发现未在UI中链接的受保护资源直接访问。CWECommon Weakness Enumeration对原文中的几个CWE做了一下了解。CWE-200向未经授权行为者暴露敏感信息定义系统允许未授权的访问者访问本应受到保护的敏感信息。核心原理·信息被放置在未受保护的地方·访问规则有漏洞未做好授权检查·错误处理、调试返回信息过多·服务器响应包含内部数据示例目录列表开启存在 www.example.com/backup/ 可以查看备份文件列表。属于Web服务器配置不当API 返回额外字段后端编写 /api/user 来获得用户信息前端在请求头像时也使用这个连接但只使用其中的头像字段。则可能造成信息泄露可能泄露密码登敏感信息。CWE-201通过发送数据暴露敏感信息定义应用程序在数据传输过程中没有卫队敏感信息做充分保护导致信息泄露。核心原理·数据传输过程中未做加密·数据写入到日志文件中且被读取·数据被发送给不应接收的第三方·数据包含在HTTP Referer头中泄露给外部站点·数据在URL查询字符串中传递被浏览器等记录示例明文HTTP传输众所周知使用HTTP传输而非HTTPS会变的不幸HTTP在网络中明文传输纯自助餐。日志记录敏感信息比如记录每一个URL而URL中包括password等字段。得到日志文件之后依旧自助餐。CWE-918服务器端请求伪造SSRF定义攻击者诱导服务器端应用程序向其指定的任意地址发起HTTP请求。服务器通常位于防火墙内部具有访问内网资源的权限因此SSRF常被用于探测内网、攻击内部系统或读取本地文件。核心原理·应用程序的功能需要从用户提供的URL获取资源·开发者未对用户输入的URL进行充分验证·服务器端向该目标发起请求并将响应返回给攻击者或者利用请求进行盲打示例端口扫描应用提供一个“网站截图”功能。攻击者输入 http://10.0.0.1:8080/admin 并观察响应时间或错误信息可以判断内网某主机的端口是否开放。读取本地文件应用支持 file:// 协议。攻击者输入 file:///etv/passwd 服务器读取本地文件并返回。CWE-352跨站点请求伪造CSRF定义攻击者诱导已认证用户在不知情的情况下向受信任网站发送非预期请求。网站仅验证了用户的会话Cookie而未验证请求的实际意图导致攻击者可以“借用”用户的身份执行操作。核心原理浏览器保存了用户登录目标网站的Cookie攻击者构造恶意网站或邮件其中包含自动提交的表单或图片链接指向目标网站的敏感操作例如转账。当用户访问的时候浏览器自动发送请求使用用户的Cookie。网站收到后认为用户已认证执行操作。与XSS的区别XSS 利用网站对用户输入的信任在网站内部执行恶意脚本。而CSRF 利用浏览器对Cookie的自动携带机制伪造用户的请求。CSRF 不依赖注入脚本而是依赖用户当前有效的会话。好想吃自助餐看了看余额感觉还是吃拼好饭吧。比格披萨可以不要在抖音上直播了吗刷到好几次了但我没钱吃