代码改变世界

adb对安卓app进行抓包(ip连接设备)

2020-05-15 01:41  清风软件测试开发  阅读(4948)  评论(0编辑  收藏  举报

adb对安卓app进行抓包(ip连接设备

一,首先将安卓设备的开发者模式打开,提示允许adb调试

二,自己的笔记本要和安卓设备在同一个网段下(同连一个WiFi就可以了)

三,在笔记本上根据ip来连接安卓设备:adb connect 192.168.1.11

 

 输入adb devices查看刚刚连接的设备

 

 

 

四,查找包名

 输入adb shell 进入刚刚连接的device的shell,再输入pm list packages查看安卓设备安装了哪些包

也可以根据关键字查找包名pm list packages | grep tencent

 

 五,抓取app包的数据请求

1,抓取socket请求:

我们先使用adb shell "ps|包名"  如:adb shell "ps|grep com.dangdang.buy2",过滤包名的方法:adb shell dumpsys activity | find "mFocusedActivity"

  此命令可以过滤出该应用的进程号PID,如图:

 

 接着执行adb shell 进入系统内部,执行logcat | grep PID,这里的pid是4763

 

 最后的结果:(这是对socket进行的抓取)

 

 如果中文出现乱码,可以在cmd中执行“chcp 65001”命令,将编码改为UTF-8,防止中文显示乱码问题,

如果出现chcp不是内部或者外面命令就需要在path中添加:C:\WINDOWS\system32

 2,抓取http或者https请求:

  步骤1,获取包名

  步骤2,过滤进程

  步骤3,adb shell  logcat |grep 4763 | grep https > d:\test\tv.txt (过滤https直接把日志写入到指定的文档中)

  过滤http请求也是一样的adb shell  logcat |grep 4763 | grep http > d:\test\tv.txt

  还可以添加时间进行抓取:adb shell  "logcat -v threadtime |grep 5303 | grep https" > d:\test\tv.txt