博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android抓包方法(二)之Tcpdump命令+Wireshark
阅读量:5051 次
发布时间:2019-06-12

本文共 1809 字,大约阅读时间需要 6 分钟。

Android抓包方法(二)

之Tcpdump命令+Wireshark

 

前言

做前端测试,基本要求会抓包,会分析请求数据包,查看接口是否调用正确,数据返回是否正确,问题产生是定位根本原因等。
学会抓包分析是测试人员必备的功课之一。
最先想的基本上都会是Fiddler代理抓包,但Fiddler有局限,如果APP不支持代理呢?比如邮箱是Imap协议呢?好吧,我们换个思路,
安卓是基于linux,那么linux的抓包工具命令是不是也能试用呢?本文主要对tcpdump进行抓包举例。

 

转载请注明出处
作者:Findyou
地址:
http://www.cnblogs.com/findyou/p/3491035.html

 

 

[目录]

1、抓包原理

tcpdump(需Root用户运行)拦截和显示发送或收到过网络连接到该机器的TCP/IP和其他数据包。简单说就监控手机进出网络数据。 

不明觉历啊....

官方网站: 
(Android手机适用的另处下载)

 

2、方法优劣

[优点]:
1).手机数据包无遗漏

 

[缺点]:
1).基本只能针对Android手机
2).不能实时抓包
3).电脑需要安装Android SDK
4).电脑需要安装Wireshark
5).测试手机需要获取root权限
6).测试手机需要安装tcpdump软件

 

3、安装准备

1).手机获得root权限

a.目前Root工具很多,随便下个操作一下即可,都傻瓜式的。比如什么刷机精灵、360一键ROOT、百度等等

 

2).电脑安装Android SDK  

a.下载地址 

b.解压下载的文件,再配置环境变量即可,具体请问谷哥或度娘,不再另做说明。

 

3).手机安装tcpdump软件  

a.下载地址 

4、工具安装

1).Android手机USB连接电脑,打开Windows命令提示符窗口;

2).检查手机连接是否正常; 

adb devices   
#检查手机是否已连接

*执行记录*:

注1:已检查到手机连接正常

问题1:adb devices不可用      解决:检查环境变量是否配置正确。

问题2:检不到手机为空           解决:1、驱动是否安装;2、如有装腾讯手机管家,把tadb.exe进程给卡擦掉。

   

3).adb shell  进入手机修改  /data/local/  目录的权限为所有用户可写;

adb shell   
#登入手机
su          
#切换Root用户
chmod 777 /data/local/    
#修改目录权限,修改后Ctrl+C退出adb shell

4).将tcpdump程序copy至android手机;

adb push E:\tcpdump /data/local/  
#tcpdump文件存放在E盘根目录,/data/local/为手机目标路径

 

5).进入手机修改tcpdump权限,增加可执行权限;

adb shell   
#登入手机
su          
#切换Root用户
chmod 777 /data/local/tcpdump    
#增加可执行权限

*执行记录*(第3步至第5步)

注:/data/local/为了安全起见,建议把权限改回原先权限

5、实例

ThinkDrive抓包实例

二期测试时,APP已不支持代理,抓不到数据包,测试无法准确知道是服务器问题还是APP问题,此处省略N字...以表对研发的诅咒。开玩笑的,大家目的都是为了版本质量提高,更加完善。下文以登录为例,进行演示。

 

1).连接手机,切换Root用户,执行抓包命令

adb shell   
#登入手机
su          
#切换Root用户
/data/local/tcpdump -p -vv -s 0 -w /sdcard/ThinkDrive.pcap   
#执行抓包命令,结果保存到SD卡ThinkDrive.pcap文件中

 

2).APP操作,生成请求数据

注:如果操作完成,不需要再抓包,则按Ctrl+C中断抓包退出

 

3). 导出抓包结果至电脑

adb pull /sdcard/ThinkDrive.pcap E:/  
#前为手机中文件及存放路径,后为电脑E盘根目录

 

 

4). 使用Wireshark等工具分析抓包文件ThinkDrive.pcap 

 

注:Wireshark工具使用请Google或百度

 

 

 

转载请注明出处:

转载于:https://www.cnblogs.com/findyou/p/3491035.html

你可能感兴趣的文章
iOS 8 地图
查看>>
20165235 第八周课下补做
查看>>
[leetcode] 1. Two Sum
查看>>
iOS 日常工作之常用宏定义大全
查看>>
PHP的SQL注入技术实现以及预防措施
查看>>
MVC Razor
查看>>
软件目录结构规范
查看>>
Windbg调试Sql Server 进程
查看>>
linux调度器系列
查看>>
mysqladmin
查看>>
解决 No Entity Framework provider found for the ADO.NET provider
查看>>
SVN服务器搭建和使用(三)(转载)
查看>>
Android 自定义View (三) 圆环交替 等待效果
查看>>
设置虚拟机虚拟机中fedora上网配置-bridge连接方式(图解)
查看>>
HEVC播放器出炉,迅雷看看支持H.265
查看>>
[置顶] Android仿人人客户端(v5.7.1)——人人授权访问界面
查看>>
Eclipse 调试的时候Tomcat报错启动不了
查看>>
【安卓5】高级控件——拖动条SeekBar
查看>>
ES6内置方法find 和 filter的区别在哪
查看>>
Android入门之文件系统操作(二)文件操作相关指令
查看>>