Oracleo/SOC-Project3-Network-Intrusion-Detection-Suricata-Wireshark

GitHub: Oracleo/SOC-Project3-Network-Intrusion-Detection-Suricata-Wireshark

Stars: 1 | Forks: 0

# 网络入侵检测与流量取证 ### 在实时实验网络中使用 Suricata IDS + Wireshark ## ![Status](https://img.shields.io/badge/Status-Completed-brightgreen) ![Platform](https://img.shields.io/badge/Platform-Kali%20Linux-blue?logo=linux) ![Suricata](https://img.shields.io/badge/Suricata-8.0.3-orange) ![Wireshark](https://img.shields.io/badge/Wireshark-Live%20Capture-1679A7?logo=wireshark) ![Alerts](https://img.shields.io/badge/Alerts%20Generated-249-red) ![Rules](https://img.shields.io/badge/Custom%20Rules-5-yellow) ![Packets](https://img.shields.io/badge/Packets%20Captured-8344-purple) ![Level](https://img.shields.io/badge/SOC%20Level-L1-blue) ![License](https://img.shields.io/badge/License-MIT-green) ## 目录 1. [项目概要](#1-project-summary) 2. [构建原因](#2-why-we-built-this) 3. [实验环境](#3-lab-environment) 4. [使用的工具](#4-tools-used) 5. [构建步骤详解](#5-how-we-built-it--step-by-step) 6. [自定义检测规则](#6-custom-detection-rules) 7. [执行的攻击场景](#7-attack-scenarios-executed) 8. [发现与告警分析](#8-findings--alert-analysis) 9. [Wireshark 取证分析](#9-wireshark-forensic-analysis) 10. [SOC 事件报告](#10-soc-incident-report) 11. [仓库内容](#11-repository-contents) 12. [主要收获](#12-key-takeaways) ## 1. 项目概要 本项目模拟了真实的 SOC(安全运营中心)分析师工作流程: 我们在 Kali Linux 机器上部署了 **Suricata 8.0.3** 作为网络入侵检测系统 (IDS),针对真实世界的攻击模式编写了 **5 条自定义检测规则**,从 Windows 10 主机生成了**实时攻击流量**,在 **Wireshark** 中捕获了所有数据包,并基于证据生成了一份完整的 **SOC 风格事件报告**。 **生成的告警总数:249** **触发的自定义规则:5 条中的 4 条** **数据包捕获大小:8,344 个数据包** ## 2. 构建原因 在真实的 SOC 中,L1 分析师负责: - 监控 IDS/SIEM 仪表盘以获取告警 - 对告警进行分类,确定其是真阳性还是假阳性 - 使用数据包捕获工具调查可疑流量 - 将已确认的事件连同书面证据进行上报 本项目完全反映了该工作流程。Suricata 充当 IDS/SIEM 告警源。Wireshark 充当数据包取证工具。两者的结合 —— 告警分类 + 数据包级调查 —— 是每位 SOC L1 分析师的核心技能。 利用受控的实验环境,我们得以生成已知的恶意流量,并准确观察每种攻击在网络层面的表现形式,从而培养了现实世界事件响应所需的模式识别技能。 ## 3. 实验环境 | 组件 | 详情 | |---|---| | 主机操作系统 | Windows 10 (版本 10.0.19045.2965) | | 虚拟机平台 | Oracle VirtualBox | | 客户机操作系统 | Kali Linux 2026-W06 (Rolling) | | 网络模式 | Host-Only Adapter | | Kali IP (传感器/受害者) | `192.168.56.101` | | Windows IP (攻击者) | `192.168.56.107` | | 监控接口 | `eth0` | **网络拓扑图:** ``` ┌─────────────────────┐ ┌────────────────────────────┐ │ Windows 10 Host │ │ Kali Linux VM │ │ 192.168.56.107 │◄───────►│ 192.168.56.101 │ │ (Attacker) │ eth0 │ Suricata IDS + Wireshark │ └─────────────────────┘ └────────────────────────────┘ VirtualBox Host-Only Network: 192.168.56.0/24 ``` ## 4. 使用的工具 | 工具 | 版本 | 用途 | |---|---|---| | Suricata | 8.0.3 | 网络 IDS — 告警生成 | | Wireshark | 最新版 | 数据包捕获和取证分析 | | Emerging Threats Ruleset | 48,701 条规则 | 社区 IDS 特征库 | | 自定义规则 | 5 条规则 | SOC 实验室特定检测 | | Nmap | 7.98 | 端口扫描模拟(攻击者工具) | | OpenSSH Client | Windows 内置 | SSH 暴力破解模拟 | | curl | Windows 内置 | HTTP User-Agent 模拟 | ## 5. 构建步骤详解 ### 阶段 1:Suricata 安装与配置 **步骤 1.1 — 安装 Suricata** ``` sudo apt update && sudo apt install -y suricata suricata --version # 输出:Suricata 8.0.3 ("undefined") ``` ![Suricata 版本已验证](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/dc5da566e6150449.png) **步骤 1.2 — 配置 suricata.yaml** 编辑 `/etc/suricata/suricata.yaml`,进行两项关键设置: - 将 `HOME_NET` 设置为 `[192.168.56.0/24]` — 告知 Suricata 哪个网络是“内部的” - 将 `af-packet interface` 设置为 `eth0` — 被监控的接口 ``` vars: address-groups: HOME_NET: "[192.168.56.0/24]" af-packet: - interface: eth0 ``` ![Suricata YAML 配置 — HOME_NET 和 af-packet](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/bf10b18bdb150451.png) **步骤 1.3 — 更新 Emerging Threats Ruleset** ``` sudo suricata-update ``` 结果:**下载 64,554 条规则,启用 48,701 条,0 条失败** ![Suricata 规则已更新](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/bf7b79636b150452.png) **步骤 1.4 — 验证配置** ``` sudo suricata -T -c /etc/suricata/suricata.yaml -v 2>&1 | tail -20 ``` 结果:`48701 rules successfully loaded, 0 rules failed` 以及 `Configuration provided was successfully loaded.` ![Suricata 配置测试通过](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/147ddfc163150455.png) ### 阶段 2:自定义 SOC 检测规则 创建了 `/etc/suricata/rules/local.rules`,包含 5 条针对真实攻击模式的规则。将其复制到 `/var/lib/suricata/rules/` 并在 `suricata.yaml` 中注册。 ``` sudo suricata -T -c /etc/suricata/suricata.yaml -v 2>&1 | grep "rules successfully" # 信息:detect: 已处理 2 个 rule 文件。成功加载 48706 条 rules,0 条 rules 失败 ``` ![自定义规则已验证](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/b510cd8b45150458.png) ### 阶段 3:启动 Suricata + Wireshark **终端 1 — Suricata 在 eth0 上实时运行:** ``` sudo suricata -c /etc/suricata/suricata.yaml -i eth0 -l /var/log/suricata/ ``` 确认:`Engine started. Threads created → W: 3 FM: 1 FR: 1` ![Suricata 实时运行中](https://raw.githubusercontent.com/Oracleo/SOC-Project3-Network-Intrusion-Detection-Suricata-Wireshark/main/screenshots/06_suricata_running_live.png) **终端 2 — Wireshark 正在捕获 eth0:** ``` sudo wireshark & ``` 选择 `eth0` 接口 → 开始实时捕获。 ![Wireshark 正在捕获 eth0](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/4fe5edf10f150519.png) ### 阶段 4:攻击流量生成(Windows 主机) 所有攻击均从 Windows 10 命令提示符 (`192.168.56.107`) 发起,目标为 Kali Linux (`192.168.56.101`)。 ![从 Windows 生成的攻击流量](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/84c1da7ad9150521.png) ## 6. 自定义检测规则 文件:`rules/local.rules` ``` # Rule 1:ICMP Ping Sweep (侦察) alert icmp any any -> $HOME_NET any ( msg:"SOC-LAB ICMP Ping Sweep Detected"; itype:8; threshold:type threshold, track by_src, count 5, seconds 10; sid:9000001; rev:1;) # Rule 2:Nmap SYN Port Scan alert tcp any any -> $HOME_NET any ( msg:"SOC-LAB Nmap SYN Scan Detected"; flags:S; threshold:type threshold, track by_src, count 20, seconds 3; sid:9000002; rev:1;) # Rule 3:SSH Brute Force 检测 alert tcp any any -> $HOME_NET 22 ( msg:"SOC-LAB SSH Brute Force Attempt"; flags:S; threshold:type threshold, track by_src, count 5, seconds 60; sid:9000003; rev:1;) # Rule 4:可疑 HTTP User-Agent (curl/scanner) alert http any any -> $HOME_NET any ( msg:"SOC-LAB Suspicious HTTP User-Agent Detected"; http.user_agent; content:"curl"; sid:9000004; rev:1;) # Rule 5:TCP Flood / DoS Pattern alert tcp any any -> $HOME_NET any ( msg:"SOC-LAB TCP Flood DoS Pattern"; flags:S; threshold:type threshold, track by_src, count 100, seconds 5; sid:9000005; rev:1;) ``` **规则设计依据:** | SID | 阈值逻辑 | 为什么这样设置阈值 | |---|---|---| | 9000001 | 10 秒内 5 个 ICMP | 正常 ping = 1-4 个包;扫描 = 快速突发 | | 9000002 | 3 秒内 20 个 SYN | Nmap 每秒发送数百个 SYN | | 9000003 | 60 秒内 5 个到端口 22 的 SYN | SSH 重试很慢;5+ = 自动化工具 | | 9000004 | 任何 curl User-Agent | curl 不是浏览器;出现即代表扫描器/脚本 | | 9000005 | 5 秒内 100 个 SYN | 持续的速率 = DoS 意图 | ## 7. 执行的攻击场景 ### 攻击 1 — ICMP Ping 扫描(侦察) ``` ping 192.168.56.101 -n 20 ``` 模拟攻击者在进一步利用之前确认目标主机是否存活。 **结果:** 发送了 20 个 ICMP Echo Requests,全部回复。TTL=64 确认目标为 Linux。 ### 攻击 2 — Nmap SYN 端口扫描 ``` nmap -sS 192.168.56.101 -p 1-1000 ``` Nmap 的隐蔽 SYN 扫描 (-sS) 向端口 1–1000 发送 SYN 数据包,而不完成 TCP 握手。此技术用于枚举开放端口,同时避免在目标上留下连接日志。 **结果:** 在 3.20 秒内扫描了 1000 个端口。所有端口关闭/过滤 — 但 Suricata 捕获了每一个 SYN 数据包。 ### 攻击 3 — SSH 暴力破解模拟 ``` for /L %i in (1,1,10) do ssh -o ConnectTimeout=2 baduser@192.168.56.101 ``` 模拟针对 SSH (端口 22) 的自动化凭证填充攻击。真实的暴力破解工具如 Hydra 和 Medusa 遵循这种相同的连接模式。 **结果:** 混合出现 `Connection refused` 和 `Connection timed out` — SSH 未在 Kali 上运行,但 TCP SYN 数据包仍到达了传感器。捕获了 9 个告警事件。 ### 攻击 4 — 可疑 HTTP User-Agent ``` curl -A "curl/7.68.0" http://192.168.56.101 ``` 模拟扫描器或自动化脚本访问 Web 服务器。真实攻击者使用 curl、Python requests 和自定义 user-agent 来指纹识别 Web 服务。 **结果:** 端口 80 在 Kali 上未开放 — 连接被拒绝。数据包仍被 Wireshark 捕获。规则 9000004 已就绪;由于没有 Web 服务器,未达到 HTTP 应用层,Suricata 未触发。 ## 8. 发现与告警分析 ### fast.log 摘要 fast.log 中的总行数:**249** ``` 156 alerts — "SOC-LAB Nmap SYN Scan Detected" (SID 9000002) 30 alerts — "SOC-LAB TCP Flood DoS Pattern" (SID 9000005) 24 alerts — "SOC-LAB SSH Brute Force Attempt" (SID 9000003) 2 alerts — "SOC-LAB ICMP Ping Sweep Detected" (SID 9000001) 37 alerts — ET INFO Possible Kali Linux hostname in DHCP (SID 2022973) [Bonus ET Rule] ``` ![Suricata fast.log 告警](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/c7ae8fcee4150522.png) ### eve.json 结构化告警证据 eve.json 提供机器可读的、可被 SIEM 摄取的告警数据,包括 `flow_id`、`community_id`、`src_ip`、`dest_ip`、时间戳和完整的流统计信息。 来自 eve.json 的 ICMP 告警示例: ``` { "timestamp": "2026-02-25T11:18:53.852420-0500", "flow_id": 456057548001102, "in_iface": "eth0", "event_type": "alert", "src_ip": "192.168.56.107", "dest_ip": "192.168.56.101", "proto": "ICMP", "alert": { "signature_id": 9000001, "signature": "SOC-LAB ICMP Ping Sweep Detected", "severity": 3 }, "community_id": "1:aWp7QzSXFNVZZcb8gtTDuL+7ipM=" } ``` ![Suricata eve.json 告警](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/adc06ae3af150524.png) ### 告警分类 — 真阳性确认 | 告警 | 真阳性? | 证据 | |---|---|---| | ICMP Ping Sweep | ✅ 是 | Wireshark 显示来自 .107 的 20 个 ICMP Echo Requests | | Nmap SYN Scan | ✅ 是 | pcap 中有 3,130 个仅含 SYN 的数据包,发往不同端口 | | SSH Brute Force | ✅ 是 | 123 个发往端口 22 的数据包,源端口递增 | | TCP Flood/DoS | ✅ 是 | 与 Nmap 同时触发 — 相同的高容量 SYN 突发 | | HTTP User-Agent | ⚠️ 未触发 | 无运行中的 Web 服务器 — curl 在 HTTP 层之前遇到连接拒绝 | | ET Kali DHCP | ✅ 信息性 | Kali 通过 DHCP 广播中的主机名被指纹识别 | **关于规则 9000004 (HTTP) 的 SOC 说明:** curl 请求到达了 TCP 层,但在 Suricata 检查 HTTP 应用层之前在端口 80 被拒绝。在具有运行中 Web 服务器的生产环境中,此规则将针对任何基于 curl 的扫描器或自动化工具触发。这被记录为预期的行为差异,而非规则失效。 ## 9. Wireshark 取证分析 所有数据包证据捕获于:`soc3_capture.pcapng`(共 8,344 个数据包) ### 过滤器 1 — ICMP Ping Sweep **过滤器:** `icmp && ip.src == 192.168.56.107` **显示:** 34 个数据包 Wireshark 确认了源自 Windows 主机的序列号递增的 ICMP Echo Requests (seq=104, 105, 106...)。TTL=128(Windows 默认值)确认了攻击者操作系统指纹。 ![Wireshark ICMP Ping 过滤器](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/9762ff1ec4150525.png) ### 过滤器 2 — Nmap SYN Scan **过滤器:** `tcp.flags.syn == 1 && tcp.flags.ack == 0 && ip.src == 192.168.56.107` **显示:** 3,130 个数据包(占总捕获量的 37.5%) 每个数据包都显示 `[SYN]` 且 `Seq=0 Win=1024 Len=0 MSS=1460` — Nmap SYN 扫描指纹。单一源端口 (58238) 连接到数百个目标端口证实这是端口扫描器,而非正常的应用程序流量。 ![Wireshark Nmap SYN Scan 过滤器](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/f841b2b27a150547.png) ### 过滤器 3 — SSH Brute Force 过滤器:** `tcp.dstport == 22 && ip.src == 192.168.56.107` **显示:** 123 个数据包 Wireshark 揭示了暴力破解特征:源端口线性递增 (9770, 9772, 9773, 9774...) — 每一个都是新的连接尝试。`[TCP Port numbers reused]` 标志确认了重复的连接拆除和重启 — 自动化登录工具的标志。 ![Wireshark SSH Brute Force 过滤器](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/1f9332e3b1150548.png) ### 协议层级统计 **TCP: 75% (6,260 个数据包)** — 由 Nmap SYN flood 主导 **ICMP: 0.8% (68 个数据包)** — ping sweep 清晰可见 **UDP/DHCP/ARP: 其余** — 正常的背景流量 在原本安静的实验网络中,TCP 的主导地位本身就是一个异常指标。在真实的 SOC 中,这个比例将触发调查。 ![Wireshark 协议层级](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/f5be579dd5150550.png) ### TCP 会话分析 **3,130 个 TCP 会话** — 全部位于 `192.168.56.107` 和 `192.168.56.101` 之间 所有会话仅显示 **1 个包 A→B,1 个包 B→A** — 确认 SYN → RST/ACK 交换(无完整握手)。每个流 ID 都是唯一且递增的。这种模式明确指向端口扫描器,而非人类用户。 ![Wireshark TCP 会话](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/1b5d263190150551.png) ## 10. SOC 事件报告 ``` ╔══════════════════════════════════════════════════════════════╗ ║ SOC INCIDENT REPORT — INC-2026-001 ║ ╚══════════════════════════════════════════════════════════════╝ Date/Time: 2026-02-25, 11:18 – 11:35 UTC-5 Analyst: [Your Name] Severity: HIGH Status: True Positive — Confirmed Attack Sequence Sensor: Suricata 8.0.3 on eth0 (192.168.56.101) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ EXECUTIVE SUMMARY ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ A single external host (192.168.56.107) conducted a structured, multi-stage reconnaissance and intrusion attempt against the internal host 192.168.56.101 between 11:18 and 11:35 on 2026-02-25. The attack followed the classic kill chain sequence: ICMP Recon → Port Scan → Service Brute Force All activity was detected by Suricata custom rules and confirmed via Wireshark packet-level forensics. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ATTACK TIMELINE ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 11:18:49 ICMP Ping Sweep begins SID 9000001 fired — 20 ICMP Echo Requests Attacker confirmed target host is alive 11:22:51 Nmap SYN Scan begins SID 9000002 fired — 156 alerts over 1.69 seconds SID 9000005 co-fired — 30 DoS pattern alerts Attacker scanned ports 1–1000 via stealth SYN method 3,130 SYN packets captured in Wireshark 11:34:38 SSH Brute Force begins SID 9000003 fired — 9 attempts over ~90 seconds Attacker attempted repeated SSH connections to port 22 Source ports incrementing: 9770, 9772, 9773... Pattern consistent with automated credential tool ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ATTACKER PROFILE ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Source IP: 192.168.56.107 OS Fingerprint: Windows (TTL=128 in ICMP, SACK_PERM in SYN) Tools Used: Nmap 7.98 (SYN scan fingerprint confirmed) OpenSSH client (SSH brute force pattern) curl/7.68.0 (HTTP scanner user-agent) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ PACKET EVIDENCE SUMMARY ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ pcap file: soc3_capture.pcapng Total packets: 8,344 ICMP packets: 34 (ping sweep confirmed) SYN-only packets: 3,130 (port scan confirmed) Port 22 packets: 123 (brute force confirmed) TCP conversations: 3,130 unique (all incomplete — no handshake) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ RECOMMENDED RESPONSE ACTIONS ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1. Block 192.168.56.107 at the perimeter firewall immediately 2. Review all auth logs on 192.168.56.101 for successful SSH logins 3. Check 192.168.56.101 for any new user accounts or cron jobs 4. Run integrity check on sensitive files (AIDE or Tripwire) 5. Escalate to SOC L2 for threat hunting across the subnet 6. Add 192.168.56.107 to threat intelligence watchlist ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ANALYST NOTES ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - Rule 9000004 (HTTP User-Agent) did not fire because no web server is running on port 80. The curl connection was refused at the TCP layer before Suricata could inspect HTTP headers. Rule is correctly written — environment limitation only. - ET SID 2022973 fired repeatedly — Kali Linux hostname detected in DHCP broadcasts. In a real network, this would indicate an unauthorized Kali machine on the corporate LAN — a Priority 1 finding that would trigger immediate investigation. - The Nmap Win=1024 fingerprint in Wireshark is a reliable Nmap SYN scan indicator. Real user traffic uses Win=65535 or OS-scaled values. Win=1024 = scanner. ``` ## 11. 仓库内容 ``` SOC3-Suricata-Wireshark/ │ ├── README.md ← This document │ ├── rules/ │ └── local.rules ← 5 custom Suricata detection rules │ ├── logs/ │ ├── fast.log ← Suricata human-readable alert log │ └── eve.json ← Suricata structured JSON alert log │ ├── pcap/ │ └── soc3_capture.pcapng ← Full Wireshark packet capture │ └── screenshots/ ├── 01_suricata_version_verified.png ├── 02_suricata_yaml_homenet_afpacket.png ├── 03_suricata_rules_updated.png ├── 04_suricata_config_test_passed.png ├── 05_custom_rules_created_validated.png ├── 06_suricata_running_live.png ├── 07_wireshark_capturing_eth0.png ├── 08_attack_traffic_generated_windows.png ├── 09_suricata_fast_log_alerts.png ├── 10_suricata_eve_json_alerts.png ├── 11_wireshark_save_capture.png ├── 12_wireshark_filter_icmp_ping.png ├── 13_wireshark_filter_nmap_syn_scan.png ├── 14_wireshark_filter_ssh_bruteforce.png ├── 15_wireshark_protocol_hierarchy.png └── 16_wireshark_conversations_tcp.png ``` ## 12. 主要收获 **本项目展示了:** 1. **IDS 部署** — 在实时接口上使用真实规则集从零配置 Suricata 2. **规则工程** — 编写针对真实攻击 TTP 的具有阈值逻辑的自定义 Suricata 规则 3. **攻击模拟** — 使用真实工具(Nmap、SSH 客户端、curl)生成真实流量 4. **告警分类** — 审查并分类所有 249 个告警,判定真/假阳性并提供依据 5. **数据包取证** — 使用 Wireshark 过滤器从 IDS 告警追溯到原始数据包证据 6. **事件文档** — 基于证据撰写完整的 SOC 风格事件报告 **展示的技能:** Suricata, Wireshark, 网络取证, IDS 规则编写, 告警分类, 事件报告, Linux 命令行, TCP/IP 协议分析 *本项目作为 SOC L1 作品集的一部分构建 — M.Tech 信息安全* *实验日期:2026年2月25日*
标签:Cloudflare, CTI, ICMP侦察, Incident Response, L1分析师, Metaprompt, MITRE ATT&CK, Nmap, PCAP, SSH暴力破解, Suricata, SYN扫描, Wireshark, 入侵检测系统, 句柄查看, 告警研判, 域名解析, 安全数据湖, 安全运营中心, 插件系统, 现代安全运营, 私有化部署, 网络安全实验, 网络映射, 自定义规则, 虚拟驱动器, 防御规避