WEB十大安全隐患OWASPTOP10-2010开放式Web应用程序安全项目(OWASP,OpenWebApplicationSecurityProject)是一个组织,它提供有关计算机和互联网应用程序的公正、实际、有成本效益的信息。其目的是协助个人、企业和机构来发现和使用可信赖软件。P发布了最新的Web应用脆弱性的top10,这是继2007年OWASP对TOP10进行修订后进行的又一次更改,该版本暂定为OWASPTOP10- 2010。在新版本的OWASPTOP10中主要由以下变化:。原先的Top10全称为“Thetop10mostcriticalwebapplicationsecurityvulnerabilities”,即“Web应用的十大关键脆弱性”,现在Top10的全称为“Thetop10mostcriticalwebapplicationsecurityrisks”,即“Web应用的十大关键风险” 此次Top10的评估是依据OWASP的风险评估方法来对OWASPTOP10排序的。 此次Top10与2007年的Top10相比, 在内容上去掉了“MaliciousFileExecution”(恶意文件执行)和“Informationleakageandimpropererrorhandling”(信息泄露及不恰当的错误处理),增加了“Securitymisconfiguration”(错误安全配置)和“Unvalidatedredirectsandforwards”(未验证的重定向和传递)。 OWASPTOP102007 OWASPTOP102010 A2-注入 A1-注入 A1-跨站脚本(XSS) A2-跨站脚本(XSS) A7-错误的认证和会话管理 A3-错误的认证和会话管理 A4-不正确的直接对象引用 A4-不正确的直接对象引用 A5-伪造跨站请求(CSRF) A5-伪造跨站请求(CSRF) A6-安全性误配置 A10-限制远程访问失败 A7-限制远程访问失败 A8-未验证的重定向和传递 A8-不安全的加密存储 A9-不安全的加密存储 A9-不足的传输层保护 A10-不足的传输层保护 A3-恶意文件执行 A6-不安全的通讯 OWASP风险评估方法OWASP所选取的10大风险是依据OWASP的风险评估方法,我们从标准的风险模型开始,即风险=可能性*后果,下面我们以以下步骤来说明某个风险的严重程度:第一步:识别风险识别风险作为评估的第一步,我们必须找到与这个风险相关的威胁、相应的攻击方法、隐含在里面的脆弱性以及最终可能造成的后果,当然可能存在多种攻击方法和多种后果,在评估时我们往往会采用最坏选择,这样就能更客观的反应该风险的最终评级;第二步:考虑影响可能性的因素通常,我们不可能很精准的说出某个风险的可能性数值,所以我们一般用高、中、低来表示,而且影响某个风险的可能性的因素有很多,对于每个因素我们用0到9的数值来表示。用户9脆弱性发现该弱点的难易度技术上不可行1困难3容易7可用自动化工具发现9利用该弱点的难易度只是理论上的1困难3容易5可用自动化工具实现9该弱点的流行度不为人知1隐藏4明显6公众皆知9入侵被察觉的可能性应用程序主动检测1记录日志并审核3记录日志未审核8无日志9第三步:考虑影响后果的因素在考虑攻击后果的时候,我们会考虑两种后果,一种是应用的“技术后果”,它所使用的数据,提供的功能等等,另一种就是它的“商业后果”,显然后者则更为重要,但往往后者难以估量,所以我们需要尽可能从技术上去考虑,进而来估计后者的数据。类别因素分项分值技术后果保密性损失很少的非敏感的数据泄漏2很少的敏感数据泄漏6大量的非敏感数据泄漏6大量的敏感数据泄漏9A1-注入注入往往是应用程序缺少对输入进行安全性检查所引起的,攻击者把一些包含指令的数据发送给解释器,解释器会把收到的数据转换成指令执行。常见的注入包括SQL注入,OSShell,LDAP,Xpath,Hibernate等等,而其中SQL注入尤为常见。这种攻击所造成的后果往往很大,一般整个数据库的信息都能被读取或篡改,通过SQL注入,攻击者甚至能够获得更多的包括管理员的权限。防范SQL注入——编程篇SQL注入往往是在程序员编写包含用户输入的动态数据库查询时产生的,但其实防范SQL注入的方法非常简单。程序员只要a)不再写动态查询,或b)防止用户输入包含能够破坏查询逻辑的恶意SQL语句,就能够防范SQL注入。在这篇文章中,我们将会说明一些非常简单的防止SQL注入的方法。我们用以下Java代码作为示例:Stringquery="ount_balanceFROMuser_dataWHEREuser_
WEB十大安全隐患 来自淘豆网m.daumloan.com转载请标明出处.