目录
Web应用防火墙(WAF)是遏止Web应用攻击的先头防线。WAF通过筛选、监控和分析Web应用和互联网之间的超文本传输协议(HTTP)和安全超文本传输协议(HTTPS)流量保护Web应用和网站。
WAF可保护Web应用免受跨站伪造、服务器端请求伪造、文件包含漏洞和SQL注入等攻击。
以下是能够使用WAF缓解的七种最常见的攻击。
一段时间以来,黑客们热衷于反复利用SQL、NoSQL、OS和轻型目录访问协议(LDAP)注入等注入漏洞。当将可疑数据作为命令或查询插入应用时,就会出现注入漏洞。这种恶意数据可以诱使解释程序执行预期外的命令或在未经适当授权的情况下访问数据。
最常见的代码注入是SQL注入,这是一种通过向数据库服务器发送异常代码实现的攻击。这种类型的攻击简单迅捷,而由于SQL注入脚本可以下载并且易于获取,因此几乎任何可以访问互联网的人都可以实现此类攻击。
可预测资源位置是一种用于发现隐藏的网站内容和功能的攻击技术。攻击者可以通过蛮力攻击进行有根据的猜测,猜出原本不供公众查看的文件和目录名称。由于文件/路径通常具有通用的命名约定并且位于常规位置,因此蛮力攻击文件名能够轻松得逞。其中可以包括临时文件、备份文件、日志、管理站点部分、配置文件、演示应用和示例文件。这些文件可能会泄露有关网站的敏感信息、Web应用内部结构、数据库信息、密码、机器名称、其他敏感区域的文件路径等。
这不仅可帮助攻击者发现可能导致其他站点漏洞的站点面,而且可能会向攻击者泄露有关环境或其用户的重要信息。可预测资源位置也称为强制浏览、强迫浏览、文件枚举和目录枚举。
HTTP泛洪是黑客用来攻击Web服务器和应用的一种分布式拒绝服务攻击方法。HTTP泛洪通过在网页上定向大量HTTP请求以使目标服务器的请求过载。
在HTTP泛洪中,HTTP客户端(例如Web浏览器)与应用或服务器交互以发送HTTP请求。请求可以是“GET”或“POST”。攻击的目的是迫使服务器分配尽可能多的资源来处理攻击发送的请求,从而拒绝合法用户访问服务器的资源。此类请求通常通过僵尸网络一同发送,以增加攻击的整体威力。
These DDoS attacks may be one of the most advanced non-vulnerability threats facing web servers today. It is very hard for network security devices to distinguish between legitimate HTTP traffic and malicious HTTP traffic, and if not handled correctly, it could cause a high number of false-positive detections. Rate-based detection engines are also not successful at detecting these types of attacks, as the traffic volume of HTTP Floods may be under detection thresholds. Because of this, it is necessary to use several parameters detection, including rate-based and rate-invariant.
如今绝大多数互联网流量均经过加密。大多数HTTP泛洪攻击都是HTTPS泛洪。加密泛洪的威力更大,不仅因为处理此类攻击需要大量服务器资源,而且还因为缓解此类攻击也更加复杂,因为DDoS防御通常无法在不完全解密所有流量的情况下检测HTTPS请求的内容。
HTTP请求夹带(也称为HTTP请求非同步攻击)这种攻击技术能够干扰网站处理一个或多个用户发送的HTTP请求序列的方式。在这种攻击中,攻击者可在其与Web服务器之间的设备毫无察觉的情况下将请求“夹带”到Web服务器。HTTP请求夹带漏洞在本质上通常性质严重,让攻击者可以绕过安全控制、干扰其他用户会话、未经授权访问敏感数据并直接危害其他应用用户。
文件路径遍历攻击(也称为目录遍历)是一种让攻击者得以访问存储在Web根文件夹之外的文件和目录的Web安全漏洞。这些文件可能包括应用代码和数据、后端系统的凭据和敏感的操作系统文件。
攻击者通过诱骗Web服务器或服务器上运行的Web应用返回存在于Web根文件夹之外的文件进行文件路径遍历攻击。
服务器端请求伪造(SSRF)是指攻击者利用Web安全漏洞诱使服务器端应用向攻击者选择的任意域发出HTTP请求。
在此类攻击中,威胁主体可能滥用服务器上的功能以读取或更新内部资源。攻击者会提供或修改一个URL,在服务器上运行的代码将读取此URL或将数据提交至此URL,并使攻击者能够读取服务器配置(例如AWS元数据)、连接至内部服务(例如启用HTTP的数据库)或对原不打算公开的内部服务执行发布请求。
无论是在易受攻击的应用本身还是在应用可以与之通信的其他后端系统上,成功的SSRF攻击通常会导致对企业内部数据的未经授权的操作或访问。在某些情况下,SSRF漏洞可能允许攻击者执行任意命令。有些时候,导致与外部第三方系统连接的SSRF漏洞利用可能会导致恶意正向攻击,这些攻击将被视为发起于托管易受攻击应用的企业。
点击劫持是一种发生在客户端的攻击,其目的是诱骗应用用户点击精心伪装的内容。黑客通过将恶意软件或恶意代码隐藏在网站上看似合法的控件中,其中以第三方服务的JavaScript为主(这些第三方服务通常不受应用标准安全工具的监控),来执行此类攻击从而利用应用供应链中的漏洞。
这是攻击者用来记录受感染用户在互联网上的点击的一种恶意技术,可用于将流量引导至特定站点或使用户点赞或接受一项Facebook应用。更加不怀好意的目的可能是收集保存在浏览器上的敏感信息(例如密码),或安装恶意内容。
WAF利用多种功能和机制来保护应用免受各类攻击,其中包括具有自动误报纠正的动态安全政策、应用层7 DDoS保护、API发现和保护、僵尸程序风险缓解等。
大多数WAF均利用被动安全模型,该模型会定义不被允许的内容,同时默许其他所有内容。由于攻击签名可能会将合法流量检测为攻击流量而产生误报,因此此类规则往往过于简单,仅尝试检测明显的攻击,而结果是仅能防范最普遍的攻击。
主动安全模型可定义一组允许的类型和值,在基于签名的保护无法满足需求的情况下,就需要这种模型以提供全面的保护。就SQL注入而言,主动安全模型会筛选用户输入以检测已知的攻击模式,并利用逻辑来区分合法用户输入和注入漏洞。主动安全模型对于成功缓解与SSRF相关的风险也至关重要。
在评估可以缓解这些常见攻击和漏洞的WAF时,需要考虑以下六项关键功能:
-
全面的API发现和保护:提供对各种形式的API滥用和操纵的可见性、对策实施和风险缓解(无论是针对内部部署环境还是云托管环境)
-
内置HTTP DDoS保护:遏止应用层DDoS攻击
-
集成僵尸程序管理:检测和缓解模仿人类行为的复杂的第3代和第4代僵尸程序
-
数据泄露预防机制:自动屏蔽敏感用户数据,如个人可识别信息(PII)
-
综合被动和主动安全模型:使用高级行为分析技术检测恶意威胁
-
策略细化引擎:持续优化安全政策,同时适应应用、流量和威胁态势的变化