APP渗透测试的前置环境配置(一)

配置代理抓包

配置模拟器

首先官网下载逍遥模拟器。下载地址:https://www.xyaz.cn/

安装好模拟器之后,打开设置界面

a. 开启独立系统盘

先开启独立系统盘这个功能,这样才可以写入,不然就只有读权限

b. 开启Root模式

2.准备ADB

逍遥模拟器MEmu路径下自带adb调试,雷电模拟器在LDPLayer9文件夹下

当然也可以自己单独下载

3.制作Burp证书

导出burp证书

安卓手机证书后缀为cer格式,电脑证书后缀为der格式

导出到桌面就好,命名为android.der

导出的证书位置在burp的目录下

把证书传到kali

把证书传到kali

修改证书格式

将 DER 格式证书转换为 PEM 格式

1
openssl x509 -inform DER -in android.der -out bp.pem

  • 作用:将 android.der(DER 格式的证书)转换为 PEM 格式,并保存为 bp.pem。
  • 说明:DER 是二进制格式,PEM 是 Base64 编码的文本格式,包含 —–BEGIN CERTIFICATE—– 和 —–END CERTIFICATE—– 标记。

计算证书的 subject 哈希值

1
openssl x509 -inform PEM -subject_hash_old -in bp.pem | head -1

  • 作用:从 bp.pem 中读取证书,计算其 subject 的哈希值(使用旧版 MD5 算法),并输出第一行(即哈希值)。
  • 说明:运行此命令后,你会看到一个哈希值,例如 9a5ba575(实际值取决于你的证书内容)。记下这个哈希值,用于下一步。
  • 将 PEM 证书保存为哈希值命名的文件
1
cat bp.pem > 9a5ba575.0

  • 作用:将 bp.pem 的内容复制到以哈希值(例如 9a5ba575)加上 .0 后缀的文件名。
  • 说明:将 替换为第 2 步输出的实际哈希值。例如,如果第 2 步输出 9a5ba575,则命令为: bash收起自动换行运行复制cat bp.pem > 9a5ba575.0

找到刚刚建立的结尾为.0的文件9a5ba575.0,传输回物理机

4.导入证书到安卓模拟器

这里保持模拟器打开,然后把刚才生成的9a5ba575.0文件放入到adb.exe的路径下

然后打开cmd,执行以下命令

1
2
3
4
adb root
adb remount
adb push 9a5ba575.0 /sdcard
adb shell

这里一定要输入 adb remount 这条命令,不然可能无法写入,如果 adb remount 这条命令失败,看看是否开启了独立系统盘。

进入shell后,进入到sdcard目录下,查看是否导入成功

然后把证书移动到系统证书根目录下, 进入到根目录检查是否存在文件

1
2
mv /sdcard/9a5ba575.0  /system/etc/security/cacerts
ls | find 9a5ba*

已经成功导入进去,下一步修改权限,给文件读写权限,

1
chmod 644 /system/etc/security/cacerts/9a5ba575.0

重新打开模拟器,进入设置-安全性和位置信息-加密与凭据-信任的凭据

发现成功导入证书

5.设置代理

** 设置Burp代理**

这里代理设置为自己的ip地址,不要设置成127.0.0.1,不然模拟器流量不从这个端口走

设置模拟器代理

首先打开WIFI设置

代理设置为手动,这里要和主机电脑ip抓包软件设置的端口对应上

6.抓包测试

打开百度,测试抓包

成功抓取数据包,可以进行测试了

抓不到包原因

没有限制过滤的抓包问题

  1. 工具证书没配好
  2. app走的不是http/https

有限制过滤的抓包问题

  1. 反模拟器调试
  2. 反代理VPN
  3. 反证书监测