为了帮助公司应对 Web 应用程序漏洞并保护自己的 Web 应用程序,开放 Web 应用程序安全项目 (OWASP) 在线社区创建了 OWASP 前十排行榜。当我们跟踪他们的排名时,我们注意到我们对主要漏洞的排名方式有所不同。出于好奇,我们决定找出差异到底有多大。这就是为什么我们建立了自己的排名,该排名反映了我们通过八年经验对最广泛和最关键的 Web 应用程序漏洞的看法。
参与者简介和申请
我们从我们团队在 2021-2023 年完成的应用程序安全评估项目样本中收集了数据。大多数网络应用程序由俄罗斯、中国和中东的公司拥有。
几乎一半的应用程序 (44%) 是用 Java 编写的,其次是 NodeJS (17%) 和 PHP (12%)。超过三分之一 (39%) 使用微服务架构。
2021-2023 年编写 Web 应用程序所用编程语言的分布
我们用黑盒、灰盒和白盒方法对 Web 应用程序进行评估获得数据然后进行分析。几乎每个用灰盒评估的应用程序也用黑盒进行分析,因此我们在统计中结合了这两种方法。因此,绝大多数(83%)的Web应用程序项目都使用黑盒和灰盒方法。
分析方法不同造成的差异
由于黑盒、灰盒和白盒方法意味着对应用程序的访问级别不同,因此可能发现的漏洞类型也不同。我们比较了访问应用程序源代码和不访问应用程序源代码时发现的漏洞。结果,五个最普遍的漏洞中有四个匹配,但也存在差异。
黑/灰和白盒分析中发现的最普遍的漏洞
此外,统计数据显示,白盒方法可以发现更多严重漏洞,例如 SQL 注入。平均而言,黑/灰盒分析发现了 23 个漏洞,白盒分析发现了 30 个漏洞。
2021-2023 年使用黑/灰盒分析平均发现的每个应用程序中不同风险级别的漏洞比例
2021-2023 年使用白盒分析平均发现的每个应用程序中不同风险级别的漏洞比例
尽管白盒方法允许为每个应用程序查找更多数量的漏洞,但黑盒和灰盒方法可用于从恶意行为者的角度查看应用程序并识别必须首先修复的漏洞。
十大 Web 应用程序漏洞
我们分析了网络应用程序评估项目的结果,以确定数字世界在过去三年中面临的最广泛和最严重的漏洞。
该排名是根据包含特定漏洞的应用程序数量和影响严重程度得出的专家意见。
这些排名中提供的建议本质上是一般性的,并且基于信息安全最佳实践标准和指南,例如 OWASP 和 NIST。
01
访问控制被破坏
我们分析的 70% 的 Web 应用程序包含与访问控制问题相关的漏洞。
2021-2023 年损坏的访问控制漏洞按风险级别的分布
近一半的损坏访问控制漏洞具有中等风险级别,37% 具有高风险级别。高危漏洞可能会导致应用程序出现错误并影响客户的业务。在一个应用程序中,由于对提交的数据验证不充分,我们可以访问内部服务并可能执行导致财务损失的攻击
缓解措施
根据基于角色的访问模型实施身份验证和授权控制。除非资源可供公开访问,否则默认拒绝访问。
02
敏感数据暴露
此类漏洞是 Web 应用程序中常见的另一种漏洞。与破坏访问控制相比,敏感数据暴露包含更多的低风险漏洞,但也存在高风险漏洞。
2021 年至 2023 年按风险级别划分的敏感数据泄露漏洞分布
我们在分析过程中发现的敏感数据包括纯文本一次性密码和凭据、Web 应用程序发布目录的完整路径以及可用于了解应用程序架构的其他内部信息。
缓解措施
不要在 Web 应用程序发布目录中存储包含敏感数据(例如密码或备份)的文件。访问应用程序功能时避免泄露敏感数据,除非该功能本身用于访问敏感数据。
03
服务器端请求伪造(SSRF)
云和微服务架构的受欢迎程度正在上升。与传统架构相比,微服务架构扩大了 SSRF 攻击的攻击面,因为更多的服务通过 HTTP(或其他轻量级协议)进行通信。我们分析的超过一半 (57%) 的应用程序包含一个漏洞,该漏洞可让恶意攻击者绕过应用程序逻辑后与内部服务进行通信:服务器端请求伪造。
2021-2023 年 SSRF 漏洞按风险级别分布
具体来说,恶意行为者可以将 SSRF 与其他漏洞串联起来,对 Web 服务器发起攻击或读取应用程序源代码
缓解措施
如果可能,创建应用程序可以请求的资源白名单。阻止对不在该列表中的任何资源的请求。不接受包含完整 URL 的请求。设置防火墙过滤器以防止访问未经授权的域。
04
SQL注入
2021-2023 年大多数高风险漏洞都与 SQL 注入相关。尽管如此,我们仍将这一类别排在第四位,因为我们分析的应用程序中只有 43% 容易受到此漏洞的影响。
2021-2023 年按风险级别划分的 SQL 注入漏洞分布
此类漏洞可能导致敏感信息被盗或远程代码执行。在其中一个项目中,对一个可供任何互联网用户注册的应用程序进行 SQL 注入,使我们能够获取内部系统管理员的凭据。
缓解措施
在应用程序源代码中使用参数化 SQL 查询,而不是将它们与 SQL 查询模板结合起来。如果无法使用参数化 SQL 查询,请确保用户输入的用于生成 SQL 查询的数据不能用于修改查询逻辑
05
跨站脚本 (XSS)
我们分析的 61% 的 Web 应用程序中发现了跨站脚本漏洞。在大多数情况下,该漏洞具有中等风险级别,因此我们将其排在第五位,尽管它非常普遍。
2021-2023 年 XSS 漏洞按风险级别分布
超过一半 (55%) 的 XSS 漏洞与 IT 公司使用的应用程序相关,其次是公共部门 (39%)。
针对应用程序客户端的 XSS 攻击可用于获取用户身份验证信息,例如 cookie、网络钓鱼或传播恶意软件。在一种攻击场景中,XSS 与其他漏洞相结合,允许将用户密码更改为已知值,从而使用该用户的权限获取对应用程序的访问权限。
缓解措施
通过将可用于格式化 HTML 页面的潜在不安全字符替换为非格式字符的等效字符,对 Web 应用程序用户输入进行处理。对于从外部源获取并显示在浏览器中的任何数据(包括 HTTP 标头,如 User-Agent 和 Referer),都应该执行此操作。
06
身份验证失效
尽管我们在此类别中发现的漏洞中几乎一半具有中等风险级别 (47%),但也存在高风险漏洞,允许代表客户的客户端访问 Web 应用程序。
2021-2023 年按风险级别划分的破坏身份验证漏洞的分布
例如,某个应用程序没有 JWT(Jason Web Token)签名检查,因此恶意行为者可以修改自己的 JWT(通过指定另一个用户的 ID)并使用生成的令牌在帐户内执行各种操作。
缓解措施
对用于访问应用程序的身份验证数据进行适当的验证。使用时验证令牌和会话 ID 签名。用于身份验证的秘密(加密密钥、签名等)应该是唯一的并且具有高度的熵。不要在应用程序代码中存储机密。
07
安全配置错误
我们分析的应用程序中不到一半包含安全配置错误漏洞。此类别涵盖从启用调试模式到禁用身份验证的一系列漏洞。
2021-2023 年按风险级别划分的安全配置错误漏洞分布
我们分析的一个应用程序的 Nginx 服务器允许访问父目录(相对于 Alias 指令中指定的目录)中的文件。这可用于访问包含机密数据的文件。
缓解措施
配置 IT 基础设施中使用的系统时遵循安全最佳实践。自动化设置过程以消除设置新系统时的错误。对测试和生产系统使用不同的凭据。禁用未使用的组件。
08
对暴力攻击的防护不足
我们分析的应用程序中有超过三分之一允许暴力攻击。一次性密码和针对各种资源(例如帐户或文件系统)的身份验证是我们发现的一些易受攻击的机制。
2021-2023 年暴力攻击防护不足漏洞的风险级别分布
具体来说,不良的 OTP 实现可能会允许攻击者暴力破解 OTP,绕过此身份验证因素,从而使对应用程序的未经授权的访问变得更加容易。
缓解措施
使用 CAPTCHA 使攻击者更难暴力破解凭据。您还可以使用预防控制(WAF、IPS)来及时阻止暴力破解尝试,无论是同一帐户多次登录失败还是同一来源的不同帐户多次登录失败。
09
弱用户密码
我们分析的 Web 应用程序中有 22% 设置了弱密码。
此类漏洞比例相对较低的一个解释是,安全分析师经常使用客户测试平台而不是实时系统。
2021 年至 2023 年按风险级别划分的弱用户密码漏洞分布
尽管包含此类漏洞的应用程序数量很少,但利用弱凭据的后果可能会很严重。根据帐户类型,攻击者可以访问基本应用程序功能或管理场景,这可能会影响业务流程。
缓解措施
实施弱密码检查,例如,针对 10,000 个最弱密码的列表运行新的或更改的密码。强制执行密码长度、复杂性和过期要求,以及其他基于证据的现代密码策略。
10
使用具有已知漏洞的组件
最后但并非不重要的广泛类别是使用具有已知漏洞的组件。
2021-2023 年按风险级别划分的使用具有已知漏洞的组件导致的漏洞分布
易受攻击的组件包括框架和各种应用程序依赖项,例如库和模块。其中一些允许我们访问应用程序使用的服务器,从而渗透客户的内部网络。
缓解措施
定期清点您使用的软件组件,并根据需要进行更新。仅使用已成功通过安全测试的可信组件。禁用任何未使用的组件。
结 论
Conclusions
修复本研究中描述的最普遍的 Web 应用程序漏洞将帮助您保护机密数据并避免 Web 应用程序和相关系统受到损害。为了提高Web应用的安全性并及时发现攻击,我们建议您执行以下操作:
• 遵循安全软件开发生命周期(SSDLC)。
• 定期运行应用程序安全评估。
• 使用日志记录和监控来跟踪应用程序活动
来源:卡巴斯基,侵删
本文转自 https://mp.weixin.qq.com/s/x9AzSeNineQCOqimUQpAZw,如有侵权,请联系删除。
`黑客&网络安全如何学习
今天只要你给我的文章点赞,我私藏的网安学习资料一样免费共享给你们,来看看有哪些东西。
1.学习路线图
攻击和防守要学的东西也不少,具体要学的东西我都写在了上面的路线图,如果你能学完它们,你去就业和接私活完全没有问题。
2.视频教程
网上虽然也有很多的学习资源,但基本上都残缺不全的,这是我自己录的网安视频教程,上面路线图的每一个知识点,我都有配套的视频讲解。
内容涵盖了网络安全法学习、网络安全运营等保测评、渗透测试基础、漏洞详解、计算机基础知识等,都是网络安全入门必知必会的学习内容。
(都打包成一块的了,不能一一展开,总共300多集)
因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取
优快云大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享
3.技术文档和电子书
技术文档也是我自己整理的,包括我参加大型网安行动、CTF和挖SRC漏洞的经验和技术要点,电子书也有200多本,由于内容的敏感性,我就不一一展示了。
因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取
优快云大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享
4.工具包、面试题和源码
“工欲善其事必先利其器”我为大家总结出了最受欢迎的几十款款黑客工具。涉及范围主要集中在 信息收集、Android黑客工具、自动化工具、网络钓鱼等,感兴趣的同学不容错过。
还有我视频里讲的案例源码和对应的工具包,需要的话也可以拿走。
因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取
优快云大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享
最后就是我这几年整理的网安方面的面试题,如果你是要找网安方面的工作,它们绝对能帮你大忙。
这些题目都是大家在面试深信服、奇安信、腾讯或者其它大厂面试时经常遇到的,如果大家有好的题目或者好的见解欢迎分享。
参考解析:深信服官网、奇安信官网、Freebuf、csdn等
内容特点:条理清晰,含图像化表示更加易懂。
内容概要:包括 内网、操作系统、协议、渗透测试、安服、漏洞、注入、XSS、CSRF、SSRF、文件上传、文件下载、文件包含、XXE、逻辑漏洞、工具、SQLmap、NMAP、BP、MSF…
因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取