雷电模拟器配合Burpsuite抓取模拟器APP数据+使用adb清空和导入联系人 技术文章

前言:

    我们在做渗透测试的时候,我们往往需要使用burpsuite抓取 APP流量,需要抓取APP数据进行测试,因为往往通过APP都能有不错的发现,但是为了方便测试,我们如果没有安卓机的情况下,使用模拟器就是一个不错的选择,其一不需要另行准备安卓手机,其二也可以避免一些垃圾APP给自己造成不必要的麻烦,如锁机APP或者是近段时间闹得沸沸扬扬的送给最好的TA,这些APP。

    需要准备的软件如下:雷电模拟器、burpsuite、需要测试的APP,雷电模拟器和 APP 直接去官网下载安装即可,burpsuite 相关软件资料可以查看我在 GitHub 上面的资源,应该还算全面,同时也希望大家贡献好的插件或则是文章,我会收录进去,最后夹带点私货(: 帮我点点star啊!谢谢!

总的步骤大致分为以下几步,其中每一步我都会在下面都有详细的图文介绍:1)电脑端设置好 burpsuite 的代理;2)模拟器设置代理;3)模拟器下载并安装证书并使用Android浏览器访问SSL网站验证SSL代理是否成功;4)打开APP开始抓取流量测试

0x01 电脑端设置好 burpsuite 的代理

    首先我们通过 windows+R 运行 cmd, 通过 ipconfig /all 命令 找到自己的网卡的 IPv4 地址,这一步也可以根据自己的习惯了操作,比如通过 控制面板\网络和 Internet\网络连接 或 其他方式。我这里的 IPv4 地址是 192.168.6.244 ,这个 IPv4 地址记住,后面设置 burpsuite 的代理和 模拟器设置代理 都需要用到。

ipconfig.png

确认自己的 IPv4 地址后就可以设置 burpsuite 的代理设置了:绑定监听端口(Bind to port) 8080 (端口必须是未占用的端口,你可以设置高位端口),绑定监听地址( Bind to address) 我们选择 Specific address 192.168.6.244 在列表里选择刚刚查到的 IPv4 地址。自此 burpsuite 就设置好了。

burp-proxy-setting.png

0x02 模拟器设置代理

    模拟器设置代理需要修改 设置 --> WLAN --> 鼠标左键长按 tplink --> 修改网络 --> 代理选择手动 --> 代理服务器主机名填写 刚刚的 IPv4 地址 192.168.6.244,代理服务器端口 填写刚刚 burpsuite 设置的 8080 ,然后保存,现在使用 Android 浏览器打开 http 网站在 burpsuite 就可以看到流量了。

android-wlan-proxy1.png 

android-wlan-proxy2.png

0x03 模拟器下载并安装证书并使用Android浏览器访问SSL网站验证SSL代理是否成功

    如上面设置后好,就会发现打开使用了SSL证书的 https 站点会提示: 该网站的安全证书有问题。not-install-cert.png

burpsuite 此时肯定是不能抓到流量的,因此我们需要给模拟器配置 burpsuite 的证书,我们使用 Android 浏览器访问 http://burp/ 或者 http://192.168.6.244:8080/ 即可看到 burpsuite 的证书下载页面,我们点击 CA Certificate 即可下载证书:

android-download-cert.png

一般默认在 文件管理器的 Download 目录下 文件名为 cacert.der 我们需要把它后缀改为pem,即重名为 cacert.pem 

install-cert-error.pngcert-download-path.png 

然后打开 设置 --> 安全 --> 从SD卡安装(从SD卡安装证书),找到下载的证书路径,默认就是 内部储存的 Download目录下,我们刚刚重命名过的证书,如果不重命名,Android 是不识别的。

 install-cert.png



选择证书后,如果提示 需要先设置锁屏 PIN 或 密码才能使用凭据,就先去设置好 PIN 或 密码

seting-ping.png 

然后根据提示填写 证书名字、凭据用途默认 WLAN 即可,然后确定,

install-cert-rename.png 

install-cert-success.png

系统会提示安装成功!我们也可以从 设置 --> 安全 --> 信任的凭据 --> 用户 可以看到我们安装的 PortSwigger。最后使用浏览器访问 https://www.baidu.com burpsuite 应该就可以抓到流量了。

 check-cert.png

0x04 打开APP开始抓取流量测试

    打开APP开始抓取流量测试,如果APP没有做其他的防护措施比如加固等等,burpsuite 应该就可以看到流量了。如果不能抓到 APP 流量但是可以抓取 Android 浏览器流量,这个时候就需要 脱壳APP或者是借助 Frida 这些来协助抓取,下次写。

all-done.png 

finish.png



下面简单说一下 如何通过雷电模拟器的 adb.exe 来直接执行命令进行 清空和导入联系人到模拟器的通讯录(比如批量生成一定范围的手机号,去做QQ好友/微信匹配等等,希望你看到了不作恶)。

雷电模拟器通讯录格式如下:

BEGIN:VCARD

VERSION:2.1

N:;1-300-000-0000;;;

FN:1-300-000-0000

TEL;CELL:1-300-000-0000

END:VCARD

BEGIN:VCARD

VERSION:2.1

N:;1-300-933-0788;;;

FN:1-300-933-0788

TEL;CELL:1-300-933-0788

END:VCARD

其他模拟器或手机的通讯录格式,可以通过手动添加一个号码,然后导出到 sdcard 查看,即可使用python这些小脚本批量生成,不做过多的陈述。

雷电模拟器 adb 清空、导入联系人如下:

# 列出设备

PS D:\ChangZhi\dnplayer2> .\adb.exe  devices

List of devices attached

emulator-5554   device

127.0.0.1:5555  offline

# 先清除原通讯录联系人

PS D:\ChangZhi\dnplayer2> .\adb.exe -s emulator-5554 shell pm clear com.android.providers.contacts

Success

# 将正确格式的通讯录文件contacts.vcf, 导入android模拟器中, 并等待模拟器刷新几秒钟

PS D:\ChangZhi\dnplayer2> .\adb.exe -s emulator-5554 push contacts.vcf /sdcard/contacts.vcf

2596 KB/s (12978 bytes in 0.004s)

PS D:\ChangZhi\dnplayer2> sleep 3

#从文件中, 将联系人import到android模拟器的通讯录中, 导入过程耗时依联系人数量而定.

PS D:\ChangZhi\dnplayer2> .\adb.exe -s emulator-5554 shell am start -t "text/x-vcard" -d "file:///sdcard/contacts.vcf" -a android.intent.action.VIEW com.android.contacts

Starting: Intent { act=android.intent.action.VIEW dat=file:///sdcard/contacts.vcf typ=text/x-vcard pkg=com.android.contacts }

PS D:\ChangZhi\dnplayer2> sleep 10

标签: burpsuite

admin 发布于  2019-9-30 21:44