OWASP 突出显示的 Web 应用程序中 10 大关键漏洞

415 阅读4分钟

OWASP基金会(非营利性)致力于通过社区和从其网站轻松访问的免费资源来提高Web应用程序的安全性。在它提供的众多资源中,以“OWASP Top 10”最著名。

OWASP Top 10旨在识别和突出 Web 应用程序中十大关键的安全漏洞,并为开发人员和安全专业人员提供必要的指导。OWASP Top 10每隔几年更新一次,最后一次更新是在 2021 年。

WebGoat

WebGoat 是OWASP 的一个项目,专门设计来教授开发人员和安全专业人员关于web应用程序中常见的漏洞以及如何解决这些漏洞。WebGoat是一个故意包含安全漏洞的不安全的web应用程序,用户可以利用这些漏洞进行测试和学习。

WebGoat 可以从其官方owasp.org/www-project…

还可以在 Docker 中使用hub.docker.com/r/webgoat/w…

OWASP Top 10

1.访问控制中断

访问控制中断是指对允许经过身份验证的用户在应用中执行的操作设置的限制不足。用户权限和权限实现中的这些缺陷允许用户执行超出其预期权限的操作或访问数据。访问控制中断的一个例子是,一个标准用户在没有适当权限的情况下,简单地操纵一个URL来访问应用程序中的管理功能。

2. 加密失败

这种安全风险与加密的不正确实现或使用有关,例如使用过时的算法或不正确的密钥管理配置。熟练的网络攻击者可以轻而易举地绕过薄弱或配置错误的加密技术来篡改Web应用程序或访问敏感数据。

3.SQL注入

Web应用程序中的注入漏洞允许攻击者构建恶意输入,从而欺骗应用程序执行意想不到的命令。最著名的类型是SQL注入,攻击者操纵Web应用程序的数据库查询。

4. 不安全的设计

Web应用程序中的不安全设计意味着架构和基础选择本身就缺乏安全考虑。这些有风险的选择可能会使应用程序容易受到攻击,无论单个代码级安全措施如何。

5. 安全配置错误

当安全设置和控件实现不当、保持默认值或完全忽略时,就会发生Web应用程序中的安全错误配置。错误配置的风险包括未受保护的文件、目录或数据库,它们会促进对有价值的数据或系统功能的意外访问。

6. 易受攻击和过时的组件

Web 应用程序中易受攻击和过时的组件是指存在已知安全漏洞但尚未被开发人员更新或修补的第三方库、插件、框架和其他软件模块。

依赖易受攻击组件的 Web 应用程序会继承其缺陷,这为威胁参与者提供了潜在的利用途径。

7. 失效身份验证和会话管理

有缺陷的身份验证机制(如弱密码策略、缺乏多因素身份验证或未正确实的会话管理)使攻击者能够冒充合法用户或完全绕过身份验证检查。

这些故障为未经授权的数据访问、身份盗窃和潜在的用户帐户接管铺平了道路。

8. 软件和数据完整性故障

当应用程序无法确保数据和应用程序代码的真实性和可信度时,就会发生软件和数据完整性故障。完整性是指确保数据和代码在原始状态中保持不变和真实。

软件和数据完整性方面的故障会带来未经授权的修改风险,从而导致欺诈性交易或恶意代码被插入应用程序。

9.安全日志记录和监控故障

这种风险与应用程序中活动记录不足或无法主动检测和实时响应恶意行为有关。

缺乏详细的日志或缺乏监控会造成盲点,从而无法及时检测未经授权的访问、数据泄露或其他恶意活动。

10. 服务器端请求伪造

服务器端请求伪造(server - side Request Forgery, SSRF)是一种安全漏洞,攻击者可以操纵web应用程序,使其代表服务器向内部资源或第三方系统发出不必要的请求。

这种风险促进了网络基础设施的横向移动,并使攻击者能够与后端服务交互或泄露数据。

参读链接:

www.welivesecurity.com/es/recursos…