软件应用程序可能会受到许多威胁的影响。开放Web应用程序安全项目(OWASP)前10名列表包括最有可能影响生产中应用程序的关键应用程序威胁。
1)访问控制失效
破坏的访问控制允许威胁和用户获得未经授权的访问和权限。以下是最常见的问题:
它使攻击者能够未经授权访问用户帐户,并充当管理员或普通用户。
它为用户提供未经授权的特权功能。
您可以通过实施强大的访问机制来修复此问题,确保每个角色都明确地定义了独立的权限。
2) 加密失败
加密失败(以前称为“敏感数据暴露”)发生在数据在传输和静止过程中没有得到适当保护时。它可能会暴露密码、健康记录、信用卡号和个人数据。
这种应用程序安全风险可能导致不遵守数据隐私法规,如欧盟通用数据保护条例(GDPR),以及PCI数据安全标准(PCI DSS)等财务标准。
3)注入(包括XSS、LFI和SQL注入)
注入漏洞使威胁行为者能够向web应用程序解释器发送恶意数据。它可能会导致此数据在服务器上编译和执行。SQL注入是一种常见的注入形式。
4)不安全的设计
不安全的设计涵盖了由于安全控制无效或缺失而出现的许多应用程序弱点。没有能够抵御关键威胁的基本安全控制的应用程序。虽然您可以通过安全设计修复应用程序中的实现缺陷,但不可能通过适当的配置或补救来修复不安全的设计。
5)安全配置错误(包括XXE)
由于整个应用程序堆栈缺乏安全强化,因此会出现安全配置错误。以下是常见的安全配置错误:
1) 云服务权限配置不当
2) 启用或安装不需要的功能
3) 使用默认密码或管理员帐户
4) XML外部实体(XXE)漏洞
6) 易损和过时的组件
易受攻击和过时的组件(以前称为“使用具有已知漏洞的组件”)包括由过时或不受支持的软件引起的任何漏洞。当您在不事先了解其内部组件和版本的情况下构建或使用应用程序时,可能会出现这种情况。
7) 识别和身份验证失败
识别和身份验证失败(以前称为“身份验证失败”)包括与用户身份相关的任何安全问题。通过建立安全的会话管理并为所有身份设置身份验证和验证,您可以防止身份攻击和漏洞利用。
8) 软件和数据完整性故障
当基础设施和代码容易受到完整性违规的影响时,就会发生软件和数据完整性故障。它可能发生在软件更新、敏感数据修改和任何未经验证的CI/CD管道更改期间。不安全的CI/CD管道可能会导致未经授权的访问,并导致供应链攻击。
9) 安全日志记录和监控失败
当应用程序漏洞无法正确检测和应对安全风险时,就会发生安全日志记录和监控失败(以前称为“日志记录和监视不足”)。日志记录和监控对于检测违规行为至关重要。当这些机制不起作用时,它会阻碍应用程序的可见性,并损害警报和取证。
10) 服务器端请求伪造
当web应用程序在从远程资源提取数据之前没有验证用户输入的URL时,就会出现服务器端请求伪造(SSRF)漏洞。它会影响受防火墙保护的服务器和任何不验证URL的网络访问控制列表(ACL)。