Network Protocol Analyzer 网络协议分析器

捕获和分析网络流量的工具。也叫 Packet Sniffer(抓包器)。

Packet Sniffing 的区别:

  • Packet Sniffing = 动作/实践(抓包这件事)
  • Network Protocol Analyzer = 工具(用来做这件事的软件)

主流工具

工具用途
Wireshark业界事实标准,GUI,功能强大,免费
tcpdump命令行,服务器常用,Wireshark 的”叔叔”
tsharkWireshark 的命令行版
Microsoft Network Monitor / netmonWindows 平台
Mitmproxy专门做 HTTP/HTTPS 中间人代理分析
Burp SuiteWeb 应用安全测试,集成抓包

合法用途

  • 网络故障排查 —— 为什么这个连接不通?
  • 性能分析 —— 哪一步慢?
  • 协议学习 —— 看到真实的 tcp/udp/http 数据包
  • 安全监控 —— 内网异常流量
  • 合规审计 —— 检测数据外传

攻击用途

  • 抓密码(明文协议 HTTP/Telnet/FTP)
  • 偷 cookie / session token
  • 解读未加密的内部协议
  • 配合 中间人攻击 篡改数据

关键技术细节

  • 混杂模式(Promiscuous Mode) —— 让网卡接收所有流量,不只是发给自己的
  • Switch 限制 —— 现代 交换机 默认隔离流量,所以 被动嗅探 只能看到自己的流量
  • 端口镜像(Port Mirroring) —— 运维合法办法:配置交换机把某端口流量复制到分析端口

防御

  • 加密一切 —— https / ssh / sftp / vpn 让抓包内容看不懂
  • 网络监控告警 —— 检测异常混杂模式
  • 物理网络访问控制 —— 不让攻击者接入