OWASP TOP 10 详解
(1)——A1 —— 注入
包括但不限于sql注入、cookie注入、xxe注入等,此类为开发者忽略了客户端对数据库的恶意代码拼接读取造成的危害,可导致非法分子直接获取数据库账号及密码获取管理员权限。如下图:
防御方案:
附:大概的防御就是waf,一款强大的waf是防御的最佳选择。
(2)——A2 —— 失效的身份认证和会话管理
SSO单点登录,cookie相关信息显示在url内或是未经允许即可访问部分或全部用户信息等
(3)——A3 —— 跨站
跨站脚本语言(XSS),常见发生于搜索栏、输入框、留言板、评论区;存在三种分类:反射型、DOM型、存储型;其中后两者的危害较大,跨站脚本常被利用于获取管理员账号及密码,制作木马、钓鱼、网页截图等
防范方案:
附:确定允许使用的标签列表,对部分属性限定对其设置
(4)——A4 —— 不安全的对象直接引用
类似于常见的业务逻辑漏洞,越权访问他人账号信息等。如下所示:
防范方案:
简单而言就是:不使用明文的输入;不使用单一cookie验证;拒绝向上访问文件操作等
(5)——A5 —— 跨站请求伪造(CSRF)
CSRF:通过模拟真实网页信息让用户点击访问,可以直接对用户的密码或者重要文件进行跨站篡改、盗取操作,也可以未经用户的许可,使用用户的名义散播不良信息、盗取钱财等
防范方案:
附:简单而言就是:由于cookie未做限制,导致只要简单的构造恶意页面就能完成非法操作。
(6)——A6 —— 安全误配置
管理员对服务器配置不当,开启了不应该开启的配置,导致存在的大部分敏感信息泄露或是如下介绍:
防御方案:
(7)——A7—— 限制URL访问失败
用户通过简单的修改url内post或者get请求的参数即可达到超级访问。其阐释可以是伪造URL越权访问
防御方案:
附:简单而言就是不同权限的用户使用相应权限的访问,不可任意人员都直接访问超级管理员权限。
(8)——A8—— 未验证的重定向和转发
302或301直接跳转到用户自己想访问的网站,如网站管理员禁止的403页面,跳转功能可用于钓鱼
防御方案:
(9)——A9—— 应用已知脆弱性的组件
应用携带漏洞的插件,如wordpress的魔图插件等。简单而言即:使用了被爆已知漏洞的插件或组件导致不安全。如:
防御方案:
附:使用安全的组件或及时更新安全组件,在使用时也需要对其进行安全测试。