tcpdump手机抓包
Posted 技术改变命运Andy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了tcpdump手机抓包相关的知识,希望对你有一定的参考价值。
####
这个没有图形界面,可以在Linux服务器上运行,这是比wireshark优秀的地方,
###
首先手机root
####
然后adb要能连接手机
####
下载tcpdump
下载连接如下:
http://www.androidtcpdump.com/android-tcpdump/downloads
#####
copy到手机上(root过)
然后将下载到的tcpdump拷贝到手机某个目录下
adb push /Users/liqian/Downloads/tcpdump /storage/sdcard0/tcpdump
####
安装到系统目录
进入adb shell,然后再获取su权限.
cp /sdcard/liqian/tcpdump /system/bin/tcpdump
这一步copy如果报错:adb向手机写入文件,Read-only file system
执行这个命令:mount -o rw,remount /system
####
给tcpdump添加执行权限
命令:chmod 755 /system/bin/tcpdump
####
执行tcpdump
1|shell@ja3gduosctc:/system/bin $ su
root@ja3gduosctc:/system/bin # ./tcpdump
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on wlan0, link-type EN10MB (Ethernet), capture size 262144 bytes
####
使用tcpdump抓包
代码如下:
tcpdump -i wlan0 -s 0 -w /sdcard/1.pcap
可以结束时使用Ctrl+c快捷键让tcpdump结束抓包,抓到数据会存到/sdcard/1.pcap文件内
###
重新打开一个终端(Terminal),执行如下命令
复制代码代码如下:
adb pull /sdcard/1.pcap .
###
装Wireshark并分析pcap文件
双击 1.pcap文件,1.pcap文件会自动被Wireshark打开。在Wireshark的Filter内输入如下一些过滤条件,可以更加方便地分析数 据来源。
tcp.port == 80 //过滤来自80端口的TCP数据
udp.port == 12345 //过滤来自12345端口的UDP数据
ip.src == 192.168.0.1 //过滤源IP为192.168.0.1的数据
ip.dst == 192.168.0.1 //过目的IP为192.168.0.1的数据
####
用Tcpdump抓包
在安卓手机上抓包
1、将手机root并连上,记得开启开发者选项,并选择传输文件
2、将tcpdump程序拷到手机里面,可以直接在电脑上操作,也可以用adb
3、使用adb操作手机内核,安卓内核基于linux内核,adb就是用来进入这个内核的
- win+R,进入adb所在文件夹
- adb push c:/Desktop/tcpdump /data/local/tcpdump
- 修改tcpdump权限
adb shell su chmod 777 /data/local/tcpdump
4、抓包
cd /data/local tcpdump -p -vv -s 0 -w /sdcard/capture.pcap
在linux内也可以用tcpdump抓包
sudo apt-get install tcpdump tcpdump -w ~/Downloads/capture.pcap
以上是关于tcpdump手机抓包的主要内容,如果未能解决你的问题,请参考以下文章