hacktricks/src/mobile-pentesting/android-app-pentesting/make-apk-accept-ca-certificate.md

1.6 KiB
Raw Blame History

{{#include ../../banners/hacktricks-training.md}}

有些应用程序不喜欢用户下载的证书,因此为了检查某些应用的网络流量,我们实际上需要反编译应用程序,添加一些内容并重新编译它。

自动

工具 https://github.com/shroudedcode/apk-mitm自动 对应用程序进行必要的更改,以开始捕获请求,并且还会禁用证书固定(如果有的话)。

手动

首先我们反编译应用: apktool d *file-name*.apk

然后我们进入 Manifest.xml 文件,向下滚动到 <\application android> 标签,如果没有以下行,我们将添加它:

android:networkSecurityConfig="@xml/network_security_config"

添加前:

添加后:

现在进入 res/xml 文件夹,创建/修改一个名为 network_security_config.xml 的文件,内容如下:

<network-security-config>
<base-config>
<trust-anchors>
<!-- Trust preinstalled CAs -->
<certificates src="system" />
<!-- Additionally trust user added CAs -->
<certificates src="user" />
</trust-anchors>
</base-config>
</network-security-config>

然后保存文件退出所有目录并使用以下命令重建apk apktool b *folder-name/* -o *output-file.apk*

最后,您只需签署新应用程序阅读此页面的此部分 Smali - Decompiling/[Modifying]/Compiling 以了解如何签署它

{{#include ../../banners/hacktricks-training.md}}