WEB安全性测试
1. WEB安全漏洞 1
2. 常见的10种安全漏洞(OWASPTOP10) 1
注入 1
失效的身份认证和会话管理 2
跨站脚本(XSS) 4
直接引用不安全的对象 5
安全配置错误 6
敏感信息泄漏 7
缺少功能级访问控制 8
跨站请求伪造(CSRF) 9
使用含有已知漏洞的组件 11
未验证的重定向和转发 11
3. Top10 风险因素总结 13
4. 如何进行验证测试 13
代码审查 13
安全测试 13
5. 实际测试工作 14
QA测试 14
Local测试 14
1. WEB安全漏洞
通常是指由于WEB程序本身体系结构、设计方法、开发编码的缺陷而造成的安全漏洞.
2. 常见的10种安全漏洞(OWASPTOP10)
OWASP(开放Web应用安全项目组-OpenWebApplicationSecurityProject)每隔数年会更新10个最关键的Web应用安全问题清单,即OWASPTOP10。
注入
注入攻击漏洞往往是应用程序缺少对输入进行安全性检查所引起的。攻击者把一些包含攻击代码当做命令或者查询语句发送给解释器,这些恶意数据可以欺骗解释器,从而执行计划外的命令或者未授权访问数据。注入漏洞通常能在SQL查询、LDAP查询、OS命令、程序参数等中出现
注入能导致数据丢失或数据破坏、缺乏可审计性或是拒绝服务。注入漏洞有时甚至能导致完全接管主机。
使用安全的API,避免使用解释器
对输入的特殊字符进行Escape转义处理
使用白名单来规范化的输入验证方法
失效的身份认证和会话管理
与认证和会话管理相关的应用程序功能往往得不到正确管理,这就导致攻击者破坏密码、密匙、会话令牌或利用实施漏洞冒充其他用户身份。
这些漏洞可能导致部分甚至全部帐户遭受攻击。一旦攻击成功,攻击者能执行合法用户的任何操作。因此特权帐户会造成更大的破坏。
使用内置的会话管理功能。
使用单一的入口点。
确保在一开始登录SSL保护的网页。
获取注销的权利;
添加超时;
确保你使用的是安全相关的功能;
使用强大的认证;
不进行默认身份验证
跨站脚本(XSS)
跨站脚本是最普遍的web应用安全漏洞。当应用程序在发送给浏览器的页面中包含用户提供的数据,但没有经过适当验证或转译,就会导致跨站脚本漏洞。目前常见的3中XSS漏洞:1)存储式;2)反射式;3)基于DOM。
攻击者能在受害者浏览器中执行脚本以劫持用户会话、迫害网站、插入恶意内容、重定向用户、使用恶意软件劫持用户浏览器等等。
对所有不可信的输入数据进行恰当的转义escape。
使用白名单的具有恰当的规范化解码功能的输入验证方法.
使用内容安全策略(CSP)来抵御整个站点的攻击
直接引用不安全的对象
所谓"直接引用不安全的对象",即Insecure direct object references,意指一个已经授权的用户,通过更改访问时的一个参数,从而访问到原本其并没有得到授权的对象。Web应用往往在生成Web页面时会用它的真实名字,且并不会对所有的目对象访问时来检查用户权限,所以这就造成不安全的对象直接引用的漏洞。
我们看如下的一个示例,也许这样就更容易理解什么是不安全的对象直接引用。
攻击者发现他自己的参数是6065,即?acct=6065;
他可以直接更改参数为6066,即?acct=6066;
这样他就可以直接看到6066用户的账户信息。
这种漏洞能损害参数所引用的所有数据。除非名字空间很稀疏,否则攻击者很容易访问该类型的所有数据。
使用基于用户或会话的间接对象访问,这样能防止攻击者直接攻击未授权资源.
访问检查:对任何来自不受信源所使用的所有直接对象引用都进行访问控制检测,这样才能确保用户对要求的对象有访问权限.
安全配置错误
安全配置错误可以发生在一个应用程序堆栈的任何层面,包括平台、Web服务器、应用服务器、数据库、架构和自定义代码。攻击者通过访问默认账户、未使用的网页、未安装补丁的漏洞、未被保护的文件和目录等,以获得对系统未授权的访问。
2013 WEB十大安全问题OWASPTOP10 来自淘豆网www.taodocs.com转载请标明出处.