OWASP-TOP10-2021(1-5)

1.访问控制失效 (Broken Access Control)

2.加密失败 (Cryptographic Failures)

3.注入 (Injection)

4.不安全设计 (Insecure Design)

5.安全配置错误 (Security Misconfiguration)

访问控制失效 (Broken Access Control)

概念:网站有一些页面受到保护,普通用户无法访问。例如,只有网站的管理员用户才能访问管理其他用户的页面,普通用户之间也不应该能够互相访问到一些敏感的个人数据等。如果网站用户可以访问他们不应该访问的受保护页面,那么访问控制就被破坏了。

风险:普通用户访问受保护页面可能导致以下情况:(1)查看其他用户的敏感信息;(2)访问未经授权的功能。简而言之,这极易引发不安全的直接对象引用 (IDOR),访问控制漏洞允许攻击者绕过授权,从而查看敏感数据或执行他们不应该执行的任务。

方案:(1)最小权限原则:给予用户和系统组件最小必要的权限以完成其工作。这可以通过确定每个用户或角色需要的最低权限级别、使用功能或资源级别的访问控制列表(ACL)来限制用户对资源的访问;(2)强制访问控制策略: 使用访问控制列表(ACL)或角色基础的访问控制来强制授权策略。确保只有经过授权的用户才能访问特定资源;(3)身份验证和授权机制: 实施强大的身份验证和授权机制,以确保只有经过身份验证的用户才能访问敏感资源,这可以包括多因素身份验证(MFA)和单一登录(SSO);(4)会话管理: 确保会话管理是安全的,不容易被绕过或劫持。使用随机生成的会话令牌,确保会话过期后自动注销,以及防止会话固定攻击等。


加密失败 (Cryptographic Failures)

概念:加密失败是指由于滥用(或不使用)加密算法来保护敏感信息而产生的任何漏洞,有些弱加密信息可以通过一些加解密网站很容易就猜测出所加密的信息。网络应用程序需要使用加密技术在多个层面为用户提供保密性。例如,当你使用浏览器访问电子邮件账户时,你需要确保你和服务器之间的通信是加密的。这样,任何试图捕获你的网络数据包的窃听者都无法恢复你的电子邮件地址内容。当我们对客户端和服务器之间的网络通信进行加密时,我们通常称之为对传输中的数据进行加密。由于您的电子邮件存储在由提供商管理的服务器中,因此电子邮件提供商最好也无法读取客户的电子邮件。为此,您的电子邮件在服务器上存储时也可能会加密。这就是所谓的静态数据加密。

风险:加密失败往往会导致网络应用程序意外泄露敏感数据。这通常是与客户直接相关的数据(如姓名、出生日期、财务信息),但也可能是技术性更强的信息,如用户名和密码。在更复杂的层面上,利用某些加密失效往往涉及 "中间人攻击 "等技术,攻击者会通过他们控制的设备强行连接用户。然后,他们会利用任何传输数据的薄弱加密功能来访问截获的信息(如果数据一开始就加密的话)。当然,许多例子要简单得多,网络应用程序中也存在漏洞,事实上,在某些情况下,敏感数据可以直接在网络服务器上找到。

方案:(1)使用强密码和密钥管理: 确保使用足够强度的密码和密钥,避免使用弱密码,实施有效的密钥管理策略,包括定期旋转和更新密钥,使用硬件安全模块(HSM)来存储和管理密钥,提高安全性;(2)选择适当的加密算法: 选择经过安全审查和广泛接受的加密算法,如AES,避免使用已被证明存在弱点的算法;(3)避免硬编码密钥和密码: 不要将密钥和密码硬编码在应用程序代码中。将它们存储在安全的配置文件或密钥存储中;(4)安全传输协议: 对于数据在传输过程中的加密,使用安全的传输协议,如TLS/SSL,以确保通信的保密性和完整性。


注入 (Injection)

概念:在当今的应用程序中,注入漏洞非常常见。出现这些缺陷的原因是应用程序将用户控制的输入解释为命令或参数。注入攻击取决于使用了哪些技术以及这些技术如何解释输入。

风险:一些常见的例子包括(1)SQL 注入: 当用户控制的输入被传递到 SQL 查询时,就会发生这种情况,攻击者可以通过 SQL 查询来操纵此类查询的结果,当这种输入被传递到数据库查询中时,攻击者就有可能访问、修改和删除数据库中的信息,这意味着攻击者可以窃取敏感信息,如个人信息和凭证等;(2)命令注入: 当用户输入被传递到系统命令时,就会发生这种情况,攻击者可以在应用服务器上执行任意系统命令,从而有可能访问用户的系统。

方案:防止注入攻击的主要方法是确保用户控制的输入不被解释为查询或命令。(1)使用允许列表:向服务器发送输入时,将输入与安全输入或字符列表进行比较。如果输入被标记为安全,则会被处理。否则,该输入将被拒绝,应用程序将抛出错误。(2)
删除输入: 如果输入包含危险字符,则会在处理前删除这些字符。
危险字符或输入被归类为可能改变底层数据处理方式的任何输入,与其手动构建允许列表或剥离输入,不如使用各种库来为你执行这些操作。


不安全设计 (Insecure Design)

概念:不安全设计指的是应用程序架构中固有的漏洞。它们不是由于与不良实施或配置而引发的漏洞,而是整个应用程序(或其中的一部分)从一开始就存在缺陷。大多数情况下,这些漏洞发生在应用程序规划阶段的不当威胁建模,并一直传播到最终应用程序。还有一些时候,不安全的设计漏洞也可能是由开发人员在代码中添加一些 "快捷方式 "来简化测试时引入的。例如,开发人员可能会在开发阶段禁用 OTP 验证,以便快速测试应用程序的其他部分,而无需在每次登录时手动输入验证码,但在将应用程序发送到生产阶段时却忘记重新启用。

风险:不安全设计可能引发多种安全风险,这些风险通常涉及到应用程序、系统或产品的基本设计缺陷,可能会导致数据泄露、恶意攻击、身份盗窃和其他安全问题。

方案:由于不安全的设计漏洞是在开发过程的早期阶段引入的,要解决这些问题往往需要从头开始重建应用程序的漏洞部分,通常比其他与代码相关的简单漏洞更难解决。避免此类漏洞的最佳方法是在开发生命周期的早期阶段执行威胁建模。


安全配置错误 (Security Misconfiguration)

概念:安全配置错误与其他 10 大漏洞不同,因为它们发生在本可以进行适当的安全配置但却没有进行的情况下。即使您下载的是最新的软件,配置不当也会使您的安装受到攻击。常见的安全错误配置可能有:云服务的权限配置不当;启用了不必要的功能,如服务、页面、账户或权限;密码未变的默认账户;错误信息过于详细,让攻击者能够发现更多系统信息;不使用 HTTP 安全标头。

风险:此漏洞通常会导致更多漏洞,如默认凭据允许访问敏感数据、XML 外部实体 (XXE) 或管理员页面上的命令注入等。

方案:(1)定期审计和评估: 定期审查配置,确保它们符合最佳实践和安全要求,进行漏洞扫描和安全测试,以发现潜在的配置问题;(2)默认配置修改: 修改默认配置,以降低攻击面,不要使用默认的管理员凭据和设置;(3)敏感信息保护: 避免在配置文件、日志或错误消息中泄露敏感信息,如数据库凭据或密钥;(4)安全云配置: 如果使用云服务,确保正确配置安全组、访问控制列表(ACL)、身份验证和授权策略等,以保护云资源;(5)错误信息处理: 对于生产环境,不要显示详细的错误信息,而是提供通用的错误消息,以防止攻击者获取关键信息。



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: OWASP Top 10是一个网络应用程序安全风险的指南,旨在为企业和开发人员提供有关应用程序安全风险的信息和解决方案。2021年版的OWASP Top 10依然是众所瞩目的,各个安全顾问、企业都在紧密关注。 OWASP Top 10建立在全球数据和研究的基础上,是一个广泛接受的安全风险指南。它覆盖了Web应用程序最常见的安全风险,并提供了一些解决方案和建议,帮助企业和开发人员更好地保护其Web应用程序。 2021年版的OWASP Top 10重点关注了API安全和云安全,并将这些风险列为主要问题。API是Web应用程序中最流行的集成方式之一,因此攻击者经常利用它们来入侵和偷取数据。这使得API的安全成为防御攻击的重点。 至于云安全,它是一个与日俱增的问题,因为越来越多的企业和组织正在选择将其应用程序部署在云上。这意味着攻击者可以轻松地在云中找到目标,并进行各种攻击。 总的来说,下载OWASP Top 10最新中文版v1.0.pdf可以让企业和开发人员更好地了解现今最常见的Web应用程序安全风险,并了解防御这些风险的方法。这个指南将是值得细心研究的资源,以确保应用程序的安全。 ### 回答2: OWASP是全球最知名的网络安全组织之一,旨在提高软件安全性并推进网络安全教育和培训。OWASP Top 10是OWASP的核心项目之一,着重于列举当前网络应用程序中最常见的十种安全风险,以提高开发人员、安全测试人员和安全专家的安全意识。最新的OWASP Top 10列表是2021年版,这个版本于2021年6月发布。相比于之前的版本,这一版本增加了新风险,并对已有的风险进行了修改和调整。 在OWASP Top 10 2021中文版v1.0中,含有整个OWASP Top 10列表的中文翻译和详细解释,同时还有相关的漏洞描述、常见漏洞案例分析、攻击和防御建议等详细内容。这使得中文读者能够更好地理解此清单并快速找到有用的信息,进一步加强对网络安全的保护和预防工作。 总的来说,OWASP Top 10 2021中文版v1.0是网络安全领域必不可少的重要资料之一,对于开发人员、应用程序测试人员、网络安全专家来说都十分有用。此版本的推出充分展示了OWASP网络安全的不断关注和持续改进的精神,同时也提醒我们在应用程序开发中更加重视安全性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值