10大最重要的Web安全风险之四--A4-不安全的直接对象引用

OWASP TOP10

A1-注入    php

A2-跨站脚本(XSS)   安全

A3-错误的认证和会话管理  app

A4-不安全的直接对象引用   加密

A5-伪造跨站请求(CSRF)     -- Cross-Site Request Forgery spa

A7-限制远程访问失败  对象

A8-未验证的重定向和传递  get

A9-不安全的加密存储    it

A10-不足的传输层保护 test


所谓“不安全的对象直接引用”,即Insecure direct object references,意指一个已经受权的用户,经过更改访问时的一个参数,从而访问到了本来其并无获得受权的对象。Web应用每每在生成Web页面时会用它的真实名字,且并不会对全部的目标对象访问时来检查用户权限,因此这就形成了不安全的对象直接引用的漏洞。 object

咱们看以下的一个示例,也许这样就更容易理解什么是不安全的对象直接引用。

1.      攻击者发现他本身的参数是6065,即?acct=6065;

2.      他能够直接更改参数为6066,即?acct=6066;

3.      这样他就能够直接看到6066用户的帐户信息了。


通常来讲,防止不安全的直接对象引用的方法有如下两种:

1.      使用非直接的对象引用——这防止了攻击者直接访问其并未受权的对象,经过一种mapping或是其余的方法让攻击者没法直接访问。

2.      检查访问——对每个来自于不信任的源的直接对象引用都必须包含访问控制检查,从而确信该用户对该对象拥有访问权。

相关文章
相关标签/搜索