$npx -y skills add killvxk/cybersecurity-skills-zh --skill analyzing-network-flow-data-with-netflow解析 NetFlow v9 和 IPFIX 记录,检测容量异常(volumetric anomalies)、端口扫描(port scanning)、数据外泄(data exfiltration)和 C2 信标模式(C2 beaconing patterns)。使用 Python netflow 库解码流记录, 构建流量基线,并应用统计分析识别字节数异常、连接时长异常和周期性定时模式的流量。
| 1 | ## 指令 |
| 2 | |
| 3 | 1. 安装依赖:`pip install netflow` |
| 4 | 2. 从路由器采集 NetFlow/IPFIX 数据,或使用内置采集器:`python -m netflow.collector -p 9995` |
| 5 | 3. 使用 `netflow.parse_packet()` 解析捕获的流数据。 |
| 6 | 4. 分析流量,检测以下内容: |
| 7 | - 端口扫描(Port scanning):单一源地址扫描同一端口的大量目标 |
| 8 | - 数据外泄(Data exfiltration):向异常目标发送的高字节数出站流量 |
| 9 | - C2 信标(C2 beaconing):具有固定间隔的周期性连接 |
| 10 | - 容量异常(Volumetric anomalies):超出基线阈值的流量峰值 |
| 11 | 5. 生成按优先级排列的发现报告。 |
| 12 | |
| 13 | ```bash |
| 14 | python scripts/agent.py --flow-file captured_flows.json --output netflow_report.json |
| 15 | ``` |
| 16 | |
| 17 | ## 示例 |
| 18 | |
| 19 | ### 解析 NetFlow v9 数据包 |
| 20 | ```python |
| 21 | import netflow |
| 22 | data, _ = netflow.parse_packet(raw_bytes, templates={}) |
| 23 | for flow in data.flows: |
| 24 | print(flow.IPV4_SRC_ADDR, flow.IPV4_DST_ADDR, flow.IN_BYTES) |
| 25 | ``` |