当前位置:   article > 正文

OWASP TOP 10你了解几个?_owasp top 10可以用来做什么

owasp top 10可以用来做什么


OWASP TOP 10

开放式Web应用程序安全项目

OWASP Top 10 是面向开发人员和 Web 应用程序安全性的标准意识文档。它代表了对 Web 应用程序最关键的安全风险的广泛共识。

2021

TOP1 Broken Access Control

损坏的访问控制

访问控制强制执行策略,以便用户不能在其预期权限之外进行操作。故障通常会导致未经授权的信息披露、修改或销毁所有数据,或在用户权限之外执行业务功能。常见的访问控制漏洞包括:

  • 违反最小特权原则或默认情况下拒绝,仅应授予特定功能、角色或用户访问权限,但任何人都可以访问。

  • 通过修改URL(参数篡改或强制浏览)、内部应用程序状态HTML页面,或使用攻击工具修改API请求绕过访问控制检查

  • 通过提供其唯一标识符(不安全的直接对象引用),允许查看或编辑其他人的帐户

  • 访问API时缺少POST、PUT和DELETE的访问控制

  • 特权的提升。未登录时以用户身份行事,或以用户身份登录时以管理员身份行事。

  • 元数据操纵,例如重放或篡改JSON Web令牌(JWT)访问控制令牌,或操纵cookie或隐藏字段以提升权限或滥用JWT失效。

  • CORS错误配置允许从未经授权/不受信任的来源访问API

  • 强制以未经验证的用户身份浏览已验证的页面,或以标准用户身份浏览特权页面。

预防措施

  • 除公共资源外,默认情况下拒绝。
  • 实现一次访问控制机制,并在整个应用程序中重复使用它们,包括最小化跨源资源共享(CORS)使用。
  • 模型访问控制应该强制记录所有权,而不是接受用户可以创建、读取、更新或删除任何记录
  • 独特的应用程序业务限制要求应由域模型强制执行
  • 禁用web服务器目录列表,并确保web根目录中不存在文件元数据(例如.git)和备份文件。
  • 记录访问控制故障,适当时向管理员发出警报(例如,重复故障)。
  • 速率限制API和控制器访问,以将自动化攻击工具的危害降至最低。
  • 注销后,服务器上的有状态会话标识符应无效。无状态JWT令牌应该是短命的,以便使攻击者的机会窗口最小化。对于寿命较长的JWT,强烈建议遵循OAuth标准来撤销访问。

TOP2 Cryptographic Failures

加密失败

以前称为敏感数据暴露,这更像是一个广泛的症状而不是根本原因,重点是与加密相关的故障(或缺乏加密)。这通常会导致敏感数据的泄露。

第一件事是确定传输中和静止数据的保护需求。例如,密码、信用卡号、健康记录、个人信息和商业秘密需要额外保护,主要是如果这些数据属于隐私法,如欧盟的《一般数据保护条例》(GDPR)或条例,如PCI数据安全标准(PCI DSS)等金融数据保护。对于所有这些数据:

  • 是否以明文形式传输任何数据?这涉及到HTTP、SMTP、FTP等协议,这些协议也使用像STARTTLS这样的TLS升级。外部互联网流量是危险的。验证所有内部流量,例如 负载平衡器、web服务器或后端系统之间的流量。
  • 默认情况下或旧代码中是否使用了任何旧的或弱的加密算法或协议?
  • 是否使用默认加密密钥,是否生成或重复使用弱加密密钥,或者是否缺少适当的密钥管理或轮换?加密密钥是否已签入源代码存储库?
  • 是否未强制加密,例如,是否缺少任何HTTP头(浏览器)安全指令或头?
  • 收到的服务器证书和信任链是否正确验证?
  • 初始化向量是否被忽略、重用,或者生成的初始化向量对于加密操作模式是否足够安全?是否正在使用ECB等不安全的操作模式?当认证加密更合适时是否使用加密?
  • 在没有密码基密钥派生功能的情况下,密码是否用作加密密钥?
  • 随机性是否用于不满足加密要求的加密目的?即使选择了正确的函数,开发人员是否需要对其进行种子设定,如果不需要,开发人员是否用缺乏足够熵/不可预测性的
    种子过度编写了内置的强大种子设定功能?
  • 不推荐使用的散列函数(如MD5或SHA1)是否正在使用,或者在需要加密散列函数时是否使用非加密散列函数?
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/神奇cpp/article/detail/774985
推荐阅读
相关标签
  

闽ICP备14008679号