什么是 DoS 攻击?
拒绝服务攻击(DoS 攻击)或分布式拒绝服务攻击(DDoS 攻击)使目标用户无法使用受害者的资源,或阻碍目标用户与受害站点之间的通信媒体,以便他们可以不再充分沟通。DoS 攻击的实施者通常以网站或服务为目标,例如银行、信用卡支付网关和电子商务网站。
Application Security Manager™ (ASM) 有助于保护 Web 应用程序免受针对用于为应用程序提供服务的资源的 DoS 攻击:Web 服务器、Web 框架和应用程序逻辑。Advanced Firewall Manager™ (AFM) 有助于防止网络、SIP 和 DNS DoS 和 DDoS 攻击。
HTTP-GET 攻击和页面泛洪攻击是应用 DoS 攻击的典型例子。这些攻击是从单个用户(单个 IP 地址)或从数千台计算机(分布式 DoS 攻击)发起的,这会使目标系统不堪重负。在页面泛洪攻击中,攻击者会下载页面上的所有资源(图像、脚本等),而 HTTP-GET 泛洪会重复请求特定的 URL,而不管它们在应用程序中的位置。
关于识别 DoS 攻击
Application Security Manager™ 根据客户端(基于 TPS)的交易率或服务器端(基于压力)的延迟计算确定流量是 DoS 攻击。您可以指定希望系统使用的阈值,或者让系统根据检查流量模式自动检测合理的阈值。
注意:您可以将两种检测方法设置为独立工作,也可以将它们设置为同时工作以检测客户端和服务器端的攻击。无论哪种方法检测到攻击都会处理 DoS 保护。
您还可以让系统主动识别和防止网络机器人的自动攻击。此外,该系统还可以保护 Web 应用程序免受针对重 URL 的 DoS 攻击。重 URL 保护意味着在 DoS 攻击期间,系统会保护可能对服务器造成压力的重 URL。
您可以在事件日志和 DoS 报告中查看系统检测并记录的 DoS 攻击的详细信息。您还可以在创建日志记录配置文件时为 DoS 攻击配置远程日志记录支持。
何时使用不同的 DoS 保护
Application Security Manager™ 提供了几种不同类型的 DoS 保护,您可以设置这些保护来保护应用程序。此表描述了何时使用不同的保护最有利。您可以使用任何保护组合。
DoS 保护 |
何时使用 |
主动机器人防御 |
在破坏系统之前阻止 DoS 攻击。提供强大的保护并在非人为流量到达 ASM 之前阻止它。 |
机器人签名 |
允许来自合法(良性)机器人的请求,并指示系统如何处理恶意机器人(您可以忽略、记录或阻止它们)。记录恶意机器人使它们在报告中可见。 |
基于 TPS 的检测 |
将保护重点放在客户端以立即检测攻击,主要是通过查看每秒请求阈值。 |
基于压力的检测 |
将保护重点放在发生服务器减速时检测到攻击的服务器端。此保护基于延迟和每秒请求阈值提供更准确的 DoS 检测。 |
行为检测 |
使用流量的行为分析和机器学习来自动发现和缓解 DoS 攻击。 |
重度 URL 保护 |
如果应用程序用户可以查询数据库或提交可能会减慢系统速度的复杂查询。 |
验证码挑战 |
通过向可疑用户提出字符识别挑战来阻止非人类攻击者。 |
关于主动机器人防御
Application Security Manager™ (ASM) 可以主动保护您的应用程序免受网络机器人(简称机器人)的自动攻击。这种防御方法称为主动僵尸防御,可以防止启动第 7 层 DoS 攻击、网络抓取和暴力攻击。通过阻止机器人访问网站,主动机器人防御也可以防止这些攻击。
与其他 DoS 保护一起使用,主动机器人防御有助于在攻击对站点造成损害之前识别和缓解攻击。此功能检查大多数流量,但比传统的网络抓取和蛮力保护需要更少的资源。除了 ASM 安全策略中提供的 Web 抓取和蛮力保护之外,您还可以使用主动机器人防御。主动机器人防御通过 DoS 配置文件强制执行,不需要安全策略。
当客户端第一次访问受保护的网站时,系统会向浏览器发送 JavaScript 质询。因此,如果您打算使用此功能,请务必让客户端使用允许 JavaScript 的浏览器。
如果客户端成功评估挑战并使用有效的 cookie 重新发送请求,则系统允许客户端访问服务器。不回答质询的请求仍然没有回答,也不会发送到服务器。发送到没有 cookie 的非 HTML URL 的请求将被丢弃并被视为机器人。
您可以配置 URL 列表以认为安全,以便系统不需要验证它们。这加快了访问网站的时间。如果您的应用程序访问许多跨域资源并且您拥有这些域的列表,您可能需要选择一个选项来验证对这些域的跨域请求。
主动机器人防御和 CORS
跨域资源共享 (CORS)是网站可以允许来自其他来源的资源访问您的站点(即域 + 协议 + 端口)的一种方式,例如在使用 AJAX、@font-face 和其他一些情况时. Proactive Bot Defense 甚至可以阻止合法用户的 CORS 请求。CORS 请求被阻止是因为浏览器在允许跨域请求时通常不包含所需的 cookie,以防止攻击者试图访问实时会话和来自其他域的敏感数据。
因此,如果您启用主动机器人防御并且您的网站使用 CORS,我们建议您将 CORS URL 添加到主动机器人 URL 白名单。这些 URL 不会主动防御机器人,但不会被阻止,并且仍会受到其他启用的 DoS 检测和缓解措施的保护。
一种常见的跨域请求类型是当 HTML 页面引用来自其他域的资源时,例如嵌入式图像、样式表 (CSS) 和 JavaScript。Proactive Bot Defense 支持这种类型的跨域请求,您可以在跨域请求设置中配置允许资源的特定域。
关于配置基于 TPS 的 DoS 保护
设置 DoS 保护时,您可以配置系统以防止基于事务速率的 DoS 攻击(基于 TPS 的异常检测)。如果您使用基于 TPS 的异常保护,系统会使用以下计算检测来自客户端的 DoS 攻击:
- 交易率检测区间
- 每 10 秒更新一次的每秒最近请求的短期平均值(针对特定 URL 或来自 IP 地址)。
注意: IP 地址和 URL 计数的平均值是针对每个站点进行的,即针对每个虚拟服务器和关联的 DoS 配置文件。如果一个虚拟服务器有多个 DoS 配置文件(使用本地流量策略实现),那么每个 DoS 配置文件在虚拟服务器的上下文中都有自己的统计信息。
- 交易率历史间隔
- 过去一小时计算的每秒请求数(针对特定 URL 或来自 IP 地址)的长期平均值,每 10 秒更新一次。
如果交易率检测区间与历史区间内的交易率的比值大于TPS中设置的增加百分比,则系统认为该网站受到攻击,或URL、IP地址或地理位置怀疑。此外,如果事务率检测间隔大于TPS 达到设置(无论历史间隔如何),那么相应的 URL、IP 地址或地理位置也是可疑的,或者该站点正在受到攻击。
请注意,基于 TPS 的保护可能会检测到 DoS 攻击,这仅仅是因为许多用户试图同时访问服务器,例如在繁忙时间或新产品推出时。在这种情况下,攻击可能是误报,因为用户是合法的。但基于 TPS 的 DoS 保护的优势在于,可以比使用基于压力的保护更早地检测到攻击。因此,在设置 DoS 保护时了解系统上的典型最大峰值负载并使用最适合您的应用程序的方法非常重要。
关于配置基于压力的 DoS 保护
在设置 DoS 保护时,可以配置系统以防止基于服务器端的 DoS 攻击(基于压力的检测)。在基于压力的检测中,需要延迟增加和至少一个可疑的 IP 地址、URL、重 URL、站点范围的条目或地理位置才能将活动视为攻击。
注意:平均延迟是针对每个站点测量的,即针对每个虚拟服务器和关联的 DoS 配置文件。如果一个虚拟服务器有多个 DoS 配置文件(使用本地流量策略实现),那么每个 DoS 配置文件在虚拟服务器的上下文中都有自己的统计信息。
基于压力的 DoS 保护还包括行为 DoS。启用后,系统会检查流量行为以自动检测 DoS 攻击。行为 DoS 审查违规流量,并以最少的用户干预缓解攻击。
与基于 TPS 的保护相比,基于压力的保护更不容易出现误报,因为在 DoS 攻击中,服务器正在达到容量极限并且服务/响应时间很慢:这会影响所有用户。增加的延迟可用作检测 L7 攻击的触发步骤。在检测到延迟显着增加后,确定您是否需要采取进一步措施非常重要。在检查每秒请求的增加并将这些数字与过去的活动进行比较后,您可以识别出可疑的延迟增加与正常延迟增加。
关于行为 DoS 保护
行为 DoS (BADoS)通过使用机器学习和数据分析分析流量行为来提供针对 DDoS 攻击的自动保护。与其他 BIG-IP ® DoS 保护一起使用,行为 DoS 检查数据中心中客户端和应用程序服务器之间的流量,并自动为第 7 层 (HTTP) 和第 3 层和第 4 层建立基线流量/流量配置文件。
例如,在来自僵尸网络的 DDoS 攻击的情况下,每个请求可能是完全合法的,但同时许多请求可能会减慢或崩溃服务器。行为 DoS 可以通过减慢流量来减轻攻击,但前提是保持服务器处于良好状态。
行为 DoS 通过客户反馈循环持续监控服务器运行状况和负载,以确保实时关联,并验证服务器状况、攻击和缓解措施。任何后续异常都会受到关注,系统会根据需要应用缓解措施(减速或阻塞)。
这就是行为 DoS 的工作方式:
- 学习正常流量的典型行为
- 根据当前条件(服务器运行状况)检测攻击
- 发现行为异常(什么和谁改变导致拥堵?)
- 通过减慢可疑客户端的速度来缓解
- 随着经验的提高
您可以在基于压力的检测设置的 DoS 配置文件中启用行为 DoS,这需要最少的配置。由于系统正在跟踪交通数据,它会适应不断变化的条件,因此无需指定阈值。您可以设置希望发生的缓解级别,范围从无缓解(仅限学习)到积极保护(主动 DoS 保护)。该系统可以快速检测第 7 层 DoS 攻击,表征违规流量并缓解攻击。
您可以使用启用了行为 DoS 的 DoS 配置文件来保护一个或最多两个虚拟服务器。
关于 DoS 缓解方法
在设置基于事务或基于压力的 DoS 保护时,您可以指定确定系统如何识别和处理 DoS 攻击的缓解方法。您可以使用以下方法:
- JavaScript 挑战(也称为客户端完整性防御)
- 验证码挑战
- 请求阻塞(包括速率限制或全部阻塞)
您可以将系统配置为发出 JavaScript 质询,以在系统遇到可疑 IP 地址、URL、地理位置或站点范围的标准时分析客户端是否使用合法浏览器(可以响应质询)。如果客户端确实执行 JavaScript 以响应质询,系统会故意减慢交互速度。客户端完整性防御缓解措施仅在操作模式设置为阻止时实施。
基于相同的可疑标准,系统还可以发出 CAPTCHA(字符识别)质询,以确定客户端是人类还是非法脚本。根据您希望实施 DoS 保护的严格程度,您可以限制允许通过服务器的请求数量或阻止被视为可疑的请求。
您还可以在 DoS 配置文件中使用可以使用请求阻止来指定系统何时阻止请求的条件。请注意,当基于 TPS 或基于压力的检测的操作模式设置为阻止时,系统仅在 DoS 攻击期间阻止请求。您可以使用请求阻止来限制或阻止来自可疑 IP 地址、可疑国家或疑似受到攻击的 URL 的所有请求。站点范围的速率限制还阻止对怀疑受到攻击的网站的请求。如果您阻止所有请求,系统会阻止可疑 IP 地址和地理位置,但白名单上的除外。如果您使用速率限制,系统会根据 DoS 配置文件中设置的阈值检测标准阻止一些请求。
您选择的缓解方法按照它们在屏幕上出现的顺序使用。仅当先前的方法无法阻止攻击时,系统才会根据需要强制执行这些方法。
关于地理定位缓解
您可以通过检测来自发送可疑流量的国家/地区的流量来缓解基于地理位置的 DoS 攻击。这是 DoS 配置文件中针对基于压力和基于 TPS 的异常的缓解方法的一部分,此方法有助于防止异常活动,如下所示:
- 基于地理位置的客户端完整性:如果来自国家/地区的流量与 DoS 配置文件中配置的阈值匹配,系统会认为这些国家/地区可疑,并向每个可疑国家/地区发送 JavaScript 质询。
- 基于地理位置的 CAPTCHA 质询:如果来自国家/地区的流量与 DoS 配置文件中配置的阈值匹配,系统会认为这些国家/地区可疑,并向每个可疑国家/地区发出 CAPTCHA 质询。
- 基于地理位置的请求阻止:系统阻止来自可疑国家的所有或部分请求。
此外,您可以将国家添加到地理位置白名单(来自这些国家的流量永远不会被阻止)和黑名单(来自这些国家的流量在检测到 DoS 攻击时总是被阻止)。
关于重 URL 保护
重型 URL是每个请求可能会消耗大量服务器资源的 URL。大多数情况下,重度 URL 以低延迟响应,但在特定条件下(例如 DoS 攻击)很容易达到高延迟。重 URL 不一定总是很重,但往往会变得很重,尤其是在攻击期间。因此,对这些 URL 的低速率请求可能会导致严重的 DoS 攻击,并且难以与合法客户端区分开来。
通常,繁重的 URL 涉及复杂的数据库查询;例如,检索历史股票报价。在大多数情况下,用户以每周分辨率请求最近的报价,这些查询很快就会产生响应。但是,攻击可能涉及请求逐日解析的五年报价,这需要检索大量数据,并消耗大量资源。
Application Security Manager™ (ASM) 允许您在 DoS 配置文件中配置针对重型 URL 的保护。您可以为自动检测繁重的 URL 指定延迟阈值。如果网站的某些 URL 可能成为重 URL,您可以手动添加它们,以便系统关注它们,并且您可以添加应该被忽略且不被视为重的 URL。
ASM™ 测量每个 URL 和整个站点 24 小时的尾部延迟,以获得良好的请求行为样本。如果一个 URL的平均尾部延迟是 24 小时内站点延迟的两倍以上,则该URL 被认为是重度。
关于跨域请求
DoS 配置文件中的主动机器人防御允许您指定哪些跨域请求是合法的。跨域请求是对来自与发出请求的资源域不同的域的资源的 HTTP 请求。
如果您的应用程序访问许多跨域资源并且您拥有这些域的列表,则可以验证对这些域的跨域请求。
例如,您的网站使用两个域,site1.com(主站点)和site2.com(存储资源的地方)。您可以通过启用主动机器人防御、为跨域请求设置选择允许的已配置域选项之一并在相关站点域列表中指定这两个网站,在 DoS 配置文件中进行配置。当浏览器向 发出请求时,它会同时独立地获取 cookie ,并且允许来自to的跨域请求。site1.comsite1.comsite2.comsite1.comsite2.com
如果 onlysite1.com配置为相关站点域,当浏览器向 发出请求时site1.com,它会获取site1.comonly 的 cookie。如果浏览器发出跨域请求以从 获取图像site2.com,它会获取一个 cookie,并且只有当它已经有一个有效的site1.comcookie 时才被允许。
关于站点范围的 DoS 缓解
为了缓解高度分布式的 DoS 攻击,例如那些使用大规模僵尸网络攻击多个 URL 的攻击,您可以在 DoS 配置文件中指定何时使用站点范围的缓解。您可以为基于 TPS 或基于压力的 DoS 保护配置站点范围的缓解。在这种情况下,与特定 URL 或 IP 地址相比,整个站点都可能被视为可疑。当系统确定整个站点正在经历高流量但无法查明和处理问题时,站点范围的缓解措施就会生效。
系统实施站点范围的缓解方法仅作为最后的手段,因为它可能导致系统丢弃合法请求。然而,它至少部分地保持了网站的可用性,即使它受到攻击也是如此。当系统应用站点范围的缓解时,这是因为所有其他主动检测方法都无法阻止攻击。
当超过配置的阈值时,整个站点都被认为是可疑的,同时,特定的 IP 地址和 URL 也可能被发现是可疑的。缓解一直持续到最长持续时间过去或整个站点不再可疑为止。即没有可疑的URL,没有可疑的IP地址,整个站点不再可疑。
关于 DoS 检测中的 CAPTCHA 挑战
CAPTCHA(或视觉字符识别)质询显示字符供客户识别,然后才能访问网站或应用程序。客户端能否正确识别字符决定了客户端是人还是可能是非法脚本。您可以将 CAPTCHA 质询配置为基于 TPS 的 DoS 检测、基于压力的 DoS 检测的缓解策略的一部分,或作为主动机器人防御的一部分。如果您已配置它,系统会向可疑流量发起验证码挑战。
系统提供客户将看到的标准验证码响应。如果需要,您可以自定义响应。
关于 DoS 保护和 HTTP 缓存
HTTP 缓存使 BIG-IP ®系统能够将频繁请求的 Web 对象(或静态内容)存储在内存中,以节省带宽并减少 Web 服务器上的流量负载。Web 加速配置文件具有配置缓存的设置。
如果您将 HTTP 缓存与 DoS 保护一起使用,您需要了解缓存内容的 DoS 保护是如何工作的。在这种情况下,如果提供缓存内容的 URL 超过按百分比增加的相对 TPS(而不是明确的TPS 达到数) ,则将其视为 DoS 攻击。对静态或可缓存 URL 的请求总是通过速率限制来缓解。即使在使用客户端完整性或 CAPTCHA 进行缓解期间,并且当这些缓解不仅基于 URL 时也是如此。
概述:防止对应用程序的 DoS 攻击
您可以配置 Application Security Manager™ 以防止对 Web 应用程序的 DoS 攻击。根据您的配置,系统会根据客户端的每秒事务数 (TPS)、基于压力的服务器延迟、大量 URL、地理位置、可疑浏览器和失败的验证码响应来检测 DoS 攻击。行为 DoS (BADoS) 是基于压力的检测的一部分,使用行为数据自动发现和缓解 DoS 攻击。
您可以通过创建启用应用程序安全的 DoS 配置文件来为第 7 层配置 DoS 保护。然后,您将 DoS 配置文件与代表您要保护的应用程序的一个或多个虚拟服务器相关联。DoS 保护是一种不属于安全策略的系统保护。
制定预防政策的主要因素是:
- 攻击者:发起实际攻击的客户端。它们由它们的 IP 地址和它们来自的地理位置表示。
- 服务器:受到攻击的 Web 应用程序服务器。您可以将它们视为虚拟服务器和 DoS 配置文件的配对、通过 URL 或作为池成员在站点范围内查看。
- BIG-IP 系统:检测攻击和相关可疑实体的中间层,然后根据您在 DoS 配置文件中配置的选项缓解攻击、阻止或丢弃请求。
任务摘要
为应用程序配置 DoS 保护
您可以配置 Application Security Manager™ 以防止和减轻 DoS 攻击,并提高系统安全性。
- 在主选项卡上,单击。
DoS 配置文件列表屏幕打开。
- 单击创建。
创建新的 DoS 配置文件屏幕打开。
- 在名称字段中,输入配置文件的名称,然后单击完成。
- 在 DoS 配置文件列表中,单击您刚刚创建的配置文件的名称,然后单击应用程序安全选项卡。
这是您设置应用程序级 DoS 保护的地方。
- 在General Settings中,对于Application Security,单击Edit并选中Enabled复选框。
显示您可以配置的常规设置。
- 要配置重 URL 保护,请编辑要包含或排除哪些 URL 的设置,或使用自动检测。
另一项任务更详细地描述了重型 URL 保护。
- 要根据请求发起的国家/地区设置 DoS 保护,请编辑地理位置设置,选择允许或禁止的国家/地区。
- 点击编辑。
- 将您希望系统在 DoS 攻击期间阻止其流量的国家/地区移至地理位置黑名单。
- 将您希望系统允许的国家(除非请求有其他问题)移到地理位置白名单中。
- 使用基于压力或基于 TPS 的检测设置在如何检测攻击者和使用哪种缓解设置中按地理位置选择适当的缓解措施。
- 完成后,单击关闭。
- 如果您编写了 iRule 来指定系统如何处理 DoS 攻击并在之后恢复,请启用Trigger iRule设置。
- 为了更好地保护由一个动态加载新内容的页面组成的应用程序,请启用Single Page Application。
- 如果您的应用程序使用许多 URL,在URL Patterns中,您可以创建类似 URL 的逻辑集,其中 URL 的不同部分充当参数。单击未配置并键入一个或多个 URL 模式,例如,/product/*.php。
然后,系统会查看将多个 URL 合二为一的 URL 模式,并且可以更容易地识别 DoS 攻击,例如,通过聚合来自其他类似 URL 的统计信息可能不太频繁访问的 URL。
- 如果要使用性能加速,请在性能加速中选择 TCP fastL4 配置文件以用作加速的快速路径。
列出的配置文件是在中创建的配置文件。
- 单击更新以保存 DoS 配置文件。
您已创建提供基本 DoS 保护的 DoS 配置文件,包括基于 TPS 的检测和重 URL 检测(自动启用)。
接下来,考虑配置其他级别的 DoS 保护,例如基于压力的保护、主动机器人防御和行为 DoS。查看应用程序安全下可用的其他选项并根据需要进行调整。例如,如果使用地理定位,请使用基于压力或基于 TPS 的检测设置来选择适当的缓解措施。此外,您需要将 DoS 配置文件与虚拟服务器相关联,然后才能防御 DoS 攻击。
创建 DoS 保护白名单
您可以创建一个白名单,它是系统在执行 DoS 保护时不检查的 IP 地址列表。
- 在主选项卡上,单击。
DoS 配置文件列表屏幕打开。
- 在 DoS 配置文件列表中,单击要为其指定白名单的配置文件的名称。
DoS 配置文件属性选项卡打开。
- 要省略对某些受信任地址的 DoS 攻击检查,请编辑默认白名单设置:
- 在屏幕右侧的共享对象框架中,地址列表旁边,单击+。
- 在下面的“属性”面板中,键入一个名称,然后一次键入一个名称,键入不需要检查 DoS 攻击的可信 IP 地址或子网,然后单击“添加” 。
- 完成后,单击更新。
新的白名单将添加到地址列表中。
- 要使用新的白名单,请在Default Whitelist之后输入您添加的白名单的名称。
- 如果要为 HTTP 流量创建单独的白名单而不是默认白名单,请为HTTP Whitelist选择Override Default并像创建默认白名单一样创建白名单。
- 完成后,单击更新。
您为默认或 HTTP 创建的白名单被创建为可用于所有 DoS 保护的共享对象。您可以在任何 DoS 配置文件中使用它,包括那些包含应用程序、网络、SIP 和/或 DNS 的 DoS 保护的配置文件。
使用主动机器人防御
要使用主动机器人防御,访问您网站的客户端浏览器必须能够接受 JavaScript。由于此防御机制使用反向查找,因此您需要配置 DNS 服务器()和 DNS 解析器()才能工作。DNS 解析器必须在其路由域名字段中使用默认路由域。如果您不确定默认路由域,可以在Network > Route Domains下进行检查。对于默认路由域,Partition Default 字段定义为 Yes。
您可以配置 Application Security Manager™ (ASM) 以在攻击发生之前保护您的网站免受网络机器人(简称
bots)的攻击。主动机器人防御检查所有进入网站的流量(白名单 URL 除外),而不仅仅是可疑流量。此 DoS 保护使用一组 JavaScript 评估和机器人签名来确保访问您网站的浏览器是合法的。
重要提示:如果您的网站使用跨域资源共享 (CORS)(例如 AJAX 请求),则主动机器人防御会受到限制。
- 在主选项卡上,单击。
DoS 配置文件列表屏幕打开。
- 单击现有 DoS 配置文件的名称(或创建一个新配置文件,然后将其打开),然后单击应用程序安全选项卡。
- 在左侧的 Application Security 下,单击General Settings,并确保Application Security已启用。
屏幕显示附加设置。
- 在左侧,单击Proactive Bot Defense。
- 设置操作模式以指定何时实施主动机器人防御。
选项 |
描述 |
攻击期间 |
在 DoS 攻击期间检查所有流量,并防止检测到的攻击升级。 |
总是 |
随时检查所有流量,并防止 DoS 攻击开始。 |
重要提示:如果您启用主动机器人防御并且您的网站使用 CORS(跨源资源共享),我们建议您将 CORS URL 添加到主动机器人 URL 白名单中。
该系统使机器人签名能够强制执行主动机器人防御。默认情况下,系统会阻止来自高度可疑浏览器的请求,并向可疑浏览器显示默认验证码(或视觉字符识别)质询。
- 默认情况下,阻止来自可疑浏览器的请求设置和复选框已启用。如果您不想阻止可疑浏览器或发送验证码质询,您可以清除阻止可疑浏览器或验证码质询复选框。
您还可以通过单击CAPTCHA 设置来更改 CAPTCHA 响应。(另一项任务说明了在设置 DoS 保护时如何配置 CAPCHA。)
- 在宽限期字段中,输入系统阻止可疑机器人之前等待的秒数。
默认值为300秒。
宽限期允许网页(包括复杂页面,例如包含图像、JS 和 CSS 的页面)有时间被识别为非机器人、接收验证和完全加载,而不会不必要地丢弃请求。
宽限期在客户端通过验证、发生配置更改或由于检测到 DoS 攻击或高延迟而启动主动机器人防御后开始。
- 使用跨域请求设置,指定系统如何验证跨域请求(例如对嵌入图像、CSS 样式表、XML、JavaScript 或 Flash 等非 HTML 资源的请求)。
跨域请求是 Host 和 Referrer 标头中具有不同域的请求。
选项 |
描述 |
允许所有请求 |
如果通过简单质询,则允许请求到达由不同域引用且没有有效 cookie 的非 HTML URL。系统发送一个测试基本浏览器功能的质询,例如 HTTP 重定向和 cookie。 |
允许配置的域;批量验证 |
允许对本节中配置的其他相关内部或外部域的请求,并提前验证相关域。对相关站点域的请求必须包含来自站点域之一的有效 cookie;如果外部域通过了简单的质询,则允许它们。如果您的网站不使用很多域,请选择此选项,然后将它们全部包含在下面的列表中。此外,如果您的网站使用 COR,请选择此选项,然后在“相关站点域”列表中指定 WebSocket 域。 |
允许配置的域;应要求验证 |
允许对本节中配置的其他相关内部或外部域的请求。对相关站点域的请求必须包含来自主域的有效 cookie;如果外部域通过了简单的质询,则允许它们。如果您的网站使用许多域,请选择此选项,并将主域包括在下面的列表中。 |
- 如果您在上一步中选择了允许配置的域选项之一,则需要添加属于您网站一部分的相关站点域,以及允许链接到您网站中的资源的相关外部域。
- 在URL 白名单设置中,添加网站期望接收请求并且您希望系统认为安全的资源 URL。
在表单中键入 URL
/index.html,然后单击
添加。. 支持通配符。
提示:如果您的网站使用 CORS,请将 CORS URL 添加到白名单,否则将被阻止。
系统不会对此列表中的 URL 的请求执行主动机器人防御。
- 单击更新以保存 DoS 配置文件。
您现在已经配置了主动机器人防御,可以防止 DDoS、Web 抓取和暴力攻击(在使用此 DoS 配置文件的虚拟服务器上)。通过创建机器人防御日志配置文件,您可以在查看机器人防御事件日志。系统向首次访问该站点的流量发送 JavaScript 质询。合法流量正确回答挑战,并使用有效 cookie 重新发送请求;然后它被允许访问服务器。系统会丢弃浏览器发送的未回答系统初始 JavaScript 质询的请求(将这些请求视为机器人)。该系统还自动启用机器人签名并阻止已知恶意的机器人。
如果主动机器人检测一直在运行,ASM™ 会在它们设法对系统发起攻击并造成损害之前过滤掉它们。如果仅在攻击期间使用主动 bot 防御,则一旦 ASM 检测到 DoS 攻击,系统就会在攻击期间使用主动 bot 防御。
主动机器人防御与 TPS 和基于压力的检测中指定的主动缓解方法一起使用。任何未被主动缓解方法阻止的请求仍然必须通过主动机器人防御机制才能到达服务器(除非它在 URL 白名单上)。主动机器人防御阻止对不在 URL 白名单上的 CORS(跨源资源共享)URL 的请求。
配置机器人防御日志
在开始配置机器人防御日志之前,请确保您已为您的系统配置了到 Splunk 的远程日志记录。F5 DevCentral 和 Splunk 网站都有关于如何配置 BIG-IP 以将日志发送到 Splunk 平台的信息。不推荐本地记录。
- 在主选项卡上,单击。
记录配置文件屏幕打开。
- 单击现有日志记录配置文件的名称(或创建一个新配置文件,然后将其打开)。
日志配置文件属性屏幕打开。
- 启用机器人防御。
机器人防御选项卡打开。
- 在Bot Defense选项卡中,从下拉列表中选择您预先配置的Remote Publisher 。
- 启用要捕获的日志详细信息。
- 单击更新以保存日志记录配置文件。
- 在主选项卡上,单击。
- 选择要将机器人防御日志记录配置文件关联到的虚拟服务器。
属性选项卡打开。
- 单击选项卡。
- 启用DoS 保护配置文件。
- 在日志配置文件部分,从 ui可用列表中选择机器人防御配置文件并将其移动到已选择列表中。
- 单击更新以保存策略设置。
您可以通过导航到来查看 bot 防御日志。
配置机器人签名检查
如果您需要为您的应用程序创建自定义机器人签名和类别,您应该在配置机器人签名检查之前执行此操作。导航到。否则,您可以使用系统提供的机器人签名和在同一位置列出的类别。由于此防御机制使用反向查找,因此您需要配置 DNS 服务器()和 DNS 解析器()才能工作。
机器人签名检查通常与主动机器人防御一起使用(并且在您使用主动机器人防御时默认启用)。系统执行机器人签名检查,根据其 HTTP 特征将已知机器人识别为合法或恶意。您可以指定是否忽略、报告或阻止某些类别的恶意或良性机器人。如果需要,您还可以禁用特定的机器人签名。
- 在主选项卡上,单击。
DoS 配置文件列表屏幕打开。
- 单击现有 DoS 配置文件的名称(或创建一个新配置文件,然后将其打开),然后单击应用程序安全选项卡。
- 在左侧的 Application Security 下,单击General Settings,并确保Application Security已启用。
屏幕显示附加设置。
- 在左侧,单击机器人签名以显示设置。
- 对于Bot Signature Check设置,如果尚未选择,请选择Enabled 。
- 在机器人签名类别字段中,对于每个类别的机器人,无论是恶意的还是良性的,选择当请求与该类别中的签名匹配时要采取的操作。
选项 |
行动 |
没有任何 |
忽略此类别中的请求。 |
报告 |
在此类别中记录请求。 |
堵塞 |
阻止和报告此类别中的请求。 |
您可以为所有恶意或所有良性类别选择一项操作,或为不同类别选择不同操作。
笔记:这些设置会覆盖Proactive Bot Defense设置。例如,来自任何类别的机器人的请求,如果设置为Block,总是会被阻止。
- 如果需要禁用某些签名,请在Bot Signatures List中,将签名移至Disabled Signatures列表。
- 单击更新以保存 DoS 配置文件。
您已指定如何在系统上执行机器人签名检查。通过将机器人签名与请求进行比较,系统可以识别由不同类别的机器人发出的签名,并将忽略、报告或阻止来自它发现的机器人的请求。
如果使用机器人签名检查,您将希望保持签名最新。您可以将机器人签名(和所有其他签名)配置为自动更新或使用安全更新功能手动更新它们。安全更新会下载最新的和更新的机器人签名和攻击签名。
配置基于 TPS 的 DoS 检测
您可以配置 Application Security Manager™ 以使用基于 TPS 的 DoS 保护根据事务率缓解 DoS 攻击。
- 在主选项卡上,单击。
DoS 配置文件列表屏幕打开。
- 单击现有 DoS 配置文件的名称(或创建一个新配置文件,然后将其打开),然后单击应用程序安全选项卡。
- 在左侧的 Application Security 下,单击General Settings,并确保Application Security已启用。
如果应用程序安全性已禁用,请单击已启用。
屏幕显示附加设置。
- 在左侧的应用程序安全下,单击基于 TPS 的检测。
屏幕显示基于 TPS 的 DoS 检测设置。
- 单击全部编辑。
您还可以单独编辑每个设置,而不是一次编辑它们。
屏幕打开设置进行编辑。
- 对于Operation Mode,选择该选项以确定系统在检测到 DoS 攻击时如何反应。
选项 |
描述 |
透明的 |
在 DoS 报告屏幕上显示有关 DoS 攻击的数据,但不阻止请求或执行任何缓解措施。 |
阻塞 |
对可疑 IP 地址、地理位置、URL 或整个站点应用必要的缓解措施。还在 DoS 报告屏幕上显示有关 DoS 攻击的信息。 |
选择关闭可关闭此类 DoS 检测。
当您选择操作模式时,屏幕会显示其他配置设置。
- 对于Thresholds Mode,选择是让系统自动确定阈值 ( Automatic ) 还是手动设置 DoS 配置文件的阈值 ( Manual )。
如果您选择手动设置值,如何检测攻击者和使用哪种缓解设置中会显示更多字段,您可以调整阈值。对于大多数安装,默认值是合理的。如果使用自动阈值,系统首先使用较宽的范围设置值,然后使用 7 天的历史数据计算值,并将阈值设置为正常活动期间的最高水平(以最大限度地减少误报)。系统每 12 小时更新一次阈值。
- 对于如何检测攻击者和使用哪种缓解措施,指定如何识别和阻止 DoS 攻击。默认情况下,源 IP 地址和 URL 用于检测 DoS 攻击。您可以指定其他检测方法,如果手动设置阈值,请根据需要调整每个设置的阈值。
选项 |
描述 |
按来源 IP |
指定何时将 IP 地址视为攻击者的条件。对于自动阈值,一个阈值用于所有源 IP 地址。 |
按设备 ID |
指定何时将设备视为攻击者的条件。对于自动阈值,所有设备 ID 使用一个阈值。 |
按地理位置 |
指定何时将特定国家视为攻击者。如果使用自动阈值,系统会计算前 20 个地理位置的阈值,为一天中的每个小时设置不同的阈值。因此,上午 9:00 计算的阈值基于上午 8:00-9:00 的数据,并在第二天上午 8:00 使用。 |
按网址 |
指定系统何时将 URL 视为受到攻击。对于自动阈值,一个阈值用于所有 URL。(计算中不包括重 URL。) |
网站范围 |
指定如何确定整个网站何时受到攻击的条件。对于自动阈值,整个站点使用一个阈值。 |
必须至少选择一种缓解方法,然后才能编辑检测设置。如果达到设置中的指定阈值,系统会将每秒请求数限制为历史间隔,并使用此处描述的选定缓解方法。
选项 |
描述 |
客户端完整性防御 |
发送 JavaScript 质询以确定客户端是合法浏览器还是非法脚本。仅在操作模式设置为阻塞时使用。 |
验证码挑战 |
对通过源 IP 地址、地理位置、URL 或站点范围识别为可疑的流量发出验证码质询。 |
请求阻止 |
指定如何以及何时阻止(如果操作模式设置为Blocking)或报告(如果操作模式设置为Transparent)可疑请求。选择阻止所有以阻止所有可疑请求或选择速率限制以减少可疑请求的数量。 |
- 对于“预防持续时间”设置,指定每个缓解步骤花费的时间,直到决定进入下一个缓解步骤。
选项 |
描述 |
升级期 |
指定在防止针对攻击者 IP 地址或受攻击 URL 的攻击时,系统进入下一步之前在每个缓解步骤中花费的最短时间。在 DoS 攻击期间,系统会在此处为启用的缓解方法配置的时间内执行攻击防护。如果在这段时间之后攻击没有停止,系统将执行下一个启用的预防步骤。键入 和 之间的1数字3600。默认值为120秒。 |
降级期 |
指定在使用启用的缓解方法重试这些步骤之前,在最终升级步骤中花费的时间。0键入介于(意味着从不重试步骤)和86400秒之间的数字(大于升级周期) 。默认值为7200秒(2 小时)。 |
DoS 缓解会在 2 小时后重置,即使检测标准仍然成立,无论为降级期间设置的值如何。如果攻击仍在发生,则会发生新的攻击并重新开始缓解,重试所有缓解方法。如果将De-escalation Period设置为少于 2 小时,重置会更频繁地发生。
- 单击更新以保存 DoS 配置文件。
您现在已经配置了一个 DoS 配置文件以防止基于客户端的 DoS 攻击(基于 TPS 的检测)。当系统每秒收到太多针对源 IP 地址、设备 ID、URL 或站点范围的请求时,就会被认为是可疑的。如果系统检测到至少一个可疑实体,攻击就会开始。当两分钟内没有可疑实体时,攻击结束。
接下来,您需要将 DoS 配置文件与应用程序的虚拟服务器相关联。您还可以选择在 DoS 配置文件中配置基于压力的检测、重型 URL 保护或主动机器人防御。
配置基于行为和压力的 DDoS 保护
您可以配置 Application Security Manager™ 以缓解基于服务器延迟和流量行为的第 7 层 DDoS 攻击。行为 DDoS 防护基于对流量和流特征的持续机器学习,可以非常快速地检测到攻击。
- 在主选项卡上,单击。
DoS 配置文件列表屏幕打开。
- 单击现有 DoS 配置文件的名称(或创建一个新配置文件,然后将其打开),然后单击应用程序安全选项卡。
- 在左侧的 Application Security 下,单击General Settings,并确保Application Security已启用。
屏幕显示附加设置。
- 在左侧的应用程序安全下,单击基于行为和压力的检测。
屏幕显示基于行为和压力的 DoS 检测设置。
- 单击全部编辑。
您还可以单独编辑每个设置,而不是一次编辑它们。
屏幕打开设置进行编辑。
- 对于Operation Mode,选择该选项以确定系统在检测到 DoS 攻击时如何反应。
选项 |
描述 |
透明的 |
在 DoS 报告屏幕上显示有关 DoS 攻击的数据,但不阻止请求或执行任何缓解措施。 |
阻塞 |
对可疑 IP 地址、地理位置、URL 或整个站点应用必要的缓解措施。还在 DoS 报告屏幕上显示有关 DoS 攻击的信息。 |
选择关闭可关闭此类 DoS 检测。
当您选择操作模式时,屏幕会显示其他配置设置。
- 对于Thresholds Mode,选择是让系统自动确定阈值 ( Automatic ) 还是手动设置 DoS 配置文件的阈值 ( Manual )。
如果您选择手动设置值,则“基于压力的检测和缓解”设置中会显示更多字段,并且您可以调整阈值。对于大多数安装,默认值是合理的。如果使用自动阈值,系统首先使用较宽的范围设置值,然后使用 7 天的历史数据计算值,并将阈值设置为正常活动期间的最高水平(以最大限度地减少误报)。此后,系统每 12 小时更新一次阈值。
- 对于基于压力的检测和缓解,指定如何识别和阻止 DoS 攻击。默认情况下,启用源 IP 地址和 URL 以检测 DoS 攻击。您可以指定其他检测方法,如果手动设置阈值,请根据需要调整每个设置的阈值。
选项 |
描述 |
按来源 IP |
指定何时将 IP 地址视为攻击者的条件。系统为访问最多的源 IP 地址计算一个自动阈值,并为其余的计算另一个阈值。 |
按设备 ID |
指定何时将设备视为攻击者的条件。对于自动阈值,为访问频繁的设备 ID 计算一个阈值,为其余的计算另一个阈值。 |
按地理位置 |
指定何时将特定国家视为攻击者。如果使用自动阈值,系统会计算前 20 个地理位置的阈值,为一天中的每个小时设置不同的阈值。因此,上午 9:00 计算的阈值基于上午 8:00-9:00 的数据,并在第二天上午 8:00 使用。 |
按网址 |
指定系统何时将 URL 视为受到攻击。对于自动阈值,为访问频繁的 URL 计算一个阈值,为其余的计算另一个阈值。(计算中不包括重 URL。) |
网站范围 |
指定如何确定整个网站何时受到攻击的条件。对于自动阈值,在站点范围内使用一个阈值。 |
必须至少选择一种缓解方法,然后才能编辑检测设置。如果达到设置中的指定阈值,系统会将每秒请求数限制为历史间隔,并使用此处描述的选定缓解方法。这些方法不适用于行为 DoS。
选项 |
描述 |
客户端完整性防御 |
发送 JavaScript 质询以确定客户端是合法浏览器还是非法脚本。仅在操作模式设置为阻塞时使用。 |
验证码挑战 |
对通过源 IP 地址、地理位置、URL 或站点范围识别为可疑的流量发出验证码质询。 |
请求阻止 |
指定如何以及何时阻止(如果操作模式设置为Blocking)或报告(如果操作模式设置为Transparent)可疑请求。选择阻止所有以阻止所有可疑请求或选择速率限制以减少可疑请求的数量。 |
- 对于行为检测和缓解设置,指定如何缓解基于行为发现的 DDoS 攻击。
选项 |
描述 |
不良行为者行为检测 |
让系统通过检查流量行为和异常检测来识别不良行为者的 IP 地址。 |
请求签名检测 |
检查请求并创建行为签名,描述在系统已识别的攻击中发现的模式。仅当您想在让系统使用之前验证系统生成的签名是否有效时,才选择使用批准的签名。 |
减轻 |
指定对使用行为 DoS 发现的攻击执行的缓解级别。
- 保守保护:如果启用了不良行为者行为检测,则会根据异常检测置信度和服务器运行状况减慢并限制来自异常 IP 地址的请求。如果启用了请求签名检测,则阻止与行为签名匹配的请求。
- 标准保护:如果启用了不良行为检测,则会根据异常检测置信度和服务器运行状况减慢来自异常 IP 地址的请求。对来自异常 IP 地址的请求进行速率限制,并在必要时根据服务器运行状况对所有请求进行速率限制。限制来自异常 IP 地址的并发连接数,并在必要时根据服务器运行状况限制所有并发连接数。如果启用了请求签名检测,则阻止与行为签名匹配的请求。
- 积极保护:如果启用了不良行为者行为检测,则会执行所有标准保护以及主动执行所有保护操作(甚至在攻击之前)。增加保护技术的影响。如果启用了请求签名检测,则阻止与行为签名匹配的请求。增加阻塞请求的影响。
- 无缓解:学习和监控流量行为,但不采取任何措施。
|
- 对于“预防持续时间”设置,指定每个缓解步骤花费的时间,直到决定进入下一个缓解步骤。
选项 |
描述 |
升级期 |
指定在防止针对攻击者 IP 地址或受攻击 URL 的攻击时,系统进入下一步之前在每个缓解步骤中花费的最短时间。在 DoS 攻击期间,系统会在此处为启用的缓解方法配置的时间内执行攻击防护。如果在这段时间之后攻击没有停止,系统将执行下一个启用的预防步骤。键入 和 之间的1数字3600。默认值为120秒。 |
降级期 |
指定在使用启用的缓解方法重试这些步骤之前,在最终升级步骤中花费的时间。0键入介于(意味着从不重试步骤)和86400秒之间的数字(大于升级周期) 。默认值为7200秒(2 小时)。 |
DoS 缓解会在 2 小时后重置,即使检测标准仍然成立,无论为降级期间设置的值如何。如果攻击仍在发生,则会发生新的攻击并重新开始缓解,重试所有缓解方法。如果将De-escalation Period设置为少于 2 小时,重置会更频繁地发生。
- 单击更新以保存 DoS 配置文件。
您现在已配置 DoS 配置文件以根据服务器运行状况和/或行为 DoS 自动阻止 DoS 攻击。BIG-IP
®系统监控服务器运行状况并根据第 7 层统计数据(包括 TPS、待处理事务、请求丢弃率等)估计服务器负载。如果系统检测到潜在的攻击条件,则缓解措施会在攻击开始数秒后开始工作(取决于您选择的行为保护级别)。
注意:如果使用基于压力或行为的 DoS 保护,系统可能会在运行时故障(例如后端服务器关闭)或配置问题(例如系统没有池或池没有池成员)。
缓解过程从可疑 IP 地址列表开始,并减慢可疑客户端的速度。该系统还可以执行入口速率整形。可疑客户端被标记为第 7 层行为分析的结果。
接下来,将 DoS 配置文件与应用程序的虚拟服务器相关联。您还可以选择在您的 DoS 配置文件中配置基于 TPS 的检测、主动机器人防御或重型 URL 保护。
配置重 URL 保护
要使用重 URL 保护,F5 建议您在 DoS 配置文件中配置基于压力的异常设置。这样,当没有其他高容量攻击正在进行时,系统可以检测到对大量 URL 的低容量攻击。此外,您必须在 DoS 配置文件中的基于 TPS 的异常或基于压力的异常设置中启用至少一种基于 URL 的预防策略方法。
您可以配置 Application Security Manager™ (ASM) 以防止对重型 URL 的 DoS 攻击。重 URL 是您的应用程序网站上的 URL,在某些条件下可能会消耗大量资源。通过跟踪可能很重的 URL,您可以在响应延迟超过特定阈值之前缓解对这些 URL 的 DoS 攻击。
- 在主选项卡上,单击。
DoS 配置文件列表屏幕打开。
- 单击现有 DoS 配置文件的名称(或创建一个新配置文件,然后将其打开),然后单击应用程序安全选项卡。
- 在左侧的 Application Security 下,单击General Settings,并确保Application Security已启用。
屏幕显示附加设置。
- 在 General Settings 中的Heavy URL Protection旁边,单击Edit。
- 要让系统自动检测繁重的 URL,请选择如果延迟高于此阈值的事务部分高于此站点的正常情况,则认为 URL 被视为繁重,并在必要时调整延迟阈值。
默认值为1000毫秒。
系统通过测量延迟尾部比率来检测重 URL,延迟尾部比率是延迟始终大于阈值的事务数。
- 如果您预计某些 URL 有时会很重(具有高延迟),请将它们添加到“配置重 URL 列表”设置中:
- 在表单中键入每个 URL /query.html。此列表中的 URL 可能包含通配符,例如/product/*.
- 以毫秒为单位键入您希望 URL 被视为重的阈值。
- 单击Add,根据需要添加任意数量的 URL。
如果您不确定要将哪些 URL 添加到重 URL 列表中,请不要配置此设置,让系统自动检测重 URL。
如果要将通配符 URL 添加到繁重的 URL 列表,还必须将通配符 URL 添加到此屏幕上的URL 模式字段。未添加到 URL 模式的通配符将不会用作通配符。
- 在配置不被自动检测为重 URL 的 URL 列表设置中,键入不考虑重的 URL,然后单击添加。
此列表中的 URL 可能包含通配符,例如/product/*.
- 单击更新以保存 DoS 配置文件。
您现在已经配置了一个包含重 URL 保护的 DoS 配置文件。重 URL 是基于在某些条件下达到更高的延迟来检测的。ASM 跟踪服务器延迟的概率分布,称为重尾。
要验证自动检测,您可以定期查看 URL 延迟报告(),以检查您使用的延迟阈值是否接近所有流量的延迟直方图列中的值。您应该设置延迟阈值,以便大约 95% 的虚拟服务器请求具有较低的延迟。通过查看 URL 延迟报告并按延迟对列出的 URL 进行排序,您可以确保在 DoS 配置文件中列出了您预计会很重的 URL。此外,如果系统检测到过多(或过少)重 URL,您可以增加(或减少)延迟阈值。
在 DoS 攻击期间记录流量
如果您启用了 DoS 保护,您可以将系统配置为在 DoS 攻击期间记录流量。通过以 TCP 转储的形式查看记录的流量,您可以诊断攻击向量和攻击者,观察攻击是否以及如何缓解,并确定是否需要更改 DoS 保护配置。
- 在主选项卡上,单击。
DoS 配置文件列表屏幕打开。
- 单击现有 DoS 配置文件的名称(或创建一个新配置文件,然后将其打开),然后单击应用程序安全选项卡。
- 在左侧的 Application Security 下,单击General Settings,并确保Application Security已启用。
屏幕显示附加设置。
- 在左侧的应用程序安全下,单击记录流量。
- 对于Record Traffic during Attacks,单击Edit,然后选中Enabled复选框。
屏幕显示其他配置设置。
- 对于Maximum TCP Dump Duration,单击Edit,然后键入系统在 DoS 攻击期间记录流量的最大秒数(从 1 到 300)。
默认值为30秒。
- 对于最大 TCP 转储大小,键入 TCP 转储允许的最大大小(从 1 到 50)。
当达到最大大小时,转储完成。默认值为10MB。
- 对于TCP Dump Repetition,指定在 DoS 攻击期间执行 TCP 转储的频率:
- 要在攻击期间记录一次流量,请选择每次攻击转储一次。
- 要在攻击期间定期记录流量,请选择之后重复转储,然后输入完成 TCP 转储后开始下一次转储前等待多长时间的秒数(1 - 3600 之间)。
- 单击更新以保存 DoS 配置文件。
当系统检测到 DoS 攻击时,它会执行 TCP 转储以记录发生攻击的虚拟服务器上的流量。这些文件位于系统上的/shared/dosl7/tcpdumps中。文件名的格式为:<yyyy_mm_dd_hh:mm:ss>-<attack_ID>-<seq_num>.pcap,包括转储开始的时间、日志和报告中的攻击 ID,以及自攻击开始以来 TCP 转储的数量。如果正在记录的流量是 SSL 流量,它会被加密记录。
如果使用 F5 支持,您可以将 TCP 转储文件收集到 QuickView 文件中,以便支持人员帮助确定 DoS 攻击的原因,并推荐防止未来攻击的方法。
为 DoS 保护配置 CAPTCHA
您可以将 CAPTCHA 质询配置为基于 TPS 的 DoS 检测、基于行为和压力的 DoS 检测的缓解策略的一部分,或作为主动机器人防御的一部分。验证码(或视觉字符识别)质询确定客户端是人类还是非法脚本。
- 在主选项卡上,单击。
DoS 配置文件列表屏幕打开。
- 单击现有 DoS 配置文件的名称(或创建一个新配置文件,然后将其打开),然后单击应用程序安全选项卡。
- 在左侧的 Application Security 下,单击General Settings,并确保Application Security已启用。
屏幕显示附加设置。
- 在左侧的应用程序安全下,选择一个选项来配置基于 TPS、基于行为和压力或主动机器人防御,并选择 CAPTCHA 作为缓解方法之一。
- 对于基于 TPS 的检测,在如何检测攻击者和使用哪种缓解设置中,编辑源 IP、设备 ID、地理位置、URL 或站点范围的缓解,然后选择验证码挑战。
- 对于基于行为和压力的检测,在基于压力的检测和缓解设置中,编辑源 IP、设备 ID、地理位置、URL 或站点范围的缓解,然后选择验证码挑战。
- 对于Proactive Bot Defense,在阻止来自可疑浏览器的请求设置中,选择CAPTCHA Challenge以挑战可疑的机器人。
- 要自定义系统作为质询发送给可疑用户的验证码响应,请单击验证码设置。
验证码设置链接仅在您选择验证码挑战后可用。
应用程序安全常规设置区域打开并显示验证码响应。
- 在CAPTCHA Response设置中,指定系统作为质询发送给用户的文本。
注意:此设置仅在选择一个或多个 CAPTCHA Challenge 选项时出现。
- 从第一个响应类型列表中,选择自定义。
- 编辑First Response Body字段中的文本 (HTML) 。
您可以在质询或响应中使用以下变量。
多变的 |
利用 |
%DOSL7.captcha.image% |
以数据 URI 格式显示验证码图像。 |
%DOSL7.captcha.change% |
显示更改验证码质询图标。 |
%DOSL7.captcha.solution% |
显示解决方案文本框。 |
%DOSL7.captcha.submit% |
显示提交按钮。 |
- 单击显示以查看它的外观。
- 在CAPTCHA Response设置中,指定系统在用户未能正确响应 CAPTCHA 质询时发送给用户的文本。
- 如果要更改文本,请从“失败响应类型”列表中选择“自定义”。
- 如果自定义文本,请编辑“失败响应正文”字段中的文本。
您可以在文本中使用相同的变量来发送第二个质询。
- 单击显示以查看它的外观。
- 单击更新以保存 DoS 配置文件。
您现在已经为潜在的 DoS 攻击者配置了一个验证码挑战,以帮助过滤掉机器人。系统仅在客户端会话的第一个请求时发送字符识别质询。如果正确解决,则将请求发送到服务器。会话中的后续请求不包括挑战。如果客户端第一次质询失败,则发送验证码响应。如果这也失败了,客户端将根据 DoS 配置文件中选择的缓解方法进行处理。
将 DoS 配置文件与虚拟服务器相关联
您必须首先单独创建 DoS 配置文件,才能为应用程序、DNS 协议或 SIP 协议配置拒绝服务保护。对于应用程序级别的 DoS 保护,虚拟服务器需要 HTTP 配置文件(例如默认的 http)。
您向虚拟服务器添加拒绝服务保护以提供增强的 DoS 攻击保护,并跟踪 BIG-IP ®系统上的异常活动。
- 在主选项卡上,单击。
虚拟服务器列表屏幕打开。
- 单击要修改的虚拟服务器的名称。
- 在菜单栏上,从“安全”菜单中,选择“策略”。
- 要启用拒绝服务保护,请从DoS 保护配置文件列表中选择已启用,然后从配置文件列表中选择要与虚拟服务器关联的 DoS 配置文件。
- 单击更新以保存更改。
DoS 保护现已启用,并且 DoS 保护配置文件与虚拟服务器相关联。
实施结果
完成此实施中的步骤后,您已配置 Application Security Manager™ (ASM) 以防止 L7 DoS 攻击。如果使用主动 bot 防御,ASM™ 可以防止 DDoS、Web 抓取和暴力攻击(在使用此 DoS 配置文件的虚拟服务器上)在攻击损害系统之前进行。根据配置,系统还可以根据客户端每秒事务数 (TPS)、服务器延迟或两者检测 DoS 攻击。
在基于TPS的检测模式下,如果历史间隔内的交易率的比例大于TPS增加的百分比,则系统认为URL受到攻击,IP地址或国家可疑,或者可能是整个网站值得怀疑。
在压力检测模式下,如果延迟增加且至少有一个可疑的IP地址、国家、URL或重度URL,系统认为该URL受到攻击,IP地址或国家可疑,或者可能整个网站都值得怀疑。
如果您启用了重 URL 保护,系统会跟踪消耗高于平均资源的 URL,并减少流向这些 URL 的流量。
如果您选择阻止操作模式,系统会对可疑 IP 地址、URL 或地理位置应用必要的缓解步骤,或在站点范围内应用它们。如果使用透明操作模式,系统会报告 DoS 攻击,但不会阻止。
如果您使用 iRules ®自定义对 DoS 攻击的反应,当系统根据配置的条件检测到 DoS 攻击时,它会触发 iRule 并按照 iRule 代码中指定的方式响应攻击。流量流向系统后,您可以检查是否阻止了 DoS 攻击,并通过查看 DoS 事件日志和报告进行调查。
文章链接: https://www.mfisp.com/8422.html
文章标题:防止对应用程序的DoS攻击
文章版权:梦飞科技所发布的内容,部分为原创文章,转载请注明来源,网络转载文章如有侵权请联系我们!
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。