安卓APP抓包解决方案(教程)

环境准备

  • kali
  • windows
  • burpsuite
  • 夜神模拟器 Android7.0以上 版本V7.0.2.2000
  • Charles
  • postern

工具简介

Charles

下载地址

Charles是一款非常强大的HTTP抓包工具,通过对该软件的设置让其成为系统网络访问服务器,即所有的网络访问都要通过该软件来完成,这样它就可以轻松获得所有HTTP、HTTPS的数据封包,监视所有的流量包括所有的浏览器和应用进程,方便开发人员查看计算机与Internet之间的所有通信。

Charles下载后有30天免费使用权限,过了之后可以选择重新下载或者购买,未激活的Charles每次只能开30分钟,需要再次手动开启。

Postern

下载地址1
下载地址2

Postern是一个Android下的全局代理工具。

详细配置

安装Postern

下载安装包后直接拖进模拟器中就会开始安装。

安卓APP抓包解决方案(教程)

安装Charles

一路下一步就ok,首先需要确保电脑里没有charles。

安卓APP抓包解决方案(教程)

破解方法

在线工具

随便输入一个字符串生成license key。

安卓APP抓包解决方案(教程)

 

打开charles-help填进去就行。

安卓APP抓包解决方案(教程)

如图:

安卓APP抓包解决方案(教程)

 

安卓导入Charles系统级证书

安卓APP抓包解决方案(教程)

生成一个.pem的证书,但是安卓系统级的证书是.0结尾的,所以需要转换一下,我们通过kali中的openssl来计算出文件名就可以。

此处参考文章:https://www.cnblogs.com/YenKoc/p/14376653.html

拷贝pem文件charles.pem到KALI系统的opt目录,使用命令:

openssl x509 -subject_hash_old -in charles.pem
mv charles.pem 3ce07b0d.0
openssl x509 -inform DER -outform PEM -text -in burp.der -out burp.pem
openssl x509 -subject_hash_old -in burp.pem
mv burp.pem 9a5ba575.0
如果是其他扫描器的证书,如crt格式的可以先把crt证书导入IE浏览器,然后从IE浏览器导出为cer格式的,cer在转换为pem,

转换命令为:

openssl x509 -inform der -in app.crt -out app.pem
openssl x509 -subject_hash_old -in app.pem
mv app.pem 009988ba.0

 

安卓APP抓包解决方案(教程)

# 3ce07b0d为上步中的hash值

接着通过adb shell来把文件传到/system/etc/security/cacerts/目录中

连接命令(如果使用mumu浏览器可以使用命令连接nox_adb.exe connect 127.0.0.1:7555

nox_adb.exe connect 127.0.0.1:62001
nox_adb.exe devices
安卓APP抓包解决方案(教程)
拷贝证书文件到/data/local/tmp,然后连接shell
nox_adb.exe push Q:\3ce07b0d.0 /data/local/tmp
nox_adb.exe shell 
su
安卓APP抓包解决方案(教程)

执行下面命令,进行拷贝证书到系统证书目录:

mount -o rw,remount -t auto /system
cp /data/local/tmp/3ce07b0d.0 /system/etc/security/cacerts
chmod 777 /system/etc/security/cacerts/3ce07b0d.0
安卓APP抓包解决方案(教程)

然后重启,输入reboot就可以。

几秒钟之后重启就可以发现凭据里有了charles的证书

重启之后点击安卓系统里面的设置>安全>信任的凭据>系统>

安卓APP抓包解决方案(教程)

burp导入Charles的证书

打开charles - help - ssl proxying

安卓APP抓包解决方案(教程)

输入密码,导出证书

安卓APP抓包解决方案(教程)

得到一个.p12的文件

安卓APP抓包解决方案(教程)
往burp中导入
安卓APP抓包解决方案(教程)

Charles工具配置

首先是proxy - proxy settings

安卓APP抓包解决方案(教程)

取消勾选windows proxy,因为我们不需要用来抓取windows的数据包。

安卓APP抓包解决方案(教程)

然后是proxy-ssl proxy settings

 

安卓APP抓包解决方案(教程)

ok完毕。

postern工具配置

打开软件左上角横杠可以看到选项列表。

安卓APP抓包解决方案(教程)

先配置代理

名称随便起,服务器地址为你自己的pc本机地址。

端口,类型要和之前charles上配置的一样,socks5模式。

安卓APP抓包解决方案(教程)

然后postern往下滑保存就行。

接着配置规则,全删了,配置一个就可以了。

安卓APP抓包解决方案(教程)

点击保存

安卓APP抓包解决方案(教程)
这样就配完了。
最下面那个是开关,要抓包的时候开启就可以,不抓包就关闭。
开启右上角会有个钥匙的图标。
安卓APP抓包解决方案(教程)
这时候我们就去访问百度去试试能不能抓到数据包。
安卓APP抓包解决方案(教程)

 

 

成功抓到。

联合burp

因为charles抓包能力强但是不好做修改数据包之类的操作,所以我们就再做一层代理到burp来方便我们渗透测试人员。

proxy - external proxy settings

 

安卓APP抓包解决方案(教程)

记得两个选项都要配置127.0.0.1:8080,因为我们的burp就是默认监听8080端口的,若不是8080,改成自己burp上监听的端口就可以了。

 

安卓APP抓包解决方案(教程)

测试结果

安卓APP抓包解决方案(教程)

成功抓到数据包,其他app自行去测试噢,据说能抓到90%以上的app的数据包......

证书导入BURP之后,后面BURP可能默认使用该证书,导致在物理机抓包HTTPS出现问题,可重新下载安装到系统,下载之后使用记事本打开查看证书是BURP内置还是你导入的chales如图:

安卓APP抓包解决方案(教程)

 

最后建议把burp内置证书也导入到安卓系统。

 

0x01 阅读须知
技术文章仅供参考,此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等(包括但不限于)进行检测或维护参考,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失,均由使用者本人负责。本文所提供的工具仅用于学习,禁止用于其他!!!
THE END
分享
二维码
海报
安卓APP抓包解决方案(教程)
环境准备 kali windows burpsuite 夜神模拟器 Android7.0以上 版本V7.0.2.2000 Charles postern 工具简介 Charles 下载地址 Charle……
<<上一篇
下一篇>>