OWASP TOP相关知识及发展历程

 综述OWASP TOP的发展历程(2004-2021),分析应用软件安全的防护趋势

OWASP是一个开放性的Web应用程序安全项目且非营利组织,不附属于任何企业或财团,提供相关计算机和互联网应用程序的公正、实际、有成本效益的信息。目的是协助个人、企业和机构来发现和使用可信赖软件。

OWASP TOP 10是OWASP在2004,2007,2010,2013,2017,2021年更新发布的Web应用程序最可能、最常见、最危险的十大漏洞,其中包含注入漏洞,敏感数据泄露,失效的身份认证,跨站脚本攻击,外部实体攻击,安全配置错误,失效的访问控制,不安全的反序列化,使用含有已知漏洞的组件,不足的日志记录与监控,这十点漏洞,每次发布都会产生不同的排序,而2021年最新发布的前10排名sql注入漏洞位列第一,应用软件安全趋势也逐渐向注入靠拢

详细阐述TOP10的发展历程和趋势。重点分析

(1)OWASP TOP 2017

A1:2017-Injection(注入漏洞)

当不可信的数据作为命令或查询语句的一部分被发送给解释器的时候,会发生注入漏洞,包括SQL、NoSQL、OS以及LDAP注入等。攻击者发送的恶意数据可能会诱使解释器执行计划外的命令,或在没有适当授权的情况下访问数据。

A2:2017-BrokenAuthentication(中断身份认证)

与认证和会话管理相关的应用函数经常被错误地实现,从而允许攻击者破坏密码、密钥或是会话令牌,或者利用其他的应用漏洞来暂时或永久地获取用户身份信息。

A3:2017-Sensitive DataExposure(敏感数据泄露)

许多web应用程序和API不能正确的保护敏感数据,如金融、医疗保健和PII(个人身份信息)等。攻击者可能会窃取或篡改这些弱保护的数据,从而进行信用卡欺诈、身份盗窃或其他犯罪行为。在缺少额外保护(例如,在存放和传输过程中加密,且在与浏览器进行交换时需要特别谨慎)的情况下,敏感数据可能会受到损害。

A4:2017-XML ExternalEntities(XXE)XML外部处理器漏洞

许多过时的或配置不当的XML处理器在XML文档内进行外部实体引用。外部实体可用于泄露内部文件,通过使用文件URI处理器、内部文件共享、内部端口扫描、远程代码执行以及拒绝服务攻击等手段。

A5:2017-Broken AccessControl(中断访问控制)

限制“认证的用户可以实现哪些操作”的命令没有得到正确的执行。攻击者可以利用这些漏洞访问未经授权的功能和数据,例如访问其他用户的账户,查看敏感文件,篡改其他用户的数据,更改访问权限等。

A6:2017-SecurityMisconfiguration(安全配置错误)

安全配置错误是最常见的问题。这通常是由不安全的默认配置,不完整或ad hoc配置,开放云存储,错误配置的HTTP标头,以及包含敏感信息的详细错误信息造成的。所有的操作系统、框架、库、应用程序都需要进行安全配置外,还必须要及时进行系统更新和升级。

A7:2017-Cross-SiteScripting(XSS)跨站脚本攻击

如果应用程序在未经适当验证或转义的情况下,能够在新网页中包含不受信任的数据,或是使用可以创建HTML或者JavaScript的浏览器API更新包含用户提供的数据的现有网页,就会出现XSS漏洞。XSS允许攻击者在受害者的浏览器中执行脚本,这些脚本可以劫持用户会话、破坏网站或将用户重定向到恶意网站中。

A8:2017-InsecureDeserialization(不安全的反序列化)

不安全的反序列化漏洞通常会导致远程代码执行问题。即使反序列化错误不会导致远程代码执行,也可以被用来执行攻击,包括重放攻击、注入攻击以及权限提升攻击等。

A9:2017-UsingComponents with Known Vulnerabilities(使用含有已知漏洞的组件)

组件(如库、框架和其他软件模块)是以与应用程序相同的权限运行的。如果存在漏洞的组件被利用,这种攻击可能会导致严重的数据丢失或服务器接管危机。使用已知漏洞组件的应用程序和API可能会破坏应用程序的防御系统,从而启动各种形式的攻击,造成更为严重的影响。

A10:2017-InsufficientLogging & Monitoring(不足的记录和监控漏洞)

不足的记录和监控漏洞,再加上事件响应能力欠缺以及缺少有效的整合,使得攻击者可以进一步攻击系统,维持其持久性,转而攻击更多的系统,并篡改、提取或销毁数据。大部分的数据泄露研究显示,检测出发生数据泄漏的时间通常需要超过200天,而且通常是外部机构率先发现数据泄漏的事实,而不是通过内部的审计流程或监控发现的。

(2)OWASP TOP 2021

A01:失效的访问控制

​ 从第五位上升称为Web应用程序安全风险最严重的类别,常见的CWE包括:将敏感信息泄露给未经授权的参与者、通过发送的数据泄露敏感信息、跨站请求伪造(csrf)

​ 访问强制实施策略,使用户无法在其预期权限之外操作。失败的访问控制通常导致未经授权的信息泄露,修改或者销毁所有数据,或在用户权限之外执行业务功能。

A02:加密机制失效

​ 上升一位到第二位,以前称为“敏感数据泄露”。敏感数据泄露更像是一种常见的表象问题而不是根本原因,这项风险重点是与加密机制相关的故障(或缺乏加密机制)

A03:注入

注入降至第三,常见的CWE:跨站点脚本、SQL注入、文件名或路径的外部控制

源代码审查是检查应用程序是否易受注入攻击的最佳方法。

强烈鼓励针对所有参数、标题、URL、cookie、JSON、SOAP和XML数据输入的自动测试

A05:安全配置错误

从上一版的第六名提升,90%都进行了某种形式的配置错误测试。

​ 缺少一个体系的、可重复的应用程序安全配置过程,系统将处于高风险中

应用程序栈的任何部分缺少适当的安全加固,或者云服务的权限配置错误

应用程序启用或安装了不必要的功能(例如:不必要的端口、服务、网页、账户或权限)

默认账户和密码仍然可用且没有更改

错误处理机制向用户纰漏堆栈信息或其他大量错误信息

对于升级的系统,最新的安全特性被禁用或未安全配置

应用程序服务器、应用程序框架(如:Struts、Spring、ASP。net)、库文件、数据库等没有进行安全配置

A06:自带缺陷和过时的组件

软件易受攻击,不再支持或过时。

没有定期做漏洞扫描和订阅使用组件的安全公告

软件工程师没有对更新的、升级的或者打过补丁的组件进行兼容性测试

没有对组件进行安全配置

A07:身份识别和身份验证错误

之前称为无效的身份认证,此类别从第二名下滑,现在包含了与身份识别失效相关的CWE

A08:软件和数据完整性故障

A09:安全日志和监控故障

如果不进行日志记录和检测,就无法发现任何违规行为,任何时候都会发现日志记录、检测、监视和主动响应不足的情况:

日志只存储在本地

渗透测试和动态应用安全测试工具的扫描没有触发情报

警告和错误生成的日志或日志记录不充分或日志消息不清晰

A10:服务端请求伪造(ssrf)

风险说明

​ 一旦web应用程序在获取远程资源时没有验证用户提供的URL,就会出现ssrf缺陷。它允许攻击者强制应用程序发送一个精心构造的请求到意外的目的地,即使是在有防火墙,VPN获其他类型的网络访问控制列表保护的情况下

A10:服务端请求伪造(ssrf)

​ 一旦web应用程序在获取远程资源时没有验证用户提供的URL,就会出现ssrf缺陷。它允许攻击者强制应用程序发送一个精心构造的请求到意外的目的地,即使是在有防火墙,VPN获其他类型的网络访问控制列表保护的情况下

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

橙橙糖蛋

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值