mcpField
N
netflows

netflows

github.com/brownfinesecurity安全87544 次安装21 周前更新
代码仓库

关于 netflows

netflows 从 PCAP 或 PCAPNG 文件提取 TCP、UDP 流,并利用抓包中的 DNS 响应解析主机名。它适用于网络调查和物联网设备通信目的地分析。

主要功能

  1. 01提取 TCP 和 UDP 流
  2. 02从 DNS 响应建立解析表
  3. 03将 IP 地址映射到主机名
  4. 04按源 IP 筛选流量
  5. 05输出文本、JSON 或精简列表

适用场景

  1. 01梳理物联网设备访问的服务
  2. 02调查事件期间联系的目的地
  3. 03发现遥测和跟踪端点
  4. 04整理防火墙允许或阻止列表

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/brownfinesecurity/iothackbot --skill netflows

安装后在 Claude Code 中输入/netflows确认已加载。

详细介绍

NetFlows - 带 DNS 解析的网络流提取器

你将使用 netflows 工具帮助用户从数据包捕获文件中提取和分析网络流。

工具概览

NetFlows 可分析 pcap/pcapng 文件,以便:

  • 提取唯一的 TCP 和 UDP 流(目标 IP:端口对)
  • 根据捕获文件中的 DNS 响应构建 DNS 解析表
  • 在可能的情况下自动将 IP 地址解析为主机名
  • 按源 IP 地址筛选流
  • 生成所有已联系网络目标的摘要

这对于 IoT 设备分析尤其有用,可帮助了解设备与哪些外部服务通信。

说明

当用户要求分析网络流、提取目标,或识别设备连接的主机时:

  1. 收集需求:

    • 获取 pcap/pcapng 文件路径
    • 询问是否要按特定源 IP 筛选(例如 IoT 设备的 IP)
    • 确定首选的输出格式
  2. 执行分析:

    • 使用 iothackbot bin 目录中的 netflows 命令
  3. 解读结果:

    • 说明已解析的主机名及其意义
    • 指出可能需要进一步调查的未解析 IP
    • 着重说明有趣的模式(云服务、P2P 连接等)

用法

基本分析

分析 pcap 文件并显示所有流:

netflows capture.pcap
按源 IP 筛选

提取来自特定设备的流:

netflows capture.pcap --source-ip 192.168.1.100
多个文件

分析多个捕获文件:

netflows capture1.pcap capture2.pcapng
输出格式
# Human-readable colored output (default)
netflows capture.pcap --format text

# Machine-readable JSON
netflows capture.pcap --format json

# Minimal output - just hostname:port list
netflows capture.pcap --format quiet

参数

输入:

  • pcap_files:一个或多个要分析的 pcap/pcapng 文件(必需)

筛选:

  • -s, --source-ip:筛选源自此 IP 地址的流

输出:

  • --format text|json|quiet:输出格式(默认:text)
  • -v, --verbose:启用详细输出

示例

分析 IoT 设备流量:

netflows iot-capture.pcap --source-ip 192.168.1.50

仅获取流列表以供脚本使用:

netflows capture.pcap -s 10.0.0.100 --format quiet

用于解析的 JSON 输出:

netflows capture.pcap --format json | jq '.data[].flow_summary'

输出信息

文本格式包含:

  • 发现的 DNS 映射(IP -> 主机名)
  • 带有主机名解析状态的 TCP 流
  • 带有主机名解析状态的 UDP 流
  • 汇总的流摘要(主机名:端口或 ip:端口)

JSON 格式包含:

  • dns_mappings:IP 到主机名映射的字典
  • tcp_flows:TCP 流对象列表,包含主机名、IP、端口
  • udp_flows:UDP 流对象列表,包含主机名、IP、端口
  • flow_summary:包含“主机名:端口”或“ip:端口”字符串的列表
  • dns_queries:已查询 DNS 域名的列表
  • total_packets:分析的数据包数量

使用场景

  1. IoT 设备画像分析:识别 IoT 设备通信的所有云服务和端点
  2. 网络取证:列举事件期间联系过的目标
  3. 隐私分析:发现遥测和跟踪端点
  4. 创建防火墙规则:生成端点允许列表/阻止列表
  5. 恶意软件分析:识别 C2 服务器和数据外传目标

重要说明

  • 此工具使用同一 pcap 文件中发现的 DNS 响应解析主机名
  • 捕获文件中没有对应 DNS 查询的 IP 将显示为“未解析”
  • 支持 pcap 和 pcapng 格式
  • 无需提升权限(不同于实时捕获工具)
  • 处理大型 pcap 文件可能需要一些时间

评论

支持 Markdown