安卓模拟器MUMU+tcpdump抓包Socket协议流量

fiddler抓包只捕获http/https流量,走Socket层的流量抓不到。要通过Wireshark来抓。

但Wireshark抓到的数据量有点大(浏览器/微信等流量全部一起抓),虽然Wireshark可以通过ip和端口过滤,通过ip过滤又容易漏掉。

所以考虑在mumu上安装tcpdump,通过tcpdump抓取mumu的所有流量包,扔给ai分析。

注意:已ROOT的手机才能运行tcpdump

在mumu上安装tcpdump:

mumu 模拟器是x86_64架构,所以要找x86_64的tcpdump,找了一圈只找到8年前的版本Releases · extremecoders-re/tcpdump-android-builds · GitHub

其他新版的都是linux用的或者android ARM架构的。

步骤:

1、先打开mumu的root开关,并把网络设置为桥接模式,以及开启USB调试。

2、把tcpdump文件放在adb.exe 所在目录下。执行

复制代码
# 查看所有连接的设备
adb devices

# 连接指定设备
adb connect 192.168.101.105:5555

# 上传tcpdump
adb push tcpdump /data/local/tmp/tcpdump

# 赋予执行权限
adb shell chmod 755 /data/local/tmp/tcpdump


# 测试是否能够运行 如果成功显示 tcpdump 版本信息,说明可执行文件兼容。
adb shell /data/local/tmp/tcpdump --version


# 查看抓包接口 正常情况下会列出 eth0、lo、any 等接口。
adb shell "su -c '/data/local/tmp/tcpdump -D'"


# 测试抓包 执行后,在 MuMu 中打开 App 或网页,产生网络流量。 这条命令会捕获 20 个数据包并自动退出。
adb shell "su -c '/data/local/tmp/tcpdump -i any -nn -s 0 -c 20'"

启动【开始抓包】:

复制代码
adb shell "su -c '/data/local/tmp/tcpdump -i any -nn -s 0 -U -w /data/local/tmp/capture.pcap'"

完成 App 操作后,在另一个 CMD 窗口执行:

复制代码
adb shell "su -c 'pkill -2 tcpdump'"

随后

复制代码
# 下载
adb pull /data/local/tmp/capture.pcap .


# 删除
adb shell rm -f /data/local/tmp/capture.pcap

# 如果提示文件不存在,说明清理成功;
adb shell "ls -lh /data/local/tmp/capture.pcap*"

# 确认存储空间恢复。
adb shell df -h /data/local/tmp

第3步:

把.pcap文件放入wireshark中分析 或直接交给ai分析

相关推荐
是个西兰花1 小时前
TCP套接字编程实战:从服务器搭建到多进程处理
服务器·网络协议·tcp/ip
zhangzeyuaaa2 小时前
Ruby `require` 完全指南:从 `$LOAD_PATH` 到 `require_relative`
服务器·前端·ruby
懂点Tech3 小时前
ctfshow MISC入门图片篇(信息附加):misc11解题思路
网络
charliejohn3 小时前
计算机考研 408 网络 Http协议综合题
网络
fei_sun3 小时前
RIB、FIB、MAC 、ARP 表
服务器·网络·macos
凌云若寒4 小时前
BarTender提示#807错误:无法在拥有其他许可证的Licensing Service上激活节点锁定的 Professional 版许可证 的解决办法
运维·服务器·前端·学习·软件需求
Julien20044 小时前
管理 Ansible 配置文件
linux·运维·服务器·ssh·学习方法
逐米时代4 小时前
远程运维诊断减少到场率
java·服务器·前端
pt10434 小时前
CML网络仿真入门-6(结):Cisco Modeling Labs 示例拓扑
服务器·网络