🚀 抓包流程

🔍 网络接口查看

查看可用的网络接口

1
2
3
4
5
# 查看网络接口信息
ifconfig

# 或者使用ip命令
ip addr show

常见网络接口:

  • wlan0 - WiFi接口
  • rmnet0 - 移动数据接口
  • eth0 - 以太网接口
  • lo - 回环接口

🎯 tcpdump命令详解

核心抓包命令

1
2
# 基本抓包命令
tcpdump -i <interface_name> -s 0 -w /sdcard/capture.pcap

参数说明:

  • -i <interface_name> - 指定网络接口(如wlan0)
  • -s 0 - 捕获完整数据包(不截断)
  • -w filename - 将数据写入文件
  • /sdcard/capture.pcap - 输出文件路径

📝 实际操作示例

1
2
3
4
5
6
7
8
# 示例1:抓取WiFi接口的所有数据包
tcpdump -i wlan0 -s 0 -w /sdcard/wifi_capture.pcap

# 示例2:抓取特定端口的数据包
tcpdump -i wlan0 -s 0 port 80 -w /sdcard/http_capture.pcap

# 示例3:抓取特定主机的数据包
tcpdump -i wlan0 -s 0 host 192.168.1.1 -w /sdcard/host_capture.pcap

📤 文件传输

第三步:传输pcap文件到电脑

1
2
3
4
5
# 使用adb pull命令传输文件
adb pull /sdcard/capture.pcap ./

# 或者指定具体路径
adb pull /sdcard/capture.pcap C:\captures\

🔬 Wireshark分析

第四步:使用Wireshark打开pcap文件进行分析

Wireshark分析要点:

  • 使用过滤器筛选特定协议:tcp, http, dns
  • 查看数据包详细信息和十六进制数据
  • 分析网络流量模式和异常行为
  • 导出特定会话或对象

🔧 高级技巧

🎛️ tcpdump过滤器

常用过滤条件

1
2
3
4
5
6
7
8
9
10
11
12
# 只抓取TCP协议
tcpdump -i wlan0 tcp -w tcp_only.pcap

# 抓取特定端口范围
tcpdump -i wlan0 portrange 80-443 -w web_traffic.pcap

# 抓取来自/到特定IP的数据包
tcpdump -i wlan0 src 192.168.1.100 -w from_host.pcap
tcpdump -i wlan0 dst 192.168.1.100 -w to_host.pcap

# 组合条件(HTTP和HTTPS流量)
tcpdump -i wlan0 'port 80 or port 443' -w web_all.pcap

📊 实时数据包监控

实时查看数据包(不保存文件)

1
2
3
4
5
6
7
8
9
10
11
# 实时显示数据包摘要
tcpdump -i wlan0 -n

# 显示详细的数据包内容
tcpdump -i wlan0 -A

# 显示十六进制和ASCII内容
tcpdump -i wlan0 -X

# 限制显示的数据包数量
tcpdump -i wlan0 -c 100

🐛 常见问题排查

🔴 权限问题

问题:Permission denied

解决方案:

  1. 确保设备已获得Root权限
  2. 使用su命令切换到超级用户
  3. 检查tcpdump工具是否正确安装

🟡 接口不存在

问题:指定的网络接口不存在

解决方案:
使用ifconfigip addr命令查看实际可用的网络接口名称

🔗 相关工具