OWASP介绍
OWASP被视为Web应用安全领域的权威参考,在年发布的美国国家和国际立法、标准、准则、委员会和行业实务守则参考引用了OWASP。美国联邦贸易委员会(FTC)强烈建议所有企业需遵循OWASP十大WEB弱点防护守则。国际信用卡数据安全技术PCI标准更将其列为必要组件。OWASP组织为英国GovCERTUK提供SQL注入参考和为欧洲网络与信息安全局(ENISA),云计算风险评估参考。OWASPTOP10为IBMAPPSCAN、HPWEBINSPECT等扫描器漏洞参考的主要标准。
作为一个c3非盈利的全球性安全组织,致力于应用软件的安全研究。使命是使应用软件更加安全,使企业和组织能够对应用安全风险做出更清晰的决策。目前OWASP全球拥有个分会近万名会员,共同推动了安全标准、安全测试工具、安全指导手册等应用安全技术的发展。
2
OWASPTOP10
1、版本
2、漏洞描述
A1:-注入
将不受信任的数据作为命令或查询的一部分发送到解析器时,会产生诸如SQL注入、NoSQL注入、OS注入和LDAP注入的注入缺陷。攻击者的恶意数据可以诱使解析器在没有适当授权的情况下执行非预期命令或访问数据。
A2:-失效的身份认证
通常,通过错误使用应用程序的身份认证和会话管理功能,攻击者能够破译密码、密钥或会话令牌,或者利用其它开发缺陷来暂时性或永久性冒充其他用户的身份。
A3:-敏感数据泄露
许多Web应用程序没有正确保护敏感数据,如信用卡,税务ID和身份验证凭据。攻击者可能会窃取或篡改这些弱保护的数据以进行信用卡诈骗、身份窃取,或其他犯罪。
A4:-XML外部处理器漏洞
许多较早的或配置错误的XML处理器评估了XML文件中的外部实体引用。攻击者可以利用外部实体窃取使用URI文件处理器的内部文件和共享文件、监听内部扫描端口、执行远程代码和实施拒绝服务攻击。
A5:-失效的访问控制
未对通过身份验证的用户实施恰当的访问控制。攻击者可以利用这些缺陷访问未经授权的功能或数据,例如:访问其他用户的帐户、查看敏感文件、修改其他用户的数据、更改访问权限等。
A6:-安全配置错误
安全配置错误是最常见的问题。这通常是由不安全的默认配置,不完整或adhoc配置,开放云存储,错误配置的HTTP标头,以及包含敏感信息的详细错误信息造成的。
A7:-跨站脚本攻击
当应用程序的新网页中包含不受信任的、未经恰当验证或转义的数据时,或者使用可以创建HTML或JavaScript的浏览器API更新现有的网页时,就会出现XSS缺陷。XSS让攻击者能够在受害者的浏览器中执行脚本,并劫持用户会话、破坏网站或将用户重定向到恶意站点。
A8:-不安全的反序列化漏洞
此漏洞通常会导致远程代码执行问题。即使反序列化错误不会导致远程代码执行,也可以被用来执行攻击,包括重放攻击、注入攻击以及权限提升攻击等。
A9:-使用含有已知漏洞的组件
组件(如库、框架和其他软件模块)是以与应用程序相同的权限运行的。如果存在漏洞的组件被利用,这种攻击可能会导致严重的数据丢失或服务器接管危机。使用已知漏洞组件的应用程序和API可能会破坏应用程序的防御系统,从而启动各种形式的攻击,造成更为严重的影响。
A10:-不足的日志记录和监控漏洞
不足的记录和监控漏洞,再加上事件响应能力欠缺以及缺少有效的整合,使得攻击者可以进一步攻击系统,维持其持久性,转而攻击更多的系统,并篡改、提取或销毁数据。
3
OWASPCRS规则
1、OWASPCRS规则文件结构
90X文件:排除误报
91X文件:检测恶意客户端规则
92X文件:检测违反协议的规则
93X和94X文件:检测运行程序攻击(SQL)或者命令执行攻击规则
95X文件:检测出站数据泄露规则
*.data文件:规则使用的数据文件
2、CRS规则检测攻击行为处理阶段
(1)PhaseRequestHeaders请求头阶段
Apache完成读取请求头(post-read-request阶段)后立即处理此阶段中的规则。在这个时候还没有读取请求体,所以这个时候对所有请求参数并不是都可用。如果需要提前运行规则(在Apache对请求执行某些操作之前),在请求体读取之前执行某些操作,您需确定是否应该缓存请求体,或者决定如何将规则置于此阶段(例如,是否将其解析为XML)。
(2)PhaseRequestBody请求体阶段
请求体阶段是通用的输入分析阶段,大多数面向应用程序的规则都放在这里。在这个阶段是可以收到所有的请求参数,当然这个前提是请求主体是已经读取的。在此阶段ModSecurity支持请求正文阶段的三种编码类型:
application/x-