SuperAPI AI 工具集

androidstudio-app-pentest-environment

安全与审计

查看项目

更新于 10-15 15:46

技能介绍

Android Studio App Pentest Environment Setup 是一套面向安卓应用安全测试的模拟器环境搭建方案,来自 reason-machines/security-skills 中的 Security Skills 集合。它旨在利用 Android Studio 自带的模拟器,配合 Magisk root、Frida 动态插桩、SSL/TLS 绕过以及相关安全测试工具,构建一个可进行移动应用渗透测试的完整环境。以下依据资料整理其主要内容。

一、用途 该项目用于搭建安卓移动应用的渗透测试环境,支持对应用进行运行时分析、网络流量拦截与安全测试。其核心目标是获得一个可 root、可插桩、可绕过证书固定、并能规避反检测的受控模拟器环境。

二、前置条件

  • Android Studio:需从 developer.android.com 获取最新版本。
  • SDK Platform-Tools:ADB 和 fastboot(随 Android Studio 安装)。
  • 代理工具:Burp Suite、Charles 或 mitmproxy。
  • Git:用于克隆工具仓库。

三、环境搭建步骤

  1. 安装 Android Studio 与 SDK:安装后配置环境变量(如 ANDROID_HOME、PATH),并可通过 adb version 验证 ADB 是否安装成功。
  2. 创建 Android 虚拟设备(AVD):通过 Android Studio 的 Virtual Device Manager 创建,推荐配置为 Pixel 9 Pro、系统镜像 API 36(Android 16)、Google APIs、arm64-v8a、RAM 4096 MB、内部存储 16 GB、VM Heap 512 MB,并使用 Cold Boot 启动选项。也可用 emulator -list-avds 列出可用 AVD,并通过命令行启动。
  3. 使用 Magisk 获取 root 权限,提供两种方法:
    • 方法 A(推荐):使用 rootAVD 脚本,克隆 rootAVD 仓库并下载 Magisk APK 后,通过脚本对指定系统镜像进行 root。
    • 方法 B(手动补丁):以可写系统启动模拟器,通过 ADB 获取 root、推送 ramdisk 到设备,在 Magisk 应用中修补文件后拉取并替换原始 ramdisk,再重启模拟器。
  4. Magisk 配置:启用 Zygisk(许多模块所需)、隐藏 Magisk 应用(随机化包名)、配置 DenyList 以对目标应用隐藏 root。
  5. 安装 ZygiskNext(改进版 Zygisk)、Shamiko(对检测隐藏 Magisk,可启用白名单模式)、LSPosed 框架。
  6. 安装 Frida:下载适用于 Android 的 Frida server,推送到设备并赋予执行权限,运行 Frida server;在主机上安装 frida-tools,并通过 frida-ps -U 验证连接。

四、SSL/TLS 证书固定绕过 资料提供了三种方式:

  1. HTTP Toolkit 模块:作为 Magisk 模块安装,并在模拟器中配置代理(主机 IP 与端口,如 8080)。
  2. Frida 通用脚本:资料给出 ssl-bypass.js 示例代码,涵盖 OkHttp3 CertificatePinner、X509TrustManager/SSLContext、Conscrypt 等绕过点,通过 frida -U -f 命令加载运行。
  3. JustTrustMe(LSPosed 模块):安装 APK 并在 LSPosed 中启用。 此外还提供安装系统 CA 证书的步骤:将证书转换为 PEM 格式、计算 subject_hash_old 哈希、重命名并推送到 /system/etc/security/cacerts/ 后重启。

五、常用 Frida 脚本 资料提供了列出已安装包(frida-ps -Uai)、Hook 方法绕过 root 检测(root-bypass.js)、导出应用内存信息(memory-dump.js)、拦截加密操作(crypto-hook.js)等示例。

六、ADB 命令参考 涵盖设备连接、root shell、包管理(安装/卸载/列出/查询路径)、文件操作、logcat、屏幕截图、Activity 管理以及网络代理设置等常用命令。

七、故障排查 针对模拟器无法启动、ADB 无法检测设备、Magisk 重启后失效、Frida server 连接失败、SSL 固定仍生效、应用启动崩溃等常见问题给出排查思路与命令。

八、最佳实践 包括:对 AVD 做重大更改前始终创建快照;使用 Cold Boot 让 Magisk 正确加载;保持 Magisk 与模块更新;逐步测试绕过技术;使用 ZygiskNext + Shamiko 提升检测规避;避免使用 Google Play 系统镜像,改用 Google APIs;安装绕过模块后清除应用数据;测试期间监控 logcat 以识别安全检查。

九、限制与注意事项 资料未提供关于授权范围、法律合规、具体适用范围或效果保证的说明;上述流程涉及 root、绕过证书固定与反检测,属于安全测试技术,实际使用需确保在合法授权范围内进行。资料中未提及收费、价格或平台限制等信息。参考资料包括 Magisk、rootAVD、Frida、LSPosed、ZygiskNext、Shamiko 等官方仓库链接。