首页/安全/漏洞与攻击面速查/tcpdump 抓包佐证扫描与异常流量
扫描与验证方法50 条

tcpdump 抓包佐证扫描与异常流量

在授权范围内抓包可核验扫描流量的来源、速率与目标端口,也用于排查『是否真的有异常外联』;抓包文件按敏感数据管理。

漏洞与攻击面速查安全更新于 2026-10-13

抓包能证明什么

在授权范围内抓包可以核验具体事实:扫描流量的来源地址、速率与目标端口,是否真的存在异常外联,某端口上跑的到底是哪个服务。相对于日志与告警的二手信息,抓包是接近原始事实的证据。但抓包文件包含业务内容,必须按敏感数据管理。

基本信息

常用选项-i 网卡、-nn 不解析名称、-c 数量、-w 写文件、-r 读文件
过滤表达式host、port、net、tcp[tcpflags] 组合
权限要求需要 root 或相应能力位
存储要求pcap 文件按敏感数据加密留存并设保留期
交叉印证与边界防火墙、云流量日志比对

典型使用场景

  • 扫描核验:确认告警中的扫描流量是否真实存在及其速率
  • 外联排查:核实主机是否真的在向外部地址发起连接
  • 服务辨认:对端口返回的原始指纹做人工判断
  • 协议排障:确认连接建立在哪一步失败(握手、升级还是应用层)
  • 证据留存:为安全事件提供可复核的流量记录

常用抓包命令

常用抓包命令
tcpdump -i eth0 -nn 'host 192.0.2.10 and tcp port 443' -c 200 -w scan.pcap
tcpdump -i eth0 -nn 'tcp[tcpflags] & tcp-syn != 0' -c 500       # 观察 SYN 扫描特征
tcpdump -i any -nn -s 0 'tcp port 22' -w ssh.pcap                # 完整包长抓取
tcpdump -r scan.pcap -nn | head -n 20                            # 回放读取
# 抓包与实时查看并存:加 -l 让输出行缓冲,便于管道处理

常用过滤表达式

表达式含义用途
host 192.0.2.10指定主机聚焦单一来源或目标
tcp port 443指定端口核验某服务的流量
net 192.0.2.0/24指定网段观察整个网段的活动
tcp[tcpflags] & tcp-syn != 0仅 SYN 包识别扫描与连接尝试
not port 22排除某端口过滤自身管理流量干扰
抓包窗口与过滤器要精确:全量抓包在繁忙网络上会迅速吃满磁盘,也可能因丢包导致证据不完整,按需限定时间、主机与端口更实用。
抓包前确认授权与留存期限:文件包含业务数据与凭据片段,归档位置、加密方式与销毁时间都应有明确约定,避免形成一批无人负责的敏感数据。

易错点

  • 抓包文件放在共享目录未脱敏,业务流量内容随意外泄
  • 不设 -c 或时间限制直接抓包:磁盘写满,可能连带影响同机其他服务
  • 只看抓包不看边界日志:单一视角容易得出片面结论,两边对照才有说服力
  • 抓到含凭据的流量后未单独处理:文件长期留存,形成额外的数据泄露面

数据来源与参考

  • tcpdump 官方手册(过滤表达式与 -w/-r)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌