Android抓包

什么是抓包?

抓包(packet capture)就是将网络传输发送与接受的数据包进行截获、重发、编辑、转存,也用来检查网络安全,也经常进行数据截取

所以,抓包的目的是?

  1. 分析数据传输协议
  2. 定位网络协议的问题
  3. 从数据包中获取想要的信息
  4. 将截取到的数据包进行修改,伪造,重发

抓包的重要性

网络抓包,是Android应用逆向分析的重中之重,很多时候我们拿到一个APP,不知道从何入手分析,往往是从抓包开始,先弄清楚他与服务器通信的内容,如果一目了然,我们完全可以照搬,自行写一个程序来模拟,如果有一些加密字段和随机字段,也不用担心,我们可以从抓包中了解到一些关键的URL和session之类的信息,然后再反编译分析代码的时候,这些字符串可以帮助我们更快的定位关键代码所在之处。

抓包工具有很多,我采用的是Android studio自带的 Profiler
我今天就着重讲一下

如何使用Android Studio Profiler 抓包

我写了一个demo


Android抓包_第1张图片
image.png

一. 我们运行到手机上,并点击下方工具栏中的Profiler


image.png

二.选择设备及应用,并点击NetWork


Android抓包_第2张图片
image.png

三.抓取数据
Android抓包_第3张图片
image.png
Android抓包_第4张图片
image.png

就抓取到数据了


Android抓包_第5张图片
image.png

注意

可能会出现,使用profiler查看返回的json时,会返现里面的汉字都是乱码现象,解决办法:

  1. android studio -> help ->Edit Custom VM options
  2. 在这里加一个 JVM 启动参数
  3. -Dfile.encoding=UTF-8
  4. 重启studio就没乱码了

不过一个小问题,我运行到模拟器上没用,但运行到手机上就可以进行抓包了,如果大家有解决办法,可以在评论区告诉我!

今天的分享就到这里了!

你可能感兴趣的:(Android抓包)