Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

IDP 策略的攻击对象和对象组

本主题介绍有关 IDP 攻击对象和组的详细信息。它解释了如何创建、修改和使用攻击对象和组来保护网络免受各种威胁和漏洞的侵害。这确保了强大的安全措施到位。

攻击对象、应用签名对象和服务对象用于定义 IDP 策略规则。作为对新漏洞的响应,瞻博网络会定期在瞻博网络网站上提供包含攻击数据库更新的文件。您可以下载此文件来保护您的网络免受新威胁的侵害。这些攻击对象和组旨在检测网络流量中的已知攻击模式和协议异常。您可以在 IDP 策略规则中将攻击对象和组配置为匹配条件。

有关更多信息,请参阅以下主题:

了解我们解决已知和未知漏洞的方法

本主题包含以下部分:

已知漏洞

已知漏洞是指互联网安全社区中记录的漏洞。互联网安全社区由多个安全组织、安全分析师和安全论坛组成。安全社区不断发现和分析新的攻击,并通过互联网交换这些信息。通过这种方式,他们可以快速定位、识别并真正了解攻击。

一些安全公告包含实际的攻击代码。您可以使用攻击信息和攻击代码来捕获数据包信息和服务上下文。您可以使用此信息创建自定义签名攻击对象。

遗憾的是,大多数公告不会在攻击描述中发布攻击代码。如果您无法获取攻击代码,请仔细阅读公告并尝试重建攻击数据包的基础知识。

谨慎:

请记住隔离从未知来源获取的代码。

以下组织活跃于安全社区中,是查找攻击信息的良好资源:

  • NVD - 国家漏洞数据库 (http://nvd.nist.gov)。使用安全内容自动化协议 (SCAP) 表示的美国政府漏洞管理数据存储库。

  • SANS - 系统管理员、审计、网络、安全机构 (www.sans.org)。提供安全警报的信息安全研究、认证和教育组织。还主持 http://www.incidents.org 的互联网风暴中心 (ISC)。

  • CVE - 通用漏洞披露 (http://cve.mitre.org)。漏洞和其他信息安全暴露的标准化列表。

  • BugTraq (http://securityfocus.com/archive/1)。由 Security Focus 托管的主持邮件列表,用于讨论和宣布计算机安全漏洞。

  • CERT 协调中心 (http://www.cert.org)。联邦政府资助的安全警报组织,负责提供安全建议。

  • 数据包风暴安全 (http://packetstormsecurity.nl)。一个由安全专业人员组成的非营利组织,通过安全新闻、公告、论坛和攻击代码提供安全信息。

  • Metasploit (http://www.metasploit.com)。Metasploit 为执行渗透测试、IDS 签名开发和漏洞利用研究提供了有用的信息。

  • FrSIRT - 法国安全事件响应团队 (http://www.frsirt.com)。FrSIRT是一家独立的安全研究机构,提供安全咨询以及实时漏洞警报和通知服务。

  • ISS - 互联网安全系统 (http://www.iss.net)。一家提供警报和互联网威胁级别的互联网安全公司。

未知漏洞

未知漏洞是指互联网安全社区公告中尚未记录的漏洞。在这些情况下,在生产环境中生成的 IDP 系列探查器、防火墙或 IDP 安全事件日志会提醒您注意可疑活动和异常流量。在生产环境中,您将使用数据包日志记录工具捕获数据包和服务上下文信息,以便以后在实验室中进行分析和试验。

测试自定义攻击对象

我们建议使用以下工作流来测试自定义攻击对象。请注意,以下过程包含常规步骤,适用于熟悉这些任务的专家用户。

要测试自定义攻击对象,请执行以下作:

  1. 创建新的安全策略和新的 IDP 规则库规则,其中仅包含要测试的自定义攻击对象。启用日志记录和数据包日志记录。
  2. 将策略推送到 IDP 系列实验室设备。
  3. 从攻击者计算机,重现针对受害者计算机的攻击。
  4. 使用 Security Director 日志查看器查看流量是否按预期生成日志。

如果测试失败,请查看攻击公告、协议 RFC 以及攻击代码或数据包捕获,以确定可帮助您微调设置的其他信息。需要调整的最常见问题是 DFA 表达式的语法。

创建签名攻击对象

签名攻击对象是一种您希望系统检测到的模式。使用 DFA 表达式来表示模式。提供了可以设置的所有其他签名属性(例如服务或协议上下文、方向和其他约束),以便优化系统在检测模式和消除误报方面的性能。通常,您希望调整签名攻击对象的设置,以便系统在可能发生的每个上下文中查找它,而不是在其他上下文中查找它。

要配置签名攻击对象,请执行以下作:

  1. 在“对象管理器”中,选择“ 攻击对象”>“IDP 对象”
  2. 单击 “自定义攻击 ”选项卡。
  3. 单击“+”图标以显示“自定义攻击”对话框。
  4. 配置攻击对象设置。 表 1 提供了完成设置的指南。
    表 1:“自定义攻击”对话框:“常规选项卡设置”

    设置

    描述

    名字

    UI 中显示的名称。

    提示:

    将攻击使用的协议作为攻击名称的一部分。

    描述

    (选答)有关攻击的信息。尽管在创建新的攻击对象时,描述是可选的,但它可以帮助您记住有关攻击的重要信息。例如,查看预定义攻击的攻击描述。

    严厉

    信息、警告、次要、主要或严重。致命攻击是指试图使服务器崩溃或控制网络的尝试。

    • 严重 - 包含与试图逃避检测、导致网络设备崩溃或获得系统级权限的漏洞相匹配的攻击对象。

    • 信息 - 包含与正常无害流量匹配的攻击对象,其中包含 URL、DNS 查找失败、SNMP 公共社区字符串和点对点 (P2P) 参数。您可以使用信息性攻击对象来获取有关您的网络的信息。

    • 主要 - 包含与试图破坏服务、获得对网络设备的用户级访问权限或激活先前加载在设备上的特洛伊木马的漏洞相匹配的攻击对象。

    • 次要 - 包含与漏洞相匹配的攻击对象,这些漏洞检测试图通过目录遍历或信息泄漏访问重要信息的侦察工作。

    • 警告 — 包含与试图获取非关键信息或使用扫描工具扫描网络的漏洞相匹配的攻击对象。

    信息攻击是危险性最低的,通常由网络管理员用来发现其自身安全系统中的漏洞。

    类别

    预定义类别或新类别。使用此类别对攻击对象进行分组。在每个类别中,攻击对象按严重性分组。例如:FTP、TROJAN、SNMP。

    关键字

    可用于搜索日志记录和排序的唯一标识符。关键字应与攻击和攻击对象相关。

    推荐

    指示此攻击对象属于风险最高的攻击对象集。稍后,将此攻击对象添加到动态组时,可以指定是否仅包含建议的攻击对象。

    • 是 - 将瞻博网络推荐的预定义攻击添加到动态组中。

    • 否 - 指定动态攻击组中不推荐的攻击对象。

       

    检测性能

    指定此筛选器可过滤掉性能缓慢的攻击对象。您可以使用此过滤器仅根据性能影响选择适当的攻击。

    选择一个选项:

    • 高 - 添加易受攻击的高性能冲击攻击对象。签名对性能的影响很高7 到高 9,其中应用识别速度很慢。

    • 中等 - 添加易受攻击的中等性能冲击攻击对象。签名对性能的影响为中等4 到中等6,其中应用识别正常。

    • 低 - 添加易受攻击的低性能冲击攻击对象。签名对性能的影响从低 1 到低 3 不等,此时应用识别速度更快。

    • Unknown - 默认情况下将所有攻击对象设置为 Unknown。当您根据网络流量微调 IPS 时,您可以更改此设置以帮助您跟踪性能影响。签名对性能的影响为 0 = 未知,其中应用标识也是未知。

  5. 单击 “常规 ”选项卡。
  6. 在“攻击版本”下,单击“+”图标以显示“新建攻击”向导。
  7. 在“目标平台和类型”页面上,选择设备平台和攻击类型。攻击类型如 表2 所示。
    表 2:攻击对象类型

    类型

    描述

    签名

    使用状态攻击签名(一种始终存在于攻击的特定部分中的模式)检测已知攻击。

    状态式签名攻击对象还包括用于实施攻击的协议或服务,以及攻击发生的上下文。

    如果您知道用于已知攻击的确切攻击签名、协议和攻击上下文,请选择此选项。

    复合攻击

    检测使用多种方法利用漏洞的攻击。此对象将多个签名或协议异常组合到单个攻击对象中,在将流量识别为攻击之前,强制流量匹配复合攻击对象内的所有组合签名或异常。

    通过组合甚至指定签名或异常必须匹配的顺序,您可以非常具体地了解在 IDP 引擎将流量识别为攻击之前必须发生的事件。

    如果您需要检测使用多个良性活动来攻击您的网络的攻击,或者如果您希望在攻击被视为恶意攻击之前强制执行特定的事件序列,请选择此选项。

  8. 选择 “签名” ,然后单击 “下一步”。
  9. 在“自定义攻击 - 常规属性”页面上,配置其他设置。 表 3 提供了完成设置的指南。
    表 3:自定义攻击 - 常规属性

    财产

    描述

    签名详细信息

    捆绑

    服务 – 如果您能够通过研究确定服务,请选择 “服务”。稍后在向导中,您可以指定服务上下文。

    IP – 如果您不确定服务,但知道 IP 详细信息,请选择 IP 并指定协议类型编号。

    TCPUDPICMP - 如果您不知道服务上下文但知道协议详细信息,请选择协议。

    对于 TCP 和 UDP 协议类型,请指定端口范围。

    RPC – 如果要检测通过远程过程调用 (RPC) 协议的威胁,请选择此选项并指定程序 ID。

    分布式处理应用程序使用 RPC 远程处理进程之间的交互。当客户端对 RPC 服务器进行远程过程调用时,服务器会使用远程程序进行回复。每个远程程序使用不同的程序号。

    使

    时间绑定属性跟踪签名的重复次数。通过配置攻击的范围和计数,您可以在一段时间内(一分钟)跨会话检测一系列相同的攻击。此方法可用于检测试图猜测身份验证凭据或使系统容量不堪重负以处理数据的暴力攻击。

    服务

    指定攻击用于进入网络的服务。可以选择用于实施攻击的特定服务作为服务绑定。

    例如,假设您选择 DISCARD 服务。丢弃协议是一种应用层协议,其中 TCP/9、UDP/9 描述了丢弃发送到端口 9 的 TCP 或 UDP 数据的过程。

    时间范围

    选择计数发生的范围:

    • 源 IP – 无论目标 IP 地址如何,在指定次数内检测来自源 IP 地址的流量中的签名。

    • 目标 IP – 无论源 IP 地址如何,在指定次数内检测来自目标 IP 地址的流量中的签名。

    • 对等方 – 在指定次数内检测会话的源 IP 地址和目标 IP 地址之间的流量中的签名。

    时间计数

    指定攻击对象在将攻击对象视为与攻击匹配之前,必须在指定范围内检测到攻击的次数。

    范围是从 0 到 4,294,967,295。

    匹配保证

    指定此过滤器以根据攻击在网络上产生误报的频率跟踪攻击对象。

    选择一个选项:

    • — 提供有关经常跟踪的误报事件的信息。

    • — 提供有关偶尔跟踪的误报事件的信息。

    • - 提供有关很少跟踪的误报事件的信息。

    性能影响

    指定此筛选器可过滤掉性能缓慢的攻击对象。您可以使用此过滤器仅根据性能影响选择适当的攻击。

    选择一个选项:

    • - 添加易受攻击的高性能冲击攻击对象。签名对性能的影响很高7 到高 9,其中应用识别速度很慢。

    • 中等 - 添加易受攻击的中等性能冲击攻击对象。签名对性能的影响为中等4 到中等6,其中应用识别正常。

    • - 添加易受攻击的低性能冲击攻击对象。签名对性能的影响从低 1 到低 3 不等,此时应用识别速度更快。

    • Unknown - 默认情况下将所有攻击对象设置为 Unknown。当您根据网络流量微调 IPS 时,您可以更改此设置以帮助您跟踪性能影响。签名对性能的影响为 0 = 未知,其中应用标识也是未知。

    范围

    指定攻击是在会话内匹配还是在会话中的事务之间匹配:

    • session - 允许在同一会话中对对象进行多个匹配。

    • 事务 - 在同一会话中发生的多个事务中匹配对象。

    单击 “下一步”。

  10. 在“自定义攻击 – 攻击模式”页面上,配置模式设置。 表 4 提供了完成设置的指南。
    表 4:自定义攻击 – 攻击模式

    设置

    描述

    模式

    DFA 表达式。以下行总结了 DFA 语法约定。有关详细信息,请参阅有关使用正则表达式编程的标准源。

     

    \B.0.1..00\B

    二进制协议的位级匹配。位掩码的长度必须是 8 的倍数。

    第一个 \B 表示位掩码的开始。最后一个 \B 表示位掩码的结尾。

    小数点 (.) 表示位可以是 0 或 1。

    0 或 1 表示该位置的位必须为 0,或者必须为 1。

    \0 <octal_number>

    用于直接二进制匹配。

    \X<十六进制数字>\X

    用于直接二进制匹配。

    \[<字符集>\]

    对于不区分大小写的匹配。

    .

    匹配任何符号。

    *

    匹配 0 个或多个符号。

    +

    匹配 1 个或多个符号。

    ?

    匹配 0 或 1 符号。

    ()

    表达式分组。

    |

    交替。通常与 () 一起使用。

    示例:以下表达式匹配 dog 或 cat:(dog | cat)。

    []

    字符类。位置括号内的任何显式值都匹配。

    示例:[Dd]ay 匹配 Day 和 Day。

    [<开始>-<结束>]

    字符范围。范围内的任何值(用连字符表示)。您可以混合使用字符类和十六进制范围。

    示例:[AaBbCcDdEeFf0-9]。

    [^<开始>-<结束>]

    否定字符范围。

    示例:[^Dd]ay 匹配 Hay 和 ray,但不匹配 Day 或 day。

    注意:

    要否定整个签名图案,请在图案文本框下选择否定选项。

    \u<string>\u

    Unicode 不敏感匹配。

    \s

    空白。

     

    \

    使用反斜杠对特殊字符进行转义,以便匹配这些字符,而不是作为正则表达式运算符进行处理。

    字符 逃脱

    *

    \*

    (

    \(

    )

    \)

    .

    \.

    +

    \+

    \

    \\

    [

    \0133

    ]

    \0135

    注意:

    由于在不区分大小写的表达式中使用反斜杠与正方括号和右方括号的组合,因此必须将反斜杠与括号字符的八进制代码一起使用。

    否定

    否定攻击模式。

    正则表达式

    输入正则表达式以定义规则以匹配网络上的恶意或不需要的行为。

    例如:对于语法 \[hello\],预期模式是 hello,区分大小写。

    示例匹配可以是:hElLo、HEllO 和 heLLO。

    上下文

    将模式匹配绑定到上下文。

    对于已知服务(如 HTTP),请在第一个框中选择该服务,然后在第二个框中选择您发现的 scio ccapHTTP 上下文,例如 HTTP POST Parsed Param。

    如果无法发现上下文,请在第一个框中选择“ 其他 ”,然后在第二个框中选择以下上下文之一:

    • 数据包 – 检测任何数据包中的模式。

    • 第一个数据包 – 仅检查流的第一个数据包。当流向设置为 any 时,检测器引擎将检查服务器到客户端 (STC) 和客户端到服务器 (CTS) 流的第一个数据包。更少的处理意味着更高的性能。如果您知道该模式出现在会话的第一个数据包中,请选择 第一个数据包

    • 第一个数据包 – 检测在流的第一个数据包之后结束。选择此选项可仅检测流的第一个数据包中的攻击。如果您知道该模式出现在流的第一个数据包中,请选择 “第一个数据包”

    • 流 256 – 重组数据包并在流量流的前 256 个字节内搜索模式匹配。流 256 通常是非 UDP 攻击的最佳选择。当流向设置为 any时,检测器引擎将检查 STC 和 CTS 流的前 256 个字节。如果您知道该模式将出现在会话的前 256 个字节中,请选择 流 256

    • 流 8K 类似 流 256 除了重组数据包并在流量流的前 8192 个字节内搜索模式匹配。

    • 流 1K - 类似流 256 不同,用于重组数据包并在流量流的前 1024 个字节内搜索模式匹配。

    • 线 – 检测特定线中的模式。将此上下文用于面向线路的应用程序或协议(如 FTP)。

    • – 重组数据包并提取数据以搜索模式匹配。但是,IDP 引擎无法识别流上下文的数据包边界,因此会合并多个数据包的数据。仅当没有其他上下文选项包含攻击时,才选择此选项。

    注意:

    如果选择线路、流或服务上下文,则不会为 IP 设置和协议标头字段配置匹配标准。

    方向

    选择检测模式的方向:

    • 客户端到服务器 – 仅检测客户端到服务器流量中的模式。

    • 服务器到客户端 – 仅在服务器到客户端流量中检测模式。

    • 任意 (Any) – 检测任一方向上的模式。

    会话发起方被视为客户端,即使该源 IP 是服务器也是如此。

    添加异常

    异常

    选择一个选项以根据所使用的特定协议的规则集检测连接中的异常或模棱两可的消息。

    协议异常检测的工作原理是查找与协议标准的偏差,这些偏差通常由 RFC 和常见 RFC 扩展定义。

    方向

    指定攻击的连接方向:

    • 客户端到服务器 — 仅在客户端到服务器流量中检测攻击。

    • 服务器到客户端 — 仅在服务器到客户端流量中检测攻击。

    • 任意 — 检测任一方向的攻击。

    使用单个方向(而不是任何方向)可以提高性能,减少误报,并提高检测准确性。

    单击 “下一步”。

  11. 如果选择了线路、流、流 256 或服务上下文,请不要为 IP 设置和协议标头字段配置匹配条件。单击 Finish

    如果您使用的是数据包上下文,则可以通过添加 IP 标志和数据包标头条件来优化匹配,如下表所述。

    提示:

    如果您不确定要匹配的 IP 标志和 IP 字段,请将所有字段留空。如果未设置任何值,IDP 引擎将尝试匹配所有标头内容的签名。

    在“自定义攻击 – IPv4 设置和标头匹配”页面上,配置模式设置。 表 5 提供了完成设置的指南。

    表 5:自定义攻击 - IPv4 设置和标头匹配页面

    设置

    描述

    校验和验证

    根据计算出的校验和验证校验和字段。

    服务类型

    服务类型。常见的服务类型包括:

    • 0000 默认值

    • 0001 成本最小化

    • 0002 最大化可靠性

    • 0003 最大化吞吐量

    • 0004 将延迟降至最低

    • 0005 最大化安全性

    IP 标志

    IP 标志位。

    国际人道法

    Internet 标头长度(以单词为单位)。

    总长度

    IP 数据报的总长度。

    编号

    目标系统用于重组分段数据包的唯一值。

    生存时间

    数据包的生存时间 (TTL) 值。此值表示数据包可以通过的路由器数量。每个处理数据包的路由器都会将 TTL 递减 1;当 TTL 达到 0 时,数据包将被丢弃。

    协议

    攻击中使用的协议。

    攻击设备的 IP 地址。

    目的地

    攻击目标的 IP 地址。

    在“自定义攻击 – IPv6 设置和标头匹配”页面上,配置模式设置。 表 6 提供了完成设置的指南。

    表 6:自定义攻击 - IPv6 设置和标头匹配页面

    设置

    描述

    目的地

    攻击目标的 IP 地址。

    扩展包头

    定义入侵检测服务 (IDS) 的 IPv6 扩展报头。

    流量标签

    启用 IPv6 数据包流标签。

    跳跃限制

    指定路由器可以在路由器播发和所有 IPv6 数据包中使用的最大跃点数。

    下一个标题

    标识紧跟在 IPv6 报头后面的报头的互联网协议类型。

    有效负载长度

    指定 IPv6 数据包有效负载或内容的长度,以八位位组表示。

    标识生成 IPv6 数据包的主机设备或节点上的接口。

    信息流类

    允许源节点或路由器识别 IPv6 数据包的不同等级(或服务质量的优先级)。(此字段替换“IPv4 服务类型”字段。

    在 Custom Attack – TCP packet header 页面上,配置模式设置。 表 7 提供了完成设置的指南。

    表 7:自定义攻击对象:TCP 数据包标头字段

    设置

    描述

    源端口

    攻击设备上的端口号。

    目标端口

    攻击目标的端口号。

    序列号

    数据包的序列号。此数字标识数据相对于整个数据序列的位置。

    ACK 编号

    数据包的 ACK 编号。此编号标识下一个序列号;必须设置 ACK 标志才能激活此字段。

    标头长度

    TCP 报头中的字节数。

    窗口大小

    TCP 窗口大小中的字节数。

    数据长度

    数据有效负载中的字节数。对于 SYN、ACK 和 FIN 数据包,此字段应为空。

    紧急指针

    数据包中的数据是紧急的;必须设置 URG 标志才能激活此字段。

    MSS系列

    启用并指定 TCP 最大分段大小。

    保留

    在 TCP 报头字段中指定三个保留位。

    TCP 标志

    TCP 标头标志。指定 IDP 查找模式匹配项,无论是否设置了 TCP 标志。

    窗口刻度

    指定攻击会话将使用的规模因子。

    在 Custom Attack – UDP header 页面上,配置模式设置。 表 8 提供了完成设置的指南。

    表 8:自定义攻击对象:UDP 报头字段

    设置

    描述

    校验和验证

    根据计算出的校验和验证校验和字段。

    源端口

    攻击设备上的端口号。

    目标端口

    攻击目标的端口号。

    数据长度

    数据有效负载中的字节数。

    在 Custom Attack – ICMP packet header 页面上,配置模式设置。 表 9 提供了完成设置的指南。

    表 9:自定义攻击对象:ICMP 数据包标头字段

    设置

    描述

    校验和验证

    根据计算出的校验和验证校验和字段。

    ICMP 类型

    标识请求或回复功能的主代码。

    ICMP 代码

    标识给定类型中请求或应答功能的辅助代码。

    序列号

    数据包的序列号。此数字标识请求/应答相对于整个序列的位置。

    ICMP ID

    标识号,这是目标系统用于关联请求和答复的唯一值。

    数据长度

    数据有效负载中的字节数。

  12. 单击 Finish

了解预定义的 IDP 攻击对象和对象组

入侵检测和防御 (IDP) 安全包包含预定义的 IDP 攻击对象和 IDP 攻击对象组的数据库,您可以在 IDP 策略中使用这些数据库将流量与已知和未知攻击进行匹配。瞻博网络会定期更新预定义的攻击对象和组,其中包含新发现的攻击模式。

对攻击对象数据库的更新可能包括:

  • 针对现有攻击对象的新描述或严重性

  • 新的攻击对象

  • 删除过时的攻击对象

本主题包含以下部分:

预定义的攻击对象

预定义的攻击对象按字母顺序列出。这些攻击对象具有唯一的名称,可帮助您识别攻击。名称的第一部分表示攻击对象所属的组。例如:

  • FTP:USER:ROOT- 属于 FTP:USER 组。它会检测使用该 root 帐户登录 FTP 服务器的尝试。

  • HTTP:HOTMAIL:FILE-UPLOAD- 属于 HTTP:HOTMAIL 组。它检测附加到通过基于 Web 的电子邮件服务 Hotmail发送的电子邮件的文件。

预定义的攻击对象组

预定义的攻击组列表显示下述类别中的攻击对象。此列表中还提供了一组瞻博网络认为是严重威胁的推荐攻击对象。推荐的攻击对象分为以下几类:

表 10:预定义的攻击对象组

攻击对象组

描述

攻击类型

按类型(异常或签名)对攻击对象进行分组。在每种类型中,攻击对象按严重性分组。

类别

按预定义的类别对攻击对象进行分组。在每个类别中,攻击对象按严重性分组。

操作系统

按其适用的作系统对攻击对象进行组:BSD、Linux、Solaris 或 Windows。在每个作系统中,攻击对象按服务和严重程度分组。

严厉

按分配给攻击的严重性对攻击对象进行分组。IDP 有五个严重级别:严重、主要、次要、警告、信息。在每个严重性中,攻击对象按类别分组。

Web 服务

通过常见的 Web 服务对攻击对象进行组。这些服务按严重性级别分组:警告、严重、主要、次要、信息。

杂项

按性能级别对攻击对象进行分组。在一定程度上影响 IDP 性能的攻击对象归入此类别。

响应

在从服务器流向客户端方向的流量中对对象进行分组攻击。

了解自定义攻击对象

您可以创建自定义攻击对象来检测新的攻击,也可以自定义预定义的攻击对象来满足您网络的独特需求。

要配置自定义攻击对象,请为其指定唯一名称,然后指定其他信息(如一般描述和关键字),以便您更轻松地查找和维护攻击对象。

攻击对象定义中的某些属性对于所有类型的攻击都是通用的,例如攻击名称、描述、严重性级别、服务或应用程序绑定、时间绑定、建议作以及协议或端口绑定。某些字段特定于攻击类型,并且仅可用于该特定攻击定义。

注意:

IDP 功能默认处于启用状态,无需许可证。即使设备上未安装有效的许可证和签名数据库,也可以配置和安装 IDP 策略中的自定义攻击和自定义攻击组。

本主题包含以下部分:

攻击名称

指定对象的字母数字名称。您可能希望在攻击名称中包含攻击使用的协议。

从 Junos OS 15.1X49-D140 版开始,自定义攻击对象名称允许的最大字符数为 60。您可以使用 set security idp custom-attack 命令验证语句。

严厉

指定对您的网络进行攻击的残酷程度。严重性类别,按残酷程度增加的顺序,是信息、警告、次要、主要、严重。关键攻击是最危险的,通常这些攻击会试图使您的服务器崩溃或获得对网络的控制权。信息攻击的危险性最低,通常由网络管理员用来发现其自身安全系统中的漏洞。

服务和应用程序绑定

“服务或应用程序绑定”字段指定攻击用来进入网络的服务。

注意:

在自定义攻击中指定服务或协议绑定。如果同时指定两者,则服务绑定优先。

  • any- 如果不确定服务是否正确,并希望匹配所有服务中的签名,请指定 any 。由于某些攻击使用多个服务来攻击您的网络,因此无论攻击选择哪种服务进行连接,您都可能需要选择 Any 服务绑定来检测攻击。

  • service- 大多数攻击使用特定服务来攻击您的网络。可以选择用于实施攻击的特定服务作为服务绑定。

    有关服务、服务绑定和上下文的列表,请参阅 了解 IDP 自定义攻击对象服务上下文

协议和端口绑定

协议或端口绑定允许您指定攻击用来进入您的网络的协议。您可以指定网络协议的名称,也可以指定协议号。

注意:

在自定义攻击中指定服务或协议绑定。如果同时指定两者,则服务绑定优先。

  • IP — 您可以使用协议号指定任何受支持的网络层协议。 表 11 列出了不同协议的协议号。

    表 11:支持的协议和协议编号

    协议名称

    协议编号

    IGMP

    2

    IP-IP

    4

    EGP

    8

    12

    卫生纸

    29

    IPV6

    41

    路由

    43

    片段

    44

    回复

    46

    GRE

    47

    ESP

    50

    51

    ICMPV6型

    58

    没有

    59

    DSTOPTS公司

    60

    MTP

    92

    ENCAP

    98

    PIM

    103

    补偿

    108

    255

  • ICMP、TCP 和 UDP — 不使用特定服务的攻击可能会使用特定端口攻击您的网络。某些 TCP 和 UDP 攻击使用标准端口进入您的网络并建立连接。

  • RPC - 分布式处理应用程序使用远程过程调用 (RPC) 协议来远程处理进程之间的交互。当客户端对 RPC 服务器进行远程过程调用时,服务器会使用远程程序进行回复;每个远程程序使用不同的程序号。若要检测使用 RPC 的攻击,请将服务绑定配置为 RPC 并指定 RPC 程序 ID。

表 12 显示了密钥协议的示例格式。

表 12:实验方案的示例格式

协议名称

协议编号

描述

ICMP

<Port>ICMP</Port>

指定协议名称。

IP

<Port>IP/protocol-number</Port>

指定网络层协议编号。

RPC

<Port>RPC/program-number</Port>

指定 RPC 程序号。

TCP 或 UDP

  • <Port>TCP </Port>

  • <Port>TCP/port </Port>

  • <Port>TCP/minport-maxport </Port>

对于 TCP 和 UDP 协议,指定端口是可选的。例如,您可以指定以下任何一项:

  • <Port>UDP</Port>

  • <Port>UDP/10</Port>

  • <Port>UDP/10-100</Port>

时间绑定

使用时间绑定为时间绑定自定义攻击对象配置时间属性。Time 属性控制攻击对象如何识别重复一定次数的攻击。通过配置攻击的范围和计数,您可以在一段时间内跨会话检测出一系列相同的攻击。

从 Junos OS 18.4R1 版开始,您可以配置时间绑定自定义攻击的任意两个实例之间的最大时间间隔,最大时间间隔范围为 0 分 0 秒到 60 分 0 秒。在 18.4R1 之前的 Junos OS 版本中,时间绑定攻击的任意两个实例之间的最大时间间隔为 60 秒,攻击触发计数才能达到时间绑定中配置的计数。 interval interval-value 在层次结构中 [edit security idp custom-attack attack-name time-binding] 引入语句以配置自定义时间绑定。

范围

指定攻击计数发生的范围:

  • 源 - 指定此选项以检测来自源地址的攻击指定次数,而不考虑目标地址。这意味着对于给定的攻击,来自源地址的每次攻击都会保留一个阈值。目标地址将被忽略。例如,从源地址ip-a相同但目标地址ip-cip-b不同的两对 (ip-a ip-b) 和 (ip-aip-c) 中检测到异常。则将增量的匹配ip-a项数为 2。假设阈值 or count 也设置为 2,则签名将触发攻击事件。

  • 目标 - 指定此选项以检测发送到目标地址的指定次数的攻击,而不考虑源地址。这意味着对于给定的攻击,对于来自目标地址的每次攻击,都会保留一个阈值。源地址将被忽略。例如,如果从目标地址ip-b相同但源地址ip-a不同的两个不同的对 (ip-a ip-b) 和 (ip-cip-b) 中检测到异常,则 ip-c。则将增量的匹配ip-b项数为 2。假设阈值 or count 也设置为 2,则签名将触发攻击事件。

  • 对等方 - 指定此选项以检测指定次数的会话的源和目标 IP 地址之间的攻击。这意味着阈值适用于一对源地址和目标地址。假设从两个不同的源和目标对 (ip-aip-b) 和 (ip-aip-c) 检测到异常。然后,将每对的匹配数设置为 1,即使两对都有共同的源地址。

计数

计数或阈值 指定攻击对象必须在指定范围内检测到攻击的次数,然后设备才会认为攻击对象与攻击匹配。如果将攻击对象绑定到多个端口,并且攻击对象在不同端口上检测到该攻击,则每个端口上的每次攻击都计为一次单独事件。例如,当攻击对象检测到 先对 TCP/80 ,然后对 TCP/8080进行攻击时,计数为 2。

一旦达到匹配项 count ,每次符合条件的攻击都会使攻击次数增加 1。此计数周期将持续用户定义的持续时间(使用 interval 选项配置),之后循环重复。

间隔

Interval 指定具有时间约束力的自定义攻击的任意两个实例之间的最大时间间隔。时间间隔的范围为 0 秒到 1 小时,默认值为 60 秒。

攻击属性(签名攻击)

签名攻击对象使用状态攻击签名(一种始终存在于攻击的特定部分中的模式)来检测已知攻击。它们还包括用于实施攻击的协议或服务以及发生攻击的上下文。以下属性特定于签名攻击,您可以在配置签名攻击时配置这些属性:

注意:

攻击上下文、流量类型和方向是签名攻击定义的必填字段。

攻击背景

攻击上下文定义签名的位置。如果您了解该服务和特定的服务上下文,请指定该服务,然后指定相应的服务上下文。如果您知道该服务,但不确定特定的服务上下文,请指定以下常规上下文之一:

  • first-data-packet- 指定此上下文以仅在第一个数据包中检测攻击。

  • first-packet—指定此上下文以仅在流的第一个数据包中检测攻击。当攻击对象的流向设置为 any时,设备将检查服务器到客户端和客户端到服务器流的第一个数据包。如果您知道攻击签名出现在会话的第一个数据包中,则选择而不是packet可以first packet减少设备需要监控的流量,从而提高性能。

  • packet- 指定此上下文以匹配数据包中的攻击模式。选择此选项时,还必须指定服务绑定以定义服务标头选项。尽管不是必需的,但指定这些附加参数可以提高攻击对象的准确性,从而提高性能。

  • line- 指定此上下文以检测网络流量中特定行内的模式匹配。

  • normalized-stream- 指定此上下文以检测整个规范化流中的攻击。规范化流是发送信息的多种方式之一。在此流中,数据包中的信息在执行匹配之前会被规范化。假设 www.yahoo.com/sportswww.yahoo.com/s%70orts相同。表示这两个 URL 的规范化形式可能是 www.yahoo.com/sports。选择而不是 normalized stream stream,除非您想要检测某些模式的确切形式。例如,如果要检测确切的模式 www.yahoo.com/s%70orts,请选择 stream

  • normalized-stream256- 指定此上下文以仅在规范化流的前 256 个字节中检测攻击。

  • normalized-stream1k- 指定此上下文以仅在规范化流的前 1024 个字节中检测攻击。

  • normalized-stream-8k- 指定此上下文以仅在规范化流的前 8192 个字节中检测攻击。

  • stream—指定此上下文以重新组合数据包并提取数据以搜索模式匹配。但是,设备无法识别流上下文的数据包边界,因此会合并多个数据包的数据。仅当没有其他上下文选项包含攻击时,才指定此选项。

  • stream256- 指定此上下文以重新组合数据包并在流量流的前 256 个字节中搜索模式匹配。当流向设置为 any时,设备将检查服务器到客户端和客户端到服务器流的前 256 个字节。如果您知道攻击签名将出现在会话的前 256 个字节中,则选择 stream256 而不是 stream 可以减少设备必须监控和缓存的流量,从而提高性能。

  • stream1k- 指定此上下文以重新组合数据包并在流量流的前 1024 个字节中搜索模式匹配。当流向设置为 any时,设备将检查服务器到客户端和客户端到服务器流的前 1024 个字节。如果您知道攻击签名将出现在会话的前 1024 个字节中,则选择 stream1024 instead stream 可以减少设备必须监控和缓存的流量,从而提高性能。

  • stream8k—指定此上下文以重新组合数据包并在流量流的前 8192 个字节中搜索模式匹配。当流向设置为 any时,设备将检查服务器到客户端和客户端到服务器流的前 8192 个字节。如果您知道攻击签名将出现在会话的前 8192 个字节中,则选择 stream8192 而不是 stream 可以减少设备必须监控和缓存的流量,从而提高性能。

攻击方向

您可以指定攻击的连接方向。使用单个方向(而不是 Any)可提高性能,减少误报并提高检测准确性。

  • 客户端到服务器(仅在客户端到服务器流量中检测攻击)

  • 服务器到客户端(仅在服务器到客户端流量中检测攻击)

  • 任何(检测任一方向的攻击)

攻击模式

攻击模式是您要检测的攻击的特征。签名是攻击中始终存在的一种模式;如果存在攻击,则签名也存在。要创建攻击模式,必须首先分析攻击以检测模式(例如代码段、URL 或数据包标头中的值),然后创建表示该模式的语法表达式。您也可以否定模式。否定模式意味着,如果攻击中定义的模式与 not 指定的模式匹配,则认为攻击匹配。

注意:

模式否定仅适用于基于数据包、线路和应用的上下文,而不支持流和规范化流上下文。

协议特定参数

指定数据包标头中存在的某些值和选项。对于不同的协议,这些参数是不同的。在自定义攻击定义中,您只能为以下协议之一(TCP、UDP 或 ICMP)指定字段。虽然,您可以在自定义攻击定义中使用 TCP 或 UDP 定义 IP 协议字段。

注意:

只能为使用数据包或第一个数据包上下文的攻击对象定义标头参数。如果指定了线路、流、流 256 或服务上下文,则无法指定标头参数。

如果您不确定恶意数据包的选项或标记设置,请将所有字段留空,并且入侵检测和防御 (IDP) 会尝试匹配所有标头内容的签名。

表 13 显示了可以为使用 IP 协议的攻击设置的字段和标志。

表 13:IP 协议字段和标志

描述

服务类型

指定服务类型的值。常见的服务类型包括:

  • 0000 默认值

  • 0001 成本最小化

  • 0002 最大化可靠性

  • 0003 最大化吞吐量

  • 0004 将延迟降至最低

  • 0005 最大化安全性

总长度

指定数据包中的字节数值,包括所有报头字段和数据有效负载。

编号

指定目标系统用于重组分段数据包的唯一值。

活动时间

为数据包的生存时间 (TTL) 值指定一个 0–255 范围内的整数值。此值表示数据包可以遍历的设备数量。每个处理数据包的路由器都会将 TTL 递减幅 1度;当 TTL 达到 0 时,数据包将被丢弃。

协议

指定所用协议的值。

输入攻击设备的源地址。

目的地

输入攻击目标的目标地址。

保留位

未使用此位。

更多片段

设置 (1) 时,此选项表示数据包包含更多分段。当取消设置 (0) 时,表示不再保留片段。

不分段

设置 (1) 时,此选项表示无法对数据包进行分段传输。

表 14 显示了数据包标头字段和标志,您可以为使用 TCP 协议的攻击设置这些字段和标志。

表 14:TCP 标头字段和标志

描述

源端口

指定攻击设备上的端口号值。

目标端口

指定攻击目标的端口号值。

序列号

指定数据包序列号的值。此数字标识数据相对于整个数据序列的位置。

ACK 编号

指定数据包的 ACK 编号值。此编号标识下一个序列号;必须设置 ACK 标志才能激活此字段。

标头长度

指定 TCP 报头中的字节数值。

数据长度

指定数据有效负载中的字节数值。对于 SYN、ACK 和 FIN 数据包,此字段应为空。

窗口大小

指定 TCP 窗口大小中的字节数值。

紧急指针

指定紧急指针的值。该值表示数据包中的数据是紧急的;必须设置 URG 标志才能激活此字段。

URG

设置后,紧急标志表示数据包数据紧急。

ACK系列

设置后,确认标志确认收到数据包。

PSH的

设置后,推送标志表示接收方应将当前序列中的所有数据推送到目标应用程序(由端口号标识),而不等待序列中的剩余数据包。

RST

设置后,重置标志将重置 TCP 连接,丢弃现有序列中的所有数据包。

SYN

设置后,SYN 标志表示对新会话的请求。

设置后,final 标志表示数据包传输已完成,可以关闭连接。

R1

未使用此保留位(第 1 位,共 2 位)。

R2

未使用此保留位(第 2 位,共 2 位)。

表 15 显示了数据包标头字段和标志,您可以为使用 UDP 协议的攻击设置这些字段和标志。

表 15:UDP 报头字段和标志

描述

源端口

指定攻击设备上的端口号值。

目标端口

指定攻击目标的端口号值。

数据长度

指定数据有效负载中的字节数值。

表 16 显示了数据包标头字段和标志,您可以为使用 ICMP 协议的攻击设置这些字段和标志。

表 16:ICMP 报头字段和标志

描述

ICMP 类型

指定用于标识请求或应答数据包功能的主代码值。

ICMP 代码

指定辅助代码的值,用于标识给定类型中请求或应答数据包的功能。

序列号

指定数据包序列号的值。此编号标识请求或应答数据包相对于整个序列的位置。

ICMP ID

指定标识号的值。标识号是目标系统用来关联请求和应答数据包的唯一值。

数据长度

指定数据有效负载中的字节数值。

示例签名攻击定义

以下是签名攻击定义示例:

攻击属性(协议异常攻击)

协议异常攻击对象检测违反协议规范(RFC 和常见 RFC 扩展)的未知或复杂攻击。您无法创建新的协议异常,但可以配置新的攻击对象,以控制设备在检测到预定义协议异常时如何处理。

注意:

服务或应用绑定是协议异常攻击的必填字段。

以下属性特定于协议异常攻击。攻击方向和测试条件都是配置异常攻击定义的必填字段。

攻击方向

攻击方向允许您指定攻击的连接方向。使用单个方向(而不是 Any)可提高性能、减少误报并提高检测准确性:

  • 客户端到服务器(仅在客户端到服务器流量中检测攻击)

  • 服务器到客户端(仅在服务器到客户端流量中检测攻击)

  • 任何(检测任一方向的攻击)

测试条件

测试条件是要与异常攻击匹配的条件。瞻博网络支持某些预定义的测试条件。在以下示例中,条件是消息过长。如果消息的大小超过此测试条件的预配置值,则攻击匹配。

示例协议异常攻击定义

以下是协议异常攻击定义示例:

攻击属性(复合或连锁攻击)

复合攻击或链式攻击对象检测使用多种方法利用漏洞的攻击。此对象将多个签名和/或协议异常组合到一个攻击对象中,在将流量识别为攻击之前,强制流量与复合攻击对象内的组合签名和异常模式相匹配。通过组合甚至指定签名或异常必须匹配的顺序,您可以非常具体地了解在设备将流量识别为攻击之前需要发生的事件。

在复合攻击中,必须至少指定 2 个成员(攻击)。在复合攻击中,您最多可以指定 32 个成员。成员可以是签名攻击,也可以是异常攻击。

以下属性特定于复合攻击:

范围

范围允许您指定攻击是在会话内匹配还是在会话中的事务之间匹配。如果指定的服务在单个会话中支持多个事务,则还可以指定匹配是在单个会话上进行,还是可以在会话内的多个事务中进行:

  • 指定 session 以允许同一会话中对象的多个匹配项。

  • 指定 transaction 以在同一会话中发生的多个事务中匹配对象。

次序

使用有序匹配创建一个复合攻击对象,该对象必须按您指定的顺序匹配每个成员签名或协议异常。如果未指定有序匹配,则复合攻击对象仍必须匹配所有成员,但攻击模式或协议异常可能会以随机顺序出现在攻击中。

重置

指定每次在同一会话中检测到攻击时,都会生成新日志。如果此字段设置为, no 则在一个会话中仅记录一次攻击。

表达式(布尔表达式)

使用布尔表达式字段可禁用有序匹配功能。Boolean 表达式字段使用成员名称或成员索引属性。支持以下三个布尔运算符以及括号,这有助于确定优先级:

  • or- 如果任一成员名称模式匹配,则表达式匹配。

  • and- 如果两个成员名称模式都匹配,则表达式匹配。成员以哪个顺序出现并不重要。

  • oand (ordered and)- 如果两个成员名称模式都匹配,并且它们的出现顺序与布尔表达式中指定的顺序相同,则表达式匹配。

假设您创建了五个签名成员,标记为 s1-s5。假设您知道攻击总是包含模式 s1,后跟 或 s2 s3。您也知道攻击总是包含 s4s5,但它们在攻击中的位置可能会有所不同。在这种情况下,您可以创建以下布尔表达式:

注意:

您可以在自定义攻击定义中定义有序匹配或表达式(不能同时定义两者)。

会员索引

成员索引在链式攻击中指定,以唯一标识成员(攻击)。在以下示例中,成员索引用于标识成员 m01m02 定义的表达式:

注意:

定义表达式时,必须为所有成员指定成员索引。

示例复合攻击定义

以下是复合攻击定义示例:

创建复合攻击对象

在以下情况下使用复合攻击对象:

  • 攻击使用多种方法来利用漏洞,独立检查后,各个上下文看起来是良性的。

  • 匹配多个上下文可减少误报。

  • 将签名与协议异常相结合可减少误报。

选择签名攻击对象或预定义异常作为复合对象的“成员”,并使用布尔表达式指定匹配逻辑。

要配置复合攻击对象,请执行以下作:

  1. 按照签名攻击对象的说明配置常规攻击对象属性和参考信息。

    在“目标平台和类型”页上,选择目标平台,选择 “复合攻击”,然后单击 “下一步”。

  2. 在 Custom Attack – General Properties 页面上,配置 表 17 中描述的设置。
    表 17:自定义攻击 - 常规属性

    财产

    描述

    时间绑定

    与签名攻击对象的准则相同。

    单击 “下一步”。

  3. 在“复合成员”页上,指定复合攻击参数并添加成员。 表 18 提供了完成设置的指南。
    表 18.复合攻击参数

    设置

    描述

    范围

    指定攻击是在会话内匹配还是在会话中的事务之间匹配。选择以下选项之一:

    • 会话 (Session) – 允许同一会话中对象的多个匹配项。

    • 事务 – 在同一会话中发生的多个事务中匹配对象。

    重置

    启用此选项可在每次在同一会话中检测到攻击时生成新日志。如果未选择此选项,则每个会话仅记录一次攻击。

    布尔表达式

    输入攻击成员的布尔表达式,用于标识攻击成员的匹配方式。使用以下布尔运算符键入布尔表达式:

    • 或 – 如果任一成员名称模式匹配,则表达式匹配。

    • AND – 如果两个成员名称模式都匹配,则表达式匹配。成员以哪个顺序出现并不重要。

    • OAND – 如果两个成员名称模式都匹配,并且它们的出现顺序与布尔表达式中的顺序相同,则表达式匹配。

    例如,布尔表达式 (s1 OAND s2) OR (s1 OAND s3)) AND (s4 AND s5) 将匹配包含 s1 后跟 s2 或 s3 的攻击,并且在任何位置也包含 s4 和 s5。

    添加成员

    单击 + 图标,选择 签名协议异常,然后填写配置详细信息。

    对于签名成员,指定与签名攻击对象相同的上下文信息。

    对于协议异常成员,请从预定义的协议异常列表中进行选择。

    最佳实践:

    成员的命名约定示例包括:m01、m02、m03 等。建议使用相同的命名约定。

    次序

    启用此选项可创建复合攻击对象,该对象必须按您指定的顺序匹配每个成员签名或协议异常。如果未指定顺序,则复合攻击对象仍必须匹配所有成员,但模式或协议异常可以按任意顺序出现在攻击中。

    复合攻击对象检测使用多种方法利用漏洞的攻击。

    协议绑定

    将检测到攻击的协议绑定。

  4. 单击 Finish

由于签名更新中引入的更改而修改自定义攻击对象

本主题介绍对 HTTP 协议解码器生成的某些服务上下文的更改。从 签名更新 #1972 开始,HTTP 协议解码器不再生成某些上下文。如果您的 IDP 安全策略包含使用已移除上下文的自定义签名,则必须如下所述修改攻击对象定义,以避免策略编译错误。本主题包含以下信息:

参考:已删除的上下文

为了提高性能,HTTP 协议解码器不再生成 表 19 第一列中列出的上下文。查看此表,了解有关替换自定义攻击对象中的上下文的准则。

表 19:HTTP 服务上下文

删除

替换为

指引

http-文本-html-正文

http-文本-html

将使用上下文 http-text-html-body 的签名更改为 http-text-html。无需更改签名图案或其他属性。

  • http-get-url-parsed-param

  • http-post-url-parsed-param

  • http-head-url-parsed-param

  • http-get-url-parsed-param-parsed

  • http-post-url-parsed-param-parsed

  • http-head-url-parsed-param-parsed

结合使用以下上下文:

  • http-request-method

  • http-url-parsed

  • http-variable-parsed

使用复合签名和 Boolean AND 将签名模式分解为多个片段。确保“范围”字段设置为“事务”。

使用 http-request-method 上下文是可选的。可以使用 http-request-method 上下文将检测绑定到 http GET 或 POST 或 HEAD 事务。对于 GET 方法,我们使用模式 \[GET\](不区分大小写 GET)。仅当之前在 Request Method 上记录的匹配结果值得保留时,才使用 http-request-method。如果没有,请省略它以提高性能。如果使用 http-request-method,请首先在复合链中对其进行排序。

使用 http-url 解析的上下文来匹配 URL 中可识别的攻击签名。使用此上下文可以匹配 URL 中显示在变量参数之前的模式,即 URL 中问号 (?) 之前的部分。

使用一个或多个 http-variable 解析的上下文来匹配 URL 变量参数 - 问号 (?) 后面的 URL 部分,通常用与号 (&) 分隔。

示例:替换 HTML 文本中出现的模式的上下文

HTTP 检测引擎生成的每个上下文都会产生性能成本。上下文 http-text-html 和 http-text-html-body 具有相同的目的。减少上下文数量可提高性能。

表 20 显示了 更新 #1972 之前和之后的签名属性。这是一个简单的更改。您只需更改上下文。无需更改图案或其他属性。

表 20.. HTTP 服务上下文:HTML 文本

更新前

更新后

上下文

http-文本-html-正文

http-文本-html

模式

.*<span></span>.*

.*<span></span>.*

示例:替换 URL 中出现的模式的上下文

本节由两部分组成:

与请求方法匹配的签名

修改以前与请求方法 GET、POST 或 HEAD 匹配的自定义攻击对象时,请考虑针对这些请求方法模式的匹配是否对您有效。请记住,生成的每个上下文都会产生性能成本。如果请求方法对您的结果不是必不可少的,请借此机会在没有它的情况下重铸您的签名。

表 21表 22 显示了 更新 #1972 之前的签名和之后的复合签名的属性。此示例保留了对 request 方法的兴趣。

表 21.. HTTP 服务上下文:更新前的请求方法

更新前的签名

范围

上下文

http-get-url-parsed-param

模式

\[/viper/vegaspalms/\].*

表 22.. HTTP 服务上下文:更新后的请求方法

更新后的复合签名

M01

M02

范围

交易

 

上下文

http-request-method

http-url-parsed

模式

\[GET\]

\[/viper/vegaspalms/\].*

匹配 URL 字符串和 URL 变量的签名

通常,将单个模式分解为多个上下文可能会对性能产生积极或消极的影响。在生产网络中部署攻击对象之前,您需要测试更改以了解性能影响。 表 23表 24 中显示的示例将 URL 匹配中断为多个上下文。我们的安全团队已经根据此处描述的建议测试了性能。

表 23:HTTP 服务上下文:更新前的 URL 字符串和变量

更新前的签名

范围

上下文

http-get-url-param-parsed-param

模式

\[/cvs/index[0-9]?\.php\?option=com_content&do_pdf=1&id=1\]

表 24:HTTP 服务上下文:更新后的 URL 字符串和变量

更新后的复合签名

 

M01

M02

M03型

M04系列

范围

交易

     

上下文

http-url-parsed

http-variable-parsed

http-variable-parsed

http-variable-parsed

模式

\[/cvs/index[0-9]?\.php\]

\[option=com_content\]

\[do_pdf=1\]

\[id=1\]

示例:配置复合攻击或链式攻击

此示例说明如何针对特定匹配标准配置复合攻击或链式攻击。可以将复合攻击或链式攻击对象配置为检测使用多种方法利用漏洞的攻击。

要求

开始之前,必须在设备上支持并启用 IDP。

概述

复合攻击对象或链式攻击对象可以将特征和异常组合在一起,形成单个攻击对象。单个攻击对象可以包含:

  • 两个或多个签名

  • 两个或更多异常

  • 签名和异常的组合

复合或连锁攻击对象将多个签名和/或协议异常组合到一个攻击对象中,在将流量识别为攻击之前,强制流量与复合攻击对象内的组合签名和异常模式相匹配。这些对象还用于减少误报并提高检测准确性。它使您能够具体了解在 IDP 将流量识别为攻击之前需要发生的事件。

配置

程序

CLI 快速配置

要快速配置此示例,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,更改详细信息,以便与网络配置匹配,然后将命令复制并粘贴到层 [edit] 级的 CLI 中,然后从配置模式进入 commit

分步过程

下面的示例要求您在各个配置层级中进行导航。有关作说明,请参阅 CLI 用户指南中的在配置模式下使用 CLI 编辑器

要针对特定匹配标准配置复合攻击或链式攻击,请执行以下作:

  1. 创建 IDP 策略。

  2. 将规则库与策略相关联。

  3. 将规则添加到规则库。

  4. 定义规则的匹配标准。

  5. 指定应用程序集名称以匹配规则条件。

  6. 指定攻击对象的匹配攻击对象和攻击对象的名称。

  7. 为规则指定作。

  8. 指定规则的通知或日志记录选项。

  9. 激活 IDP 策略。

  10. 指定自定义攻击的名称。

  11. 设置自定义攻击的严重性。

  12. 设置自定义攻击的攻击类型和应用名称。

  13. 设置定义攻击的范围和顺序。

  14. 为链攻击对象的第一个成员指定名称。

  15. 设置链攻击对象的第一个成员的上下文、模式和方向。

  16. 为链式攻击对象的第二个成员指定名称。

  17. 设置链攻击对象的第二个成员的上下文、模式和方向。

  18. 为链攻击对象的第三个成员指定名称。

  19. 为链式攻击对象的第三个成员指定攻击类型和方向。

  20. 指定 IDP 服务的追踪选项和追踪文件信息。

  21. 指定需要包含在跟踪输出中的事件和其他信息。

结果

在配置模式下,输入 show security idp 命令以确认您的配置。如果输出未显示预期的配置,请重复此示例中的配置说明,以便进行更正。

如果完成设备配置,请从配置模式输入 commit

注意:

进入 commit 配置模式时,配置会在内部进行验证,然后提交。如果有任何错误,提交将失败并报告错误。

验证

要确认链攻击配置工作正常,请执行以下任务:

验证配置

目的

验证链攻击配置是否正确。

行动

在作模式下,输入 show security idp policy-commit-status 命令以检查策略编译或加载状态。

注意:

命令的 show security idp policy-commit-status 输出是动态的,因此此命令没有单个输出。

验证是否按照配置检测到攻击,将流量传递通过设备以触发攻击匹配。例如,输入 show security idp status 命令以检查策略是否已加载。

user@host> show security idp status

输入 show security idp attack table 命令以传递攻击流量,然后验证是否检测到攻击。

注意:

仅当检测到攻击时,命令才会显示输出。

user@host> show security idp attack table

示例:使用动态攻击组和自定义攻击组配置攻击组

此示例说明如何在 IDP 策略中使用动态攻击组和自定义攻击组配置攻击组,以保护 FTP 或 Telnet 服务器。

要求

开始之前,仅当满足以下语句之一为真时,才在设备上安装安全包:

  • 配置动态攻击组。

  • 自定义攻击组包含预定义的攻击或攻击组。

注意:

如果自定义攻击组仅包含自定义攻击,则不需要安全包许可证,也无需在设备上安装安全包。要安装安全包,您需要 IDP 安全包许可证。

概述

IDP 包含大量预定义的攻击对象。要管理和组织 IDP 策略,可以对攻击对象进行分组。一个攻击对象组可以包含两种或多种类型的攻击对象。攻击组分类如下:

  • 动态攻击组 - 包含基于特定匹配条件的攻击对象。在签名更新期间,动态组成员身份将根据该组的匹配条件自动更新。例如,您可以使用动态攻击组过滤器对与特定应用相关的攻击进行动态分组。

  • 自定义攻击组 — 包含在攻击定义中指定的攻击列表。自定义攻击组还可以包含特定的预定义攻击、自定义攻击、预定义攻击组或动态攻击组。自定义攻击组本质上是静态的,因为攻击是在组中指定的。因此,当安全数据库更新时,攻击组不会更改。成员可以是来自签名数据库的预定义攻击或预定义攻击组,也可以是其他自定义攻击和动态攻击组。

在此示例中,我们在 IDP 策略中配置了一个攻击组,以保护 FTP 或 Telnet 服务器免受自定义和动态攻击。

配置

程序

CLI 快速配置

要快速配置此示例,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,更改详细信息,以便与网络配置匹配,然后将命令复制并粘贴到层 [edit] 级的 CLI 中,然后从配置模式进入 commit

分步过程

下面的示例要求您在各个配置层级中进行导航。有关作说明,请参阅 CLI 用户指南中的在配置模式下使用 CLI 编辑器

要使用动态攻击组和自定义攻击组配置攻击组:

  1. 创建 IDP 策略。

  2. 将规则库与策略相关联。

  3. 将规则添加到规则库。

  4. 定义规则的匹配标准。

  5. 指定应用程序集名称以匹配规则条件。

  6. 指定自定义攻击组的匹配项。

  7. 指定动态攻击组的匹配项。

  8. 为规则指定作。

  9. 指定规则的通知或日志记录选项。

  10. 激活 IDP 策略。

  11. 指定自定义攻击的名称。

  12. 设置自定义攻击的严重性。

  13. 设置攻击类型和攻击上下文。

  14. 指定攻击模式。

  15. 指定攻击方向。

  16. 指定自定义攻击组的名称。

  17. 指定属于自定义攻击组的攻击或攻击组列表。

  18. 指定第一个动态攻击组的名称。

  19. 配置筛选器并为筛选器设置类别值。

  20. 指定第二个动态攻击组的名称。

  21. 为第二个动态攻击组配置过滤器,并设置此字段的方向及其值。

  22. 指定 IDP 服务的追踪选项和追踪文件信息。

  23. 指定需要包含在跟踪输出中的事件和其他信息。

结果

在配置模式下,输入 show security idp 命令以确认您的配置。如果输出未显示预期的配置,请重复此示例中的配置说明,以便进行更正。

如果完成设备配置,请从配置模式输入 commit

注意:

进入 commit 配置模式时,配置会在内部进行验证,然后提交。如果有任何错误,提交将失败并报告错误。

验证

验证配置

目的

验证配置是否正确。

行动

在作模式下,输入 show security idp policy-commit-status 命令以检查策略编译或加载状态。

注意:

命令的 show security idp policy-commit-status 输出是动态的,因此此命令没有单一输出。

验证是否按照配置检测到攻击,将流量传递通过设备,这将触发攻击匹配。例如,输入 show security idp status 命令以检查策略是否已加载。

user@host> show security idp status

输入 show security idp attack table 命令以传递攻击流量,然后验证是否检测到攻击。

注意:

仅当检测到攻击时,命令才会显示输出。

user@host> show security idp attack table

自定义攻击对象 DFA 表达式

表 25 提供了匹配攻击模式的语法示例。

表 25:示例:自定义攻击对象正则表达式

语法示例

描述

示例匹配

你好。。\B.0.1..00\B...世界

匹配有两个方面:

必须与位掩码模式匹配:\B.0.0.1.。00\B

必须与位掩码模式前后的字节数(由 .)匹配。

比赛:

你好。。\B.0.11100\B...世界你好..\B.0.10000\B...世界

不匹配:

您好。\B.0.1..00\B.world你好..\B.0.1..11\B...世界

\X01 86 A5 00 00\X

逐字显示五个指定字节的模式。

01 86 答5 00 00

(hello|世界)

hello 或 world 出现一次的模式。

你好

世界

(hello|world)+

hello 或 world 出现一次或多次的模式。

helloworld

世界你好

hellohello

\[你好\]

模式你好,不区分大小写。

你好

你好

你好

\u你好\u

模式你好,Unicode 不敏感。

你好

68656c6c6f

hello\sworld

模式hello world,两个单词之间用空格隔开。

世界您好

[c-e]a(d|t)

带有 c、d 或 e 首字母的图案;中间的字母 a;并以 d 或 t 结尾。

爸爸

[^c-d]a(d|t)

以 c、d 或 e 以外的字母开头的模式;有第二个字母 a;并以 D 或 T 结尾。

时尚

扎德

a*b+c

具有任意数量的字符(包括零)的图案;后跟一个或多个 B 字符;后跟一个 C 字符。

公元前

ABC公司

aaaabbbbc

T[Kk]

以大写字母 T 开头,后跟不区分大小写的 k 的模式。

传统知识

传统知识

([Tt])k

以不区分大小写的 t 开头,后跟小写 k 的模式。

传统知识

传统知识

海[在]

以 Sea 开头,后跟小写 l、m 或 n 的模式。

密封

煤层

肖恩

([B-D])在

以大写字母 B、C 或 D 开头,后跟小写字母 at 的模式。

蝙蝠

达特

\0133\[你好\]\0135

以左括号开头,后跟不区分大小写的 hello,以右括号结尾的模式。此表达式使用 \0 表达式表示以下表达式是八进制代码,然后是左括号 (133) 或右括号 (135) 的八进制代码。

[你好]

[HeLLo]

示例:使用模式否定

您可以使用模式否定来排除已知安全的模式,并与所有其他模式匹配。

例如,假设您正在设计一个攻击对象来检查流向 FTP 服务器的流量。您知道,帐户用户名和密码得到妥善维护,以确保只有授权用户才能访问内部资源。但是,随着网络的发展和新组件的添加,用户帐户可能会激增,从而增加网络对特定组件的访问。在此示例中,您的内部网络上有一台启用了多个用户帐户的 FTP 服务器。为了提高安全性,您需要限制对 FTP 管理员的访问。

为 FTP 服务、ftp-username 上下文和模式 admin创建攻击对象;并选中 Negate 复选框。其结果是一个攻击对象,该对象可以标记除 admin以外的用户的登录尝试。您可以在记录或丢弃匹配流量的规则中使用此攻击对象。

示例:匹配文件扩展名

在此示例中,您希望检测Microsoft Windows 图元文件,这些图元文件使用扩展名 .emf(Windows 增强型图元文件)和 .wmf(Microsoft Windows 图元文件)。

若要匹配以下任一文件类型,请使用简单的 DFA 表达式:

在此表达式中:

  • 句点与星号 (.*) 组合表示必须显示一个或多个字符(通配符匹配)。

  • 反斜杠与句点字符 (\.) 组合表示句点字符已转义(句点出现在模式中)。

  • 表达式 ( ) 开头和结尾的括号表示组。e 和 w 之间的管道字符 (e|w) 表示字符之间的 OR 关系。对于此表达式,e 或 w 必须出现在模式中以匹配此表达式;只有一个人必须在场。

  • 右括号 (\[) 表示所有字符的不区分大小写的匹配的开始,直到右括号 (\]) 出现。

  • 右括号 (\]) 表示不区分大小写的匹配的结束。

示例:Apache Tomcat 拒绝服务攻击

在此示例中,我们假设您有一个运行 Apache Tomcat 的 Web 服务器。您的安全管理员通知您刚刚宣布了 Apache Tomcat 的漏洞,您决定创建一个自定义攻击对象来保护您的网络,直到您可以安排停机时间来修补服务器。

针对漏洞 (http://nvd.nist.gov/nvd.cfm?cvename=CAN-2002-0682) 的 CVE 公告包含以下引文:

从这些信息中,您知道攻击使用 HTTP。现在您必须找到攻击代码。该通报还包括一些链接到有关攻击的更多信息的参考资料。遗憾的是,引用的网页均不包含漏洞利用代码。使用从 CVE 公告中了解到的信息在 Web 上搜索后,您可以在 http://packetstormsecurity.nl/0210-exploits/neuter.c 找到一些漏洞利用代码。复制脚本并将其移动到测试实验室中的攻击者计算机。

要开发此攻击对象,请执行以下作:

  1. 重现攻击以确定攻击上下文、方向和模式。理想情况下,同时使用 scio ccap 和 Wireshark,这样您只需运行一次攻击。
  2. 发现攻击签名的以下元素:
    • 服务。您从 CVE 公告中了解到,该攻击使用 HTTP 协议。查看数据包捕获以确认协议。

    • 上下文。用于 scio ccap 确定是否可以匹配特定服务上下文。在此示例中,签名模式发生在服务上下文 HTTP URL Parsed 中。

    • 模式。您从公告中了解到,攻击是使用 HTTP 协议中被利用的 GET 方法发生的。选择包含 GET 方法的帧以查看数据包该部分的详细信息。您可以快速将签名模式识别为 examples/servlet/AUX

    • 方向。找到启动会话的源 IP。由于此攻击使用 TCP,因此您可以使用 Wireshark 中的“关注 TCP 流”选项快速发现启动会话的源 IP。攻击方向是客户端到服务器。

  3. 创建攻击对象以匹配攻击签名。此示例使用以下正则表达式来匹配签名:

    在此表达式中:

    • 点星组合 (.*) 表示通配符匹配。

    • /examples/servlet/ 部分直接取自数据包捕获。

    • 括号 ( ) 表示一组项目,竖线字符 (|) 表示 OR。这些字符通常一起使用,以指示攻击必须包含组中的一个项目。在此示例中,攻击必须在字符串 /examples/servlet/ 后包含单词 aux、lpt1、con 或 prn。

      请注意,此示例使用组。数据包捕获将签名模式显示为 /examples/servlet/AUX。 AUX 是 Windows 设备。您有充分的理由警惕利用 LPT1、CON 和 PRN 设备的企图。

  4. 测试攻击对象。

列出特定协议的 IDP 测试条件

配置 IDP 自定义攻击时,可以指定特定协议的列表测试条件。要列出 ICMP 的测试条件,请执行以下作:

  1. 列出 ICMP 支持的测试条件,然后选择要配置的条件。支持的测试条件在 CLI 的 [edit security idp custom-attack test1 attack-type anomaly] 层次结构级别上可用。

  2. 配置要为其配置测试条件的服务。

  3. 配置测试条件(不需要指定协议名称)。

  4. 如果完成设备配置,请从配置模式输入 commit

了解 IDP 协议解码器

入侵检测和防御 (IDP) 使用协议解码器通过查找异常并确保满足 RFC 标准来检查协议完整性和协议上下文信息。异常可以是协议的任何部分,例如标头、消息正文或偏离该协议的 RFC 标准的其他单个字段。例如,在 SMTP 的情况下,如果 SMTP 邮件收件人先于 SMTP HELO,则 SMTP 协议中存在异常。

当有协议上下文信息可用时,协议解码器会检查这些上下文中的攻击。例如,对于 SMTP,如果向 user@company.com 发送电子邮件,则 user@company.com 是上下文信息,而 SMTP 邮件是上下文。通过使用协议上下文数据(而不是整个数据包)进行攻击检测,协议解码器提高了整体性能和准确性。

如果配置了与 SMTP 协议解码器检查匹配的规则的策略,则将触发该规则并执行相应的作。

IDP 模块随附一组预配置的协议解码器。这些协议解码器具有默认设置,用于执行各种特定于协议的上下文检查。您可以使用这些默认值,也可以对其进行调整以满足您站点的特定需求。要显示可用协议解码器的列表,请输入以下命令:

有关当前协议解码器集及其默认上下文值的更详细视图,可以查看设备上 /ar/db/idpd/sec-download 文件夹中的detector-capabilities.xml文件。当您下载新的安全包时,您还会收到此文件,其中列出了当前协议和默认解码器上下文值。

示例:UNIX CDE/dtlogin 漏洞

在此示例中,您的网络包括多个运行 UNIX 的用户工作站和服务器。许多 UNIX作系统使用通用桌面环境 (CDE) 作为图形用户界面。您的安全管理员通知您 CDE 的 dtlogin 进程中存在一个新漏洞(dtlogin 进程处理 CDE 的 GUI 登录进程)。

漏洞 (http://www.kb.cert.org/vuls/id/179804) 的 CERT 公告包含以下信息:

从这些信息中,您知道该攻击使用 XDMCP 协议数据包,并在 UDP/177 上运行。现在您必须找到攻击代码。该通报还包括一些链接到有关攻击的更多信息的参考资料。http://lists.immunitysec.com/pipermail/dailydave/2004-March/000402.html,一个引用表明,首先报告攻击的人也编写了一个复制攻击的脚本。获取脚本并将其移动到测试实验室中的攻击者计算机。

要开发此攻击对象,请执行以下作:

  1. 重现攻击以确定攻击上下文、方向和模式。理想情况下,同时使用 scio ccap 和 Wireshark,这样您只需运行一次攻击。
  2. 发现攻击签名的元素:
    • 服务。您从 CERT 公告中了解到,该攻击使用了 XDMCP 协议。查看 Wireshark 中的数据包捕获以确认协议。

    • 上下文。用于 scio ccap 确定是否可以匹配特定服务上下文。在此示例中,IDP 系统不支持 XMCP 服务上下文,并且 的 scio ccap 输出为空。您必须指定攻击的数据包上下文。

    • 模式。利用您对 XDMCP 协议的了解,您可以确定攻击使用非 NUL 字符(十六进制代码 00 1b)来指定连接类型,该类型无效(NUL 字符表示 XDMCP 中的 Internet 连接类型)。若要在签名模式中锚定非 NUL 字符,请将前面的一些字节作为模式的一部分包含在内。在此示例中,您选择使用版本号(十六进制代码 00 01)和请求选项代码(十六进制代码 00 07)锚定非 NUL 字符。完整的攻击模式是 00 01 00 07 后跟 5 个任意类型的字符,后跟第六个字符和一个非 NUL 字符(如上图 00 1b 所示)或一个非 NUL 字符和另一个字符。

    • 方向。找到启动会话的源 IP。在此示例中,您无法确定攻击方向。

  3. 创建攻击对象以匹配攻击签名。使用以下正则表达式匹配签名:

    在此表达式中:

    • \x 表达式表示十六进制值。

    • XDMP 协议中的数字 00 01 00 07 表示版本号(十六进制代码 00 01 和请求选项代码(十六进制代码 00 07)。

    • 五个句点 (.....) 表示任何类型的五个字符。

    • 括号 ( ) 表示一组项目,竖线字符 (|) 表示 OR。这些字符通常一起使用,以指示攻击必须包含组中的一个项目。

    • 左括号和右括号与插入符号 [^ 表示否定。

    • 反斜杠与零 (\0) 组合表示八进制代码。

    • 00 个字符是 NUL 字符的十六进制代码。在此示例中,攻击必须包含一个非 NUL 字符,其前面或后面是另一个字符([^\000] 或 [^\000])。

    • 点星组合 (.*) 表示通配符匹配。在表达式的末尾使用时,通配符指示任何内容都可以跟随指定的表达式。

  4. 测试攻击对象。

示例:检测蠕虫

蠕虫和木马经常绕过防火墙和其他传统安全措施进入网络。在此示例中,您将创建一个自定义攻击对象来检测网络上的 Blaster 蠕虫。

针对 Blaster 蠕虫的 CERT 公告 (http://www.cert.org/advisories/CA-2003-20.html) 提供以下信息:

从这些信息中,您知道该攻击使用了 DCOM 漏洞,这是一个先前发现的安全漏洞。现在您必须找到攻击代码。该通报还包括一些链接到有关攻击的更多信息的参考资料。遗憾的是,引用的网页均不包含漏洞利用代码。使用从 CERT 公告中获悉的信息在 Web 上搜索后,即可在 PacketStorm (http://packetstormsecurity.com/0307-exploits/dcom.c) 上找到漏洞利用代码。

要开发此攻击对象,请执行以下作:

  1. 重现攻击以确定攻击上下文、方向和模式。理想情况下,同时使用 scio ccap 和 Wireshark,这样您只需运行一次攻击。
  2. 发现攻击签名的元素:
    • 服务。您可从 CERT 公告中了解到,该攻击使用了 ICMP,而 IDP作系统不支持其服务上下文。查看数据包捕获以确认协议为 ICMP。

    • 上下文。用于 scio ccap 确定我们是否可以匹配特定服务上下文。在此示例中,IDP 系统不支持 ICMP 服务上下文,并且输出 scio ccap 为空。您必须为攻击指定第一个数据包上下文。

    • 模式。选择 Wireshark 中列出的第一个帧,然后查看第二部分中的信息。因为您知道 ICMP 数据包不应包含数据,所以您可以调查 64 字节的数据有效负载。您可以很容易地看到不规则的有效负载是多个“AA”字符,这可能是代码试图溢出缓冲区。由于此模式在 ICMP 数据包的上下文中很不寻常,因此请选择它作为签名。

    • 方向。找到启动会话的源 IP。在此示例中,您无法确定攻击方向。

  3. 创建攻击对象以匹配攻击签名。在此示例中,我们使用以下正则表达式来匹配签名:

    在此表达式中:

    • \X 表达式指示后面要跟一个十六进制值。

    • 点星组合 (.*) 表示通配符匹配。在表达式的末尾使用时,通配符指示任何内容都可以跟随指定的表达式。

  4. 测试攻击对象。

示例:用于检测利用 HTTP 漏洞的复合签名

某些攻击经过精心设计,在逐个数据包级别上查看时看起来是良性的。对于这些攻击,您可以创建一个复合签名,用于检测多个上下文(服务、非服务或两者)中的多个签名模式。

在此示例中,您有一个使用 Microsoft FrontPage Server 扩展的 Web 服务器。您的安全管理员通知您 FrontPage Server 扩展中存在一个新的缓冲区溢出漏洞。

漏洞 (http://www.securityfocus.com/bid/9007/discussion/) 的 BugTraq 公告包含以下信息:

同时还提供了以下概念验证示例:

此外,还包括指向已编译漏洞的链接。

从这些信息中,您知道攻击使用了 HTTP 协议,并且至少部分攻击使用了 POST 方法。使用指向已编译漏洞的链接获取脚本,并将其移动到测试实验室中的攻击者计算机。

要开发此攻击对象,请执行以下作:

  1. 重现攻击以确定攻击上下文、方向和模式。理想情况下,同时使用 scio ccap 和 Wireshark,这样您只需运行一次攻击。
  2. 发现攻击签名的元素:
    • 服务。您从 BugTraq 公告中了解到,该攻击使用 HTTP 协议。查看数据包捕获并找到 HTTP 协议使用情况。

    • 上下文。用于 scio ccap 确定是否可以匹配特定服务上下文。在此示例中,服务上下文为“HTTP URL 解析”。

    • 模式。您可以快速识别 HTTP 服务中的签名模式 POST /_vti_bin/_vti_aut/fp30reg.dll。

      但是,由于此模式可能会触发误报,因此您还需要确定第二个签名模式,以确保您的规则仅检测到攻击。在这种情况下,第二个签名(在 BugTraq 公告中注明)是 Transfer-Encoding: chunked

    • 方向。找到启动会话的源 IP。在此示例中,两种签名模式的攻击方向都是客户端到服务器。

  3. 创建攻击对象以匹配攻击签名。使用以下正则表达式匹配第一个签名:

    在此表达式中:

    • 右括号 (\[) 表示所有字符的不区分大小写的匹配的开始,直到右括号出现。

    • 模式 /_vti_bin/_vti_aut/fp30reg 是直接字符匹配。

    • 反斜杠与句点 (\.) 组合表示句点已转义(句点出现在模式中)。

    • 右括号 (\]) 表示不区分大小写的匹配结束。

    • 句点与星号字符 (.*) 组合表示必须出现一个或多个字符。

  4. 添加第二个签名。使用以下正则表达式匹配第二个签名:

    在此表达式中:

    • 右括号 (\[) 表示所有字符的不区分大小写的匹配的开始,直到右括号出现。

    • 模式 Transfer-Encoding: 是直接字符匹配。

    • 加号 (+) 表示空格字符必须在图案中出现一次或多次。

    • 分块的模式是直接字符匹配。

    • 右括号 (\]) 表示不区分大小写的匹配结束。

  5. 测试攻击对象。

示例:使用时间绑定参数检测暴力攻击

时间绑定约束要求模式在一分钟内出现一定次数,才能将流量视为匹配。

您可以使用时间绑定参数和签名来检测暴力攻击的迹象。用户更改密码是无害事件,通常偶尔在网络上看到。但是,一分钟内数千次密码更改是可疑的。

在暴力攻击中,攻击者试图使用纯粹的武力突破系统防御,通常是通过压倒目标服务器容量或通过重复的试错尝试来匹配身份验证凭据。在暴力登录攻击中,攻击者首先收集用户名列表和密码字典。接下来,攻击者使用一个工具,该工具在字典中为列表中的第一个用户输入第一个密码,然后尝试每个用户的每个密码,直到匹配为止。如果攻击者尝试用户名和密码的每种组合,他们总是会成功。但是,暴力攻击通常会失败,因为密码字典通常受到限制(不包含所有可能的密码),并且攻击工具不会对密码执行排列(例如反转字母或更改大小写)。

在此示例中,您将创建一个签名攻击对象,用于检测通过 HTTP(基于 Web 的应用程序)进行身份验证的用户的密码更改次数过多。

首先,配置攻击模式:

在此表达式中:

  • 点星组合 (.*) 表示通配符匹配。

  • 字符前的反斜杠表示该字符表示正则表达式,必须转义。在本例中,字符为左括号。在此表达式中,反斜杠也用于文件扩展名标记(点)之前和右括号之前。

  • 包括用于更改用户密码的 cgi 脚本的名称以及 cgi 扩展名。

  • 对于上下文,请从列表中选择 HTTP-URL-PARSED, 因为您正在尝试检测对基于 Web 的应用程序发生的密码更改。changepassword.cgi脚本在使用时显示为 URL 的一部分,但您需要告诉 IDP 系列设备分析 URL 才能找到名称。

接下来,配置时间绑定。

在这些设置中:

  • “范围”设置为 “对等 方”,因此无论来源或目标如何,攻击模式都可以与事件匹配。

  • Count 设置为高数字(到 1000)以避免误报。此值表示,在匹配攻击对象之前,changepassword.cgi脚本必须在 URL 中出现 1000 次。

参考:自定义攻击对象协议编号

表 26 IDP 系统中使用的协议编号。

表 26:IDP 攻击对象:协议编号

协议名称

协议编号

HOPOPT

0

ICMP

1

IGMP

2

GGP系列

3

IPIP

4

5

TCP

6

认知行为疗法

7

EGP

8

IGP

9

BBN-RCC-MON(英语:BBN-RCC-MON)

10

NVP-II型

11

12

阿古斯

13

EMCON

14

XNET

15

混沌

16

UDP

17

多路复用器

18

DCN-MEAS

19

HMP

20

PRM

21

XND-IDP

22

中继-1

23

中继-2

24

叶-1

25

叶-2

26

RDP

27

IRTP

28

ISO-TP4型

29

NETBLT

30

MFE-NSP

31

MERIT-INP

32

九月

33

3个PC系统

34

IDPR

35

XTP

36

DDP

37

TP_PLUS_PLUS

39

伊利诺伊州

40

IPV6

41

SDRP

42

IPV6 路由

43

IDV6-片段

44

IDRP

45

回复

46

GRE

47

MHRP公司

48

BNA公司

49

ESP

50

51

I-NLSP

52

刷卡

53

纳普

54

移动

55

TLSP

56

57

IPV6-ICMP

58

IPV6-NONXT

59

IPV6-OPTS

60

AHIP公司

61

CFTP

62

ALNP

63

SAT-EXPAK

64

氪托兰

65

差饷差饷

66

国际植物保护公约

67

ADFSP

68

周六至周一

69

签证

70

IPCV

71

CPNX

72

CPHB

73

WSN

74

PVP系列

75

BR-周六-周一

76

SUN-ND

77

WB-周一

78

WB-EXPAK

79

ISO-IP

80

VMTP

81

保护-VMTP

82

藤 蔓

83

TTP

84

NSFNET-IBP

85

DGP

86

TCF

87

EIGRP

88

OSPFIGP

89

精灵-RPC

90

LARP

91

MTP

92

AX_25

93

IPIP

94

MICP

95

SCC-SP

96

以太网

97

ENCAP

98

99

格林威治标准时间

100

IFMP

101

PNNI公司

102

PIM

103

阿里斯

104

SCPS的

105

QNX

106

A/N

107

IPCOMP

108

SNP

109

COMPAT-PEER

110

IPZ-IN-IP

111

VRRP

112

铂族金属

113

HOP-O

114

L2TP

115

DDX

116

IATP

117

STP

118

SRP

119

尿路感染

120

SMP

121

SSM

122

PTP

123

伊希斯

124

火灾

125

CRTP

126

CRUDP

127

SSCOPMCE

128

IPLT的

129

SPS

130

131

SCTP

132

FC

133

RSVP-E2E-忽略

134

不适用

 

不适用

 

不适用

 

保留

255

参考:不可打印和可打印 ASCII 字符

下表详细介绍了不可打印字符和可打印字符的 ASCII 表示形式。

表 27:ASCII 参考:不可打印字符

12 月

十六进制

10月

评论

0

0

000

NUL

1

1

001

SOH

标题开始

2

2

002

STX系列

文本开头

3

3

003

ETX公司

正文末

4

4

004

EOT

传输结束

5

5

005

ENQ

询问

6

6

006

ACK系列

承认

7

7

007

贝尔

8

8

010

学士

退格键

9

9

011

标签

水平选项卡

10

一个

012

如果

线路馈送

11

B

013

VT

垂直选项卡

12

C

014

FF公司

表单源

13

D

015

回车

14

E

016

所以

移出

15

F

017

换档

16

10

020

DLE

数据链路逃逸

17

11

021

DC1

设备控制 1

18

12

022

DC2

设备控制 2

19

13

023

直流3

设备控制 3

20

14

024

直流4

设备控制 4

21

15

025

否定确认

22

16

026

SYN

同步空闲

23

17

027

ETB

传输块结束

24

18

030

取消

25

19

031

电磁

培养基结束

26

1安

032

替代

27

1B

033

电调

28

1摄氏度

034

司 司长

文件分隔符

29

1D

035

GS

组分隔符

30

1E

036

RS

记录分隔符

31

1F

037

我们

单元分隔符

表 28:ASCII 参考:可打印字符

12 月

十六进制

10月

32

20

040

空间

33

21

041

!

34

22

042

 

35

23

043

#

36

24

044

$

37

25

045

%

38

26

046

&

39

27

047

 

40

28

050

(

41

29

051

)

42

2 安培

052

*

43

2B

053

+

44

2C

054

,

45

二 维和

055

-

46

2E

056

.

47

2F

057

/

48

30

060

0

49

31

061

1

50

32

062

2

51

33

063

3

52

34

064

4

53

35

065

5

54

36

066

6

55

37

067

7

56

38

070

8

57

39

071

9

58

3安培

072

:

59

3B

073

;

60

3C(英语:3C)

074

<

61

三维

075

=

62

3E

076

>

63

3F

077

?

64

40

100

@

65

41

101

一个

66

42

102

B

67

43

103

C

68

44

104

D

69

45

105

E

70

46

106

F

71

47

107

G

72

48

110

H

73

49

111

74

4 安培

112

J

75

4B

113

K

76

4C

114

L

77

4D

115

M

78

4E

116

N

79

4F

117

O

80

50

120

P

81

51

121

Q

82

52

122

R

83

53

123

S

'84 年

54

124

T

85

55

125

U

86

56

126

V

87

57

127

W

88

58

130

X

89

59

131

Y

90

5安培

132

Z

91

5B

133

[

92

5C

134

\

93

5D

135

]

94

5E

136

^

95

5F

137

_

96

60

140

`

97

61

141

一个

98

62

142

b

99

63

143

c

100

64

144

d

101

65

145

e

102

66

146

f

103

67

147

g

104

68

150

h

105

69

151

106

6 安培

152

j

107

6乙

153

k

108

6C

154

l

109

6D

155

m

110

6E

156

n

111

6F

157

o

112

70

160

p

113

71

161

q

114

72

162

r

115

73

163

s

116

74

164

t

117

75

165

u

118

76

166

v

119

77

167

w

120

78

170

x

121

79

171

y

122

7 安培

172

z

123

7乙

173

{

124

7摄氏度

174

|

125

7D

175

}

126

7E

176

~

127

7F

177

戴尔

128

80

200

Ç

129

81

201

ü

130

82

202

é

131

83

203

â

132

84

204

ä

133

85

205

à

134

86

206

å

135

87

207

ç

136

88

210

ê

137

89

211

ë

138

8安培

212

è

139

8乙

213

ï

140

8C(英语:8C)

214

î

141

8D

215

ì

142

8E

216

Ä

143

8F

217

Å

144

90

220

É

145

91

221

æ

146

92

222

æ

147

93

223

ô

148

94

224

ö

149

95

225

ò

150

96

226

û

151

97

227

ù

152

98

230

ÿ

153

99

231

Ö

154

9安培

232

Ü

155

9乙

233

¢

156

9C

234

£

157

9D

235

¥

158

9E

236

P

159

9F

237

ƒ

160

答0

240

á

161

答1

241

í

162

答2

242

ó

163

答3

243

ú

164

答4

244

ñ

165

答5

245

Ñ

166

答6

246

ª

167

答7

247

º

168

答8

250

¿

169

答9

251

¬

170

机 管 局

252

 

171

血型

253

1/2

172

交流

254

1/4

173

广告

255

¡

174

AE

256

"

175

自动对焦

257

"

176

B0

260

¦

177

B1

262

¦

178

B2层

262

¦

179

B3层

263

¦

180

B4层

264

¦

181

B5层

265

¦

182

B6型

266

¦

183

B7层

267

+

184

B8层

270

+

185

B9型

271

¦

186

272

¦

187

BB型

273

+

188

公元前

274

+

189

屋宇 署

275

+

190

276

+

191

高炉

277

+

192

C0

300

+

193

C1级

301

-

194

C2级

302

-

195

C3级

303

+

196

C4级

304

-

197

C5级

305

+

198

C6级

306

¦

199

C7型

307

¦

200

C8型

310

+

201

C9型

311

+

202

CA

312

-

203

CB

313

-

204

抄送

314

¦

205

光盘

315

-

206

CE

316

+

207

CF型

317

-

208

D0

320

-

209

第1天

321

-

210

D2

322

-

211

第3天

323

+

212

D4

324

+

213

D5系列

325

+

214

D6系列

326

+

215

D7系列

327

+

216

D8系列

330

+

217

D9系列

331

+

218

332

+

219

分贝

333

¦

220

直流

334

_

221

DD

335

¦

222

336

¦

223

测向

337

¯

224

E0

340

一个

225

E1

341

ß

226

E2

342

G

227

E3

343

p

228

E4

344

S

229

E5

345

s

230

E6

346

μ

231

E7

347

t

232

E8型

350

F

233

E9

351

T

234

EA

352

O

235

EB

353

d

236

电子商务

354

8

237

急诊科

355

f

238

EE系列

356

e

239

英 孚

357

n

240

F0

360

=

241

F1级

361

+/-

242

F2 键

362

=

243

F3

363

=

244

F4

364

(

245

F5

365

)

246

F6

366

÷

247

F7

367

˜

248

F8

370

°

249

F9

371

250

372

251

FB的

373

v

252

FC

374

n

253

FD型

375

²

254

376

¦

255

FF公司

377

 

示例:配置 IDP 协议解码器

此示例说明如何配置 IDP 协议解码器可调参数。

要求

开始之前,请查看 IDP 协议解码器功能。请参阅 了解 IDP 协议解码器

概述

Junos IDP 模块随附一组预配置的协议解码器。这些协议解码器具有默认设置,用于它们执行的各种特定于协议的上下文检查。您可以使用默认设置,也可以根据网站的特定需求进行调整。此示例说明如何针对 FTP 调整协议解码器。

配置

程序

分步过程

要配置 IDP 协议解码器可调参数,请执行以下作:

  1. 查看具有可调参数的协议列表。

  2. 配置FTP协议的可调参数。

  3. 如果完成设备配置,请提交配置。

验证

要验证配置是否工作正常,请输入 show security idp status 命令。

了解多 IDP 检测器支持

接收到新的安全包时,其中包含攻击定义和检测器。在任何给定版本的安全包中,攻击定义都与所包含检测器的功能相对应。在设备上禁用策略老化时(请参阅策略老化命令,请参阅策略时重置语句),在任何给定时间只有一个策略生效。但是,如果启用了策略老化,并且存在策略更新,则在加载新策略时不会卸载现有策略。因此,这两种策略都可以在设备上生效。在这种情况下,所有现有会话将继续由现有策略进行检查,而新会话将由新策略进行检查。一旦使用旧策略的所有现有会话都终止或过期,旧策略就会卸载。

加载策略时,它还与检测器相关联。如果正在加载的新策略具有与现有策略已在使用的检测器匹配的关联检测器,则不会加载新检测器,并且两个策略都使用一个关联的检测器。但是,如果新检测器与当前检测器不匹配,则新检测器将与新策略一起加载。在这种情况下,每个加载的策略将使用其自己的关联检测器进行攻击检测。

请注意,在任何给定时间最多可以加载两个检测器。如果已经加载了两个检测器(通过两个或多个策略),并且加载新策略需要同时加载新的检测器,则在加载新检测器之前,必须卸载至少一个加载的检测器。在卸载检测器之前,也会卸载使用相应检测器的所有策略。

输入以下命令,可以查看当前策略和对应的检测器版本:

从 Junos OS 18.4R1 版开始,加载新的 IDP 策略时,将使用新加载的策略检查现有会话,并且不会忽略现有会话以进行 IDP 处理。加载新 IDP 策略后,针对检测器创建的基于上下文的攻击,IDP 检查将继续进行,但加载了新检测器的新策略除外。

了解内容解压缩

在HTTP等应用协议中,内容可以被压缩,然后通过网络传输。模式不会与压缩内容匹配,因为写入签名模式是为了匹配未编码的流量数据。在这种情况下,IDP 检测将被规避。为了避免对 HTTP 压缩内容进行 IDP 检测规避,添加了一个 IDP 子模块来解压缩协议内容。对解压缩内容进行签名模式匹配。

要显示所有 IPS 计数器值的状态,请输入以下命令:

一些攻击是通过压缩内容引入的。当内容被解压缩时,它可能会膨胀到非常大的大小,占用宝贵的系统资源,从而导致拒绝服务。这种类型的攻击可以通过解压缩数据大小与压缩数据大小的比率来识别。content-decompress-ratio-over-limit 计数器标识已超过此比率的事件数。默认比率被视为与典型环境一致。但是,在某些情况下,可能需要通过重置 content-decompress-ratio-over-limit 值来调整此比率。但是请记住,较高的比率会降低检测到此类攻击的机会。

content-decompress-memory-over-limit 计数器标识解压缩数据量超过分配内存的事件数。默认内存分配为每个会话提供 33 KB,用于需要同时解压缩的平均会话数。若要确定此值是否与您的环境一致,请分析与解压缩相关的计数器中的值和遍历设备的 IDP 会话总数,并估计同时需要解压缩的会话数。假设每个会话都需要 33 KB 的内存进行解压缩,请将估计需求与默认值进行比较。如有必要,可以通过重置 content-decompression-max-memory-kb 值来调整内存分配。请注意,由于内容解压缩需要大量内存分配,因此增加用于解压缩的最大内存分配将影响系统性能。

示例:配置 IDP 内容解压缩

此示例说明如何配置 IDP 内容解压缩。

要求

开始之前,请查看 IDP 内容解压缩功能。请参阅 了解内容解压缩

概述

默认情况下,解压缩功能处于禁用状态。在此示例中,您将启用检测器,将最大内存配置为 50,000 KB,并将最大解压缩比配置为 16:1。

注意:

启用解压缩将导致设备性能下降。

配置

程序

分步过程

要配置 IDP 内容解压缩,请执行以下作:

  1. 启用检测器。

    注意:

    要禁用检测器,请 tunable‑value 将 设置为 0。

  2. 如有必要,请修改最大内存(以千字节为单位)。

  3. 如有必要,请配置最大减压比。

  4. 如果完成设备配置,请提交配置。

验证

要验证配置是否工作正常,请输入 show security idp status ips 命令。内容解压缩计数器提供有关解压缩处理的统计信息。

了解 IDP 基于签名的攻击

要配置自定义攻击对象,请为其指定唯一名称,然后指定其他信息,以便更轻松地查找和维护攻击对象。

攻击对象定义中的某些属性对于所有类型的攻击都是通用的,例如攻击名称、严重性级别、服务或应用程序绑定、时间绑定以及协议或端口绑定。某些字段特定于攻击类型,并且仅可用于该特定攻击定义。

签名攻击对象使用状态攻击签名(一种始终存在于攻击的特定部分中的模式)来检测已知攻击。它们还包括用于实施攻击的协议或服务以及发生攻击的上下文。以下属性特定于签名攻击,您可以在配置签名攻击时配置这些属性:攻击上下文、攻击方向、攻击模式和协议特定参数(TCP、UDP、ICMP 或 IP 报头字段)。

配置基于签名的攻击时,请记住以下几点:

  • 攻击上下文和方向是签名攻击定义的必填字段。

  • 模式否定仅适用于数据包、线路和基于应用的上下文,而不支持流和规范化流上下文。

  • 配置特定于协议的参数时,您只能为以下协议之一指定字段:IP、TCP、UDP 或 ICMP。

  • 配置协议绑定时,只能指定以下选项之一:IP、ICMP、TCP、UDP、RPC 或应用程序。

    • IP — 协议编号为必填字段。

    • TCP 和 UDP — 您可以指定单个端口 (minimum-port) 或端口范围 (minimum-portmaximum-port)。如果未指定端口,则采用默认值 (0-65535)。

    • RPC - 程序编号为必填字段。

从 Junos OS 19.1R1 版开始,您可以使用 Hyperscan 扩展参数配置基于签名的攻击。通过为 Hyperscan 扩展参数设置最佳值,可以显著增强攻击模式匹配过程。

要配置扩展参数,请在[edit security idp custom-attack attack-name attack-type signature]层次结构级别包括optional-parameters选项。您可以在选项optional-parameters下配置以下参数:

  • min-offset

  • max-offset

  • min-length

Hyperscan API 的简要工作原理 – Hyperscan 是一种软件正则表达式匹配引擎,旨在提供高性能和灵活性。当将带有模式的签名配置为 IDP 策略的一部分时,该模式将被标识为正则表达式。在路由引擎上,Hyperscan 将此正则表达式作为输入,并将其编译成一个数据库,该数据库被推送到数据包转发引擎。当数据包进入数据包转发引擎时,会检查数据包中的数据,以确定它是否与使用数据库的正则表达式匹配。

如果 IDP 策略配置了一组签名,则会形成确定性有限自动机 (DFA) 组。DFA 组中所有签名的模式被传递给 Hyperscan,形成一个单一的数据库,该数据库可用于一次检查数据包中的所有攻击。由于每次攻击都使用单个数据库而不是单独的数据库,因此模式匹配过程非常有效。

当使用扩展参数配置签名时,Hyperscan API 会考虑配置的参数来形成数据库。模式匹配过程发生在使用此新数据库的数据数据包转发引擎上。这些参数允许在编译时约束模式生成的匹配项集,而不是依赖应用程序在运行时处理不需要的匹配项。

示例:配置 IDP 基于签名的攻击

此示例说明如何创建基于签名的攻击对象。

要求

开始之前,请配置网络接口。

概述

在此示例中,您将创建名为 sig1 的签名攻击,并为其分配以下属性:

  • 建议作(丢弃数据包) — 在匹配数据包到达其目标之前丢弃该数据包,但不会关闭连接。

  • 时间绑定 - 将范围指定为 source ,将计数指定为 10。当 scope 为 source时,将计算来自同一源的所有攻击,当攻击次数达到指定的计数 (10) 时,将记录攻击。在此示例中,记录来自同一来源的每十次攻击。

  • 攻击上下文(数据包) — 匹配数据包内的攻击模式。

  • 攻击方向(任意) — 检测两个方向的攻击:客户端到服务器和服务器到客户端流量。

  • 协议 (TCP) — 指定 TTL 值 128。

  • Shellcode (Intel) — 设置用于检测 Intel 平台的 shellcode 的标志。

  • 协议绑定 — 指定 TCP 协议和端口 50 到 100。

配置基于签名的攻击对象后,您可以在 IDP 策略规则中将攻击指定为匹配条件。请参阅 示例:定义 IDP IPS 规则库的规则

配置

程序

CLI 快速配置

要快速配置此示例,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,更改详细信息,以便与网络配置匹配,然后将命令复制并粘贴到层 [edit] 级的 CLI 中,然后从配置模式进入 commit

分步过程

下面的示例要求您在各个配置层级中进行导航。有关作说明,请参阅 CLI 用户指南中的在配置模式下使用 CLI 编辑器

要创建基于签名的攻击对象,请执行以下作:

  1. 指定攻击的名称。

  2. 指定攻击的通用属性。

  3. 指定攻击类型和上下文。

  4. 指定攻击方向和 shellcode 标志。

  5. 设置协议及其字段。

  6. 指定协议绑定和端口。

  7. 指定方向。

结果

在配置模式下,输入 show security idp 命令以确认您的配置。如果输出未显示预期的配置,请重复此示例中的配置说明,以便进行更正。

如果完成设备配置,请从配置模式输入 commit

验证

确认配置工作正常。

验证配置

目的

验证是否已创建基于签名的攻击对象。

行动

在作模式下,输入 show security idp status 命令。

了解 IDP 协议基于异常的攻击

协议异常攻击对象检测违反协议规范(RFC 和常见 RFC 扩展)的未知或复杂攻击。您无法创建新的协议异常,但可以配置新的攻击对象,以控制设备在检测到预定义协议异常时如何处理。

以下属性特定于协议异常攻击:

  • 攻击方向

  • 测试条件

配置基于协议异常的攻击时,请记住以下几点:

  • 服务或应用绑定是协议异常攻击的必填字段。除了支持的应用程序外,服务还包括 IP、TCP、UDP、ICMP 和 RPC。

  • 攻击方向和测试条件属性是配置异常攻击定义的必填字段。

示例:配置 IDP 协议基于异常的攻击

此示例说明如何创建基于协议异常的攻击对象。

要求

开始之前,请配置网络接口。

概述

在此示例中,您将创建名为 anomaly1 的协议异常攻击,并为其分配以下属性:

  • 时间绑定 — 指定范围 AS peer 2 和计数 AS,以检测指定次数的会话的源 IP 地址和目标 IP 地址之间的异常。

  • 严重性(信息)— 提供有关与条件匹配的任何攻击的信息。

  • 攻击方向(任意) — 检测两个方向的攻击:客户端到服务器和服务器到客户端流量。

  • 服务 (TCP) — 使用 TCP 服务匹配攻击。

  • 测试条件 (OPTIONS_UNSUPPORTED) - 匹配某些预定义的测试条件。在此示例中,条件是匹配攻击是否包含不受支持的选项。

  • Shellcode (sparc) — 设置用于检测 Sparc 平台的 shellcode 的标志。

配置基于协议异常的攻击对象后,可以在 IDP 策略规则中将攻击指定为匹配标准。请参阅 示例:定义 IDP IPS 规则库的规则

配置

程序

CLI 快速配置

要快速配置此示例,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,更改详细信息,以便与网络配置匹配,然后将命令复制并粘贴到层 [edit] 级的 CLI 中,然后从配置模式进入 commit

分步过程

下面的示例要求您在各个配置层级中进行导航。有关作说明,请参阅 CLI 用户指南中的在配置模式下使用 CLI 编辑器

要创建基于协议异常的攻击对象,请执行以下作:

  1. 指定攻击的名称。

  2. 指定攻击的通用属性。

  3. 指定攻击类型和测试条件。

  4. 指定异常攻击的其他属性。

结果

在配置模式下,输入 show security idp 命令以确认您的配置。如果输出未显示预期的配置,请重复此示例中的配置说明,以便进行更正。

如果完成设备配置,请从配置模式输入 commit

验证

要确认配置工作正常,请执行以下任务:

验证配置

目的

验证是否已创建基于协议异常的攻击对象。

行动

在作模式下,输入 show security idp status 命令。

IDP 策略配置概述

借助 Junos OS 入侵检测和防御 (IDP) 策略,您可以选择性地对通过启用 IDP 的设备传输的网络流量实施各种攻击检测和防御技术。您可以通过该解决方案定义策略规则,以根据区域、网络和应用匹配某一部分流量,然后针对该流量采取主动或被动防御措施。

IDP 策略定义设备处理网络流量的方式。它允许您对遍历网络的流量实施各种攻击检测和防御技术。

策略由规则库组成,每个规则库包含一组规则。您可以定义规则参数,例如流量匹配条件、作和日志记录要求,然后将规则添加到规则库中。通过在一个或多个规则库中添加规则来创建 IDP 策略后,您可以选择该策略作为设备上的活动策略。

要配置 IDP 策略,请执行以下步骤:

  1. 在安全策略中启用 IDP。

  2. 配置 IDP 策略规则、IDP 规则库和 IDP 规则作。请参阅 示例:在 IDP 规则库中插入规则 示例:定义 IDP IPS 规则库的规则示例:在安全设备上配置和应用重写规则 主题。

  3. 配置 IDP 自定义签名。请参阅 了解 IDP 基于签名的攻击示例:配置 IDP 基于签名的攻击 主题。

  4. 更新 IDP 签名数据库。请参阅 更新 IDP 签名数据库概述

IPv6 隐蔽通道概述

隐蔽通道是一种攻击技术,它允许通过未经授权或非法的方式通过现有信息通道传输对象来通信信息。借助隐蔽通道,攻击者可以在网络中进行恶意活动。

从 Junos OS 19.1R1 版开始,入侵检测和防御 (IDP) 支持 IPv6 扩展标头的隐蔽通道识别和缓解。信息传输违反了现有的安全系统。IDP 安全包包含一个数据库,其中包含用于隐蔽通道的预定义 IDP 攻击对象数据库,您可以在 IDP 策略中使用该数据库将流量与攻击进行匹配。

作为此支持的一部分,您可以检测和标记 IPv6 扩展报头异常,从而可以建立隐蔽通道并采取策略中指定的作。隐蔽通道攻击与其他攻击一起显示。Show security idp attack table

变更历史表

是否支持某项功能取决于您使用的平台和版本。使用 功能浏览器 查看您使用的平台是否支持某项功能。

释放
描述
18.4R1
从 Junos OS 18.4R1 版开始,您可以配置时间绑定自定义攻击的任意两个实例之间的最大时间间隔,最大时间间隔范围为 0 分 0 秒到 60 分 0 秒。在 18.4R1 之前的 Junos OS 版本中,时间绑定攻击的任意两个实例之间的最大时间间隔为 60 秒,攻击触发计数才能达到时间绑定中配置的计数。 interval interval-value 在层次结构中 [edit security idp custom-attack attack-name time-binding] 引入语句以配置自定义时间绑定。
15.1X49-D140
从 Junos OS 15.1X49-D140 版开始,自定义攻击对象名称允许的最大字符数为 60。您可以使用 set security idp custom-attack 命令验证语句。