OWASPTop10安全漏洞详解

OWASPTop10安全漏洞详解
OWASP或Open Web Security Project是⼀家⾮营利性慈善组织,致⼒于提⾼软件和Web应⽤程序的安全性。 该组织根据来⾃各种安全组织的数据发布顶级Web安全漏洞列表。 根据可利⽤性,可检测性和对软件的影响,Web安全漏洞具有优先级。
可开发性 - 利⽤安全漏洞需要什么?当攻击仅需要Web浏览器且最低级别是⾼级编程和⼯具时,可攻击性最⾼。可检测性 - 检测威胁有多容易?最⾼的是显⽰在URL,表单或错误消息上的信息,最低的是源代码。影响或损坏 - 如果安全漏洞暴露或受到攻击,将会造成多⼤的破坏?最⾼的是完整的系统崩溃,最低的是什么都没有。
三联件OWASP Top 10的主要⽬标是向开发⼈员,设计⼈员,经理,架构师和组织介绍最重要的安全漏洞。
屋面玻纤瓦
根据OWASP Top 10,⼗⼤安全漏洞是:
1. SQL Injection(SQL注⼊)
2. Cross Site Scripting(xss跨站脚本)
3. Broken Authentication and Session Management(⾝份验证和会话管理中断)
4. Insecure Direct Object References(不安全的直接对象引⽤)
5. Cross Site Request Forgery(跨站点请求伪造)
6. Security Misconfiguration(安全配置错误)
7. Insecure Cryptographic Storage(不安全的加密存储)
8. Failure to restrict URL Access(⽆法限制URL访问
9. Insufficient Transport Layer Protection(传输层保护不⾜)
10. Unvalidated Redirects and Forwards(未经验证的重定向和转发)
1. SQL Injection(SQL注⼊)
描述: SQL注⼊是⼀个安全漏洞,允许攻击者通过操纵⽤户提供的数据来更改后端SQL语句。当⽤户输⼊作为命令或查询的⼀部分被发送到解释器并且欺骗解释器执⾏⾮预期的命令并且允许访问未授权的数据时,发⽣注⼊。由Web应⽤程序执⾏时的SQL命令也可以公开后端数据库。蜂窝煤采暖炉
意义: 攻击者可以将恶意内容注⼊易受攻击的字段。可以从数据库中读取敏感数据,如⽤户名,密码
等。可以修改数据库数据(插⼊/更新/删除)。管理操作可以在数据库上执⾏
易受攻击的对象:输⼊字段与数据库交互的URL。
例⼦:登录页⾯上的SQL注⼊
在没有有效凭据的情况下登录应⽤程序。有效的userName可⽤,密码不可⽤。测试⽹址:http://stfire/default.aspx ⽤户名:s jon es 密码:1 = 1'或pass123 创建SQL查询并将其发送到Interpreter,如下所⽰ SELECT * FROM Users WHERE User_Name = sjones AND Password = 1 = 1'或pass123;
建议 : ⽩名单列出输⼊字段避免显⽰对攻击者有⽤的详细错误消息。
2. xss跨站脚本
描述:  Cross Site Scripting也简称为XSS。 XSS漏洞针对嵌⼊在客户端(即⽤户浏览器⽽不是服务器端)的页⾯中嵌⼊的脚本。当应⽤程序获取不受信任的数据并将其发送到Web浏览器⽽未经适当验证时,可能会出现这些缺陷。在这种情况下受害者浏览器,攻击者可以使⽤XSS对⽤户执⾏恶意脚本。由于浏览器⽆法知道脚本是否可靠,脚本将被执⾏,攻击者可以劫持会话cookie,破坏⽹站或将⽤户重定向到不需要的恶意⽹站。 XSS是⼀种攻击,允许攻击者在受害者的浏览器上执⾏脚本。
意义:利⽤此安全漏洞,攻击者可以将脚本注⼊应⽤程序,可以窃取会话cookie,破坏⽹站,并可以在受害者的计算机上运⾏恶意软件。
易受攻击的对象:  输⼊字段⽹址
建议 : ⽩名单输⼊字段输⼊输出编码
3. ⾝份验证和会话管理中断
描述 : ⽹站通常为每个有效会话创建会话cookie和会话ID,这些cookie包含敏感数据,如⽤户名,密码等。当会话通过注销或浏览器突然关闭结束时,这些cookie应该⽆效,即每个会话应该有⼀个新的cookie。如果cookie未失效,则敏感数据将存在于系统中。例如,使⽤公共计算机(Cyber Cafe)的⽤户,易受攻击的站点的cookie位于系统上并暴露给攻击者。攻击者在⼀段时间后使⽤相同的公共计算机,敏感数据会受到损害。以同样的⽅式,⽤户使⽤公共计算机,⽽不是注销,他突然关闭浏览器。攻击者使⽤相同的系统,当浏览同⼀个易受攻击的站点时,受害者的上⼀个会话将被打开。攻击者可以通过窃取个⼈资料信息,信⽤卡信息等做任何他想做的事情。应该进⾏检查以到⾝份验证和会话管理的强度。密钥,会话令牌,cookie应该在不影响密码的情况下正确实施。
易受攻击的对象 : 在URL上公开的会话ID可能导致会话固定攻击。注销和登录前后的会话ID相同。会
话超时未正确实施。应⽤程序为每个新会话分配相同的会话ID。应⽤程序的经过⾝份验证的部分使⽤SSL进⾏保护,密码以散列或加密格式存储。会话可由低权限⽤户重⽤。
意义 : 利⽤此漏洞,攻击者可以劫持会话,对系统进⾏未经授权的访问,从⽽允许泄露和修改未经授权的信息。使⽤盗取的cookie或使⽤XSS的会话可以⾼举会话。
一水氢氧化锂建议 : 应根据OWASP应⽤程序安全验证标准定义所有⾝份验证和会话管理要求。永远不要在URL或⽇志中公开任何凭据。还应该做出很⼤的努⼒来避免可⽤于窃取会话ID的XSS漏洞。
4. 不安全的直接对象引⽤
描述:当开发⼈员公开对内部实现对象的引⽤(例如URL或FORM参数中的⽂件,⽬录或数据库键)时,就会发⽣这种情况。攻击者可以使⽤此信息访问其他对象,并可以创建将来的攻击来访问未经授权的数据。发泡技术
意义: 使⽤此漏洞,攻击者可以访问未经授权的内部对象,可以修改数据或破坏应⽤程序。
易受攻击的对象 : 在URL中。
建议:实施访问控制检查。避免在URL中公开对象引⽤。验证对所有引⽤对象的授权。
5. csrf跨站点请求伪造
描述: Cross Site Request Forgery是来⾃跨站点的伪造请求。 CSRF攻击是指恶意⽹站,电⼦邮件或程序导致⽤户的浏览器在⽤户当前已对其进⾏⾝份验证的受信任站点上执⾏不需要的操作时发⽣的攻击。 CSRF攻击强制登录受害者的浏览器向易受攻击的Web应⽤程序发送伪造的HTTP请求,包括受害者的会话cookie和任何其他⾃动包含的⾝份验证信息。当⽤户在登录原始⽹站时点击URL时,攻击者将向受害者发送链接,该数据将从⽹站上被窃取。
意义 : 将此漏洞⽤作攻击者可以更改⽤户配置⽂件信息,更改状态,代表管理员创建新⽤户等。
易受攻击的对象 : ⽤户档案页⾯⽤户帐户表单商业交易页⾯
建议 : 在执⾏敏感操作时强制⽤户在场。实现CAPTCHA,重新认证和唯⼀请求令牌等机制。
输出滤波器6. 安全配置错误
描述: 必须为应⽤程序,框架,应⽤程序服务器,Web服务器,数据库服务器和平台定义和部署安全性配置。如果这些配置正确,攻击者可能会未经授权访问敏感数据或功能。有时这种缺陷会导致系统完全妥协。保持软件最新也是很好的安全性。
意义: 利⽤此漏洞,攻击者可以枚举底层技术和应⽤程序服务器版本信息,数据库信息并获取有关应⽤程序的信息以进⾏更多攻击。
易受攻击的对象: ⽹址表格字段输⼊字段
例⼦: 应⽤程序服务器管理控制台将⾃动安装,不会被删除。默认帐户不会更改。攻击者可以使⽤默认密码登录,并可以获得未经授权的访问。您的服务器上未禁⽤⽬录列表。攻击者发现并可以简单地列出⽬录以查任何⽂件。
建议 : 强⼤的应⽤程序架构,可在组件之间提供良好的分离和安全性。更改默认⽤户名和密码。禁⽤⽬录列表并实施访问控制检查。
7. 不安全的加密存储
描述: 不安全的加密存储是⼀种常见的漏洞,在敏感数据未安全存储时存在。⽤户凭据,配置⽂件信息,健康详细信息,信⽤卡信息等属于⽹站上的敏感数据信息。该数据将存储在应⽤程序数据库中。如果不使⽤加密或散列*来不正确地存储此数据,则它将容易受到攻击者的攻击。(* Hashing是将字符串字符转换为固定长度或密钥的较短字符串。要解密字符串,⽤于形成密钥的算法应该可⽤)
意义: 通过使⽤此漏洞,攻击者可以窃取,修改此类受弱保护的数据,以进⾏⾝份盗⽤,信⽤卡欺诈
或其他犯罪。
易受攻击的对象: 应⽤数据库。
例⼦: 在其中⼀个银⾏应⽤程序中,密码数据库使⽤未加保留的哈希*来存储每个⼈的密码。SQL注⼊漏洞允许攻击者检索密码⽂件。所有未加盐的哈希都可以在任何时候强⾏进⾏,⽽盐渍的密码则需要数千年的时间。(*⽆盐哈希 - 盐是附加到原始数据的随机数据。在哈希之前将盐附加到密码)
建议: 确保适当的强标准算法。不要创建⾃⼰的加密算法。仅使⽤经过批准的公共算法,如AES,RSA公钥加密和SHA-256等。确保异地备份已加密,但密钥是单独管理和备份的。
8. ⽆法限制URL访问
描述: Web应⽤程序在呈现受保护的链接和按钮之前检查URL访问权限每次访问这些页⾯时,应⽤程序都需要执⾏类似的访问控制检查。在⼤多数应⽤程序中,特权页⾯,位置和资源不会呈现给特权⽤户。通过智能猜测,攻击者可以访问权限页⾯。攻击者可以访问敏感页⾯,调⽤函数和查看机密信息。
意义: 利⽤此漏洞攻击者可以访问未经授权的URL,⽽⽆需登录应⽤程序并利⽤此漏洞。攻击者可以访问敏感页⾯,调⽤函数和查看机密信息。
易受攻击的对象:⽹址
建议: 实施强⼤的访问控制检查。⾝份验证和授权策略应基于⾓⾊。限制对不需要的URL的访问。
9. 传输层保护不⾜
描述: 处理⽤户(客户端)和服务器(应⽤程序)之间的信息交换。应⽤程序经常通过⽹络传输敏感信息,如⾝份验证详细信息,信⽤卡信息和会话令牌。通过使⽤弱算法或使⽤过期或⽆效的证书或不使⽤SSL,可以允许将通信暴露给不受信任的⽤户,这可能会危及Web应⽤程序和/或窃取敏感信息。
意义: 利⽤此Web安全漏洞,攻击者可以嗅探合法⽤户的凭据并获取对该应⽤程序的访问权限。可以窃取信⽤卡信息。
易受攻击的对象 : 通过⽹络发送的数据。
建议: 启⽤安全HTTP并仅通过HTTPS强制执⾏凭据传输。确保您的证书有效且未过期。
例⼦:    1.不使⽤SSL的应⽤程序,攻击者只会监视⽹络流量并观察经过⾝份验证的受害者会话cookie。攻击者可以窃取该cookie并执⾏Man-in-the-Middle攻击。
10. 未经验证的重定向和转发
描述: Web应⽤程序使⽤很少的⽅法将⽤户重定向并转发到其他页⾯以实现预期⽬的。如果在重定向到其他页⾯时没有正确的验证,攻击者可以利⽤此功能,并可以将受害者重定向到⽹络钓鱼或恶意软件站点,或者使⽤转发来访问未经授权的页⾯。
意义 : 攻击者可以向⽤户发送包含附加编码恶意URL的真实URL的URL。⽤户只需看到攻击者发送的URL的真实部分就可以浏览它并可能成为受害者。
建议 : 只需避免在应⽤程序中使⽤重定向和转发。如果使⽤,请不要在计算⽬的地时使⽤⽤户参数。如果⽆法避免⽬标参数,请确保提供的值有效,并为⽤户授权。

本文发布于:2024-09-22 10:39:37,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/2/179155.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:攻击者   程序   访问   验证   信息
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议