在此示例场景中,假设您要创建一个自定义特征码以检测 SMB 流量,这些流量指示对未针对 MS17-010 进行修补的系统中漏洞(可能被 WannaCry 等恶意软件利用)的探测尝试。

前提条件

确保上载的自定义特征码仅使用受支持的 Suricata 关键字。使用任何不受支持的关键字都会造成特征码无效,因为它无法解析批准列表之外的关键字。

过程

  1. 您可以通过以下方式之一上载自定义特征码:
    • 如果已上载自定义特征码包,请先将 .zip 格式的包导出到本地系统。之后将新的自定义特征码添加到包并重新上载。

    • 您可以通过添加 IDS 特征码来手动添加自定义特征码。

    • 克隆系统特征码并自定义特征码。

  2. 我们来手动添加自定义特征码。在 NSX Manager UI 中,转到安全 > IDS/IPS 和 Malware Prevention(在“策略管理”部分下),选择特征码管理 > 自定义特征码
  3. 单击 +添加手动添加
  4. 在“手动添加自定义特征码”窗口,单击添加特征码,键入或粘贴自定义特征码,然后单击添加。您可以通过单击“添加特征码”来添加更多特征码。添加所有要包含在包中的特征码后,单击保存。例如,
    alert tcp $HOME_NET any -> $EXTERNAL_NET 445 (msg:"NSX - Detect Potential SMB probe for MS17-010 patch"; flow:established,to_server; target:src_ip; content:"|00|"; depth:1; content:"|FF|SMB"; within:7; content:"|23 00 00 00 07 00 5C|PIPE|5C 00|"; within:110; threshold: type limit, track by_src, seconds 10, count 10; metadata:ll_expected_verifier default, flip_endpoints False, server_side False, threat_class_name Suspicious Network Interaction, threat_name Potential SMB probe for MS17-010 patch, ids_mode INFO, blacklist_mode DISABLED, exploited None, confidence 50, severity 20, detector_id 63681, signature_severity Informational; reference:url,www.lastline.com; classtype:trojan-activity; sid:1063681; rev:6499; priority:5; flowbits:set,CS.LL.verifier_tcp_successful; flowbits:set,CS.LL.verifier_tcp_failed; flowbits:set,CS.LL.verifier_tcp_blocked;)
  5. NSX IDS/IPS 会自动启动对新添加特征码的验证过程。特征码验证器将评估规则的有效性,并将其分类为有效无效警告。默认情况下,验证过程中会排除警告特征码。如果要将它们推送到传输节点,则必须明确选择以将其包含在内。无效特征码会发布,但仅存储在 NSX Manager 上,不会推送到传输节点。但是,您必须解决导致特征码无效的所有问题,并重新验证,然后才能发布这些特征码。
  6. 单击发布
  7. 确认您可以在传输节点上查看已发布的特征码。
  8. IDS/IPS 和 Malware Prevention 页面上,选择配置文件。您可以添加新的自定义配置文件,也可以编辑现有配置文件以包含自定义特征码。添加或编辑配置文件时,请确保为自定义特征码分配严重性级别。
  9. 确认已使用自定义特征码配置文件来应用规则。
  10. 当恶意流量尝试探测未针对 MS17-010 进行修补的系统中的漏洞时,IDS 将针对可疑活动生成警示。




  11. “检测位置”字段列出进行探测尝试以利用未修补系统的虚拟机。


  12. 修补这些虚拟机以避免未针对 MS17-010 进行修补的系统中出现漏洞。