APK逆向后到底能看到什么?这份\"看文件\"指南请收好"

admin 2026-10-16 09:34:33 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

APK 逆向后到底能看到什么?这份\"看文件\"指南请收好

原创

是老A
是老A

老A搞安全

2026年9月24日 07:44
贵州

在小说阅读器读本章

去阅读

在公众号小说中沉浸阅读

一位深耕网络安全的老兵,目前是一家安全公司的技术分管,擅长渗透测试及安全培训方向,老A的愿望是大家没烦恼,一切顺心!

上面这张图,是用apktool解包后的典型结构,如果用 jadx,它不产出文件树,而是直接在界面里分四个视图:Java 源码、Smali、资源、Manifest

工具虽然不同,但看的\"内容\"是一样的

很多人第一次逆向 APK,解包后面对几百个文件夹和上万行 smali,第一反应是懵的

逆向的核心不是\"读所有代码\",而是快速定位关键文件,翻找有用的信息进一步利用

这里,我们重点看些啥呢?

  1. AndroidManifest.xml

这是整个 App 的\"核心\",必看这几项:

  • package —— 包名,判断是不是重打包的马甲
  • `` —— 自定义 Application 类,加壳入口通常在这
  • **`** —— 所有界面,注意android:exported=\"true\"` 的组件
  • <service> / <receiver> / <provider> —— 后台组件和跨进程通信入口
  • <uses-permission> —— 权限,异常组合(如短信+网络)是恶意软件信号
  • android:debuggable —— 是否可调试,逆向时常手动改成 true

2. smali/ 或 Java 源码

重点盯这些类和方法:

  • Application 子类 —— attachBaseContext() 和 onCreate(),加壳、反调试、环境检测常在这
  • 网络请求 —— OkHttp、Retrofit、HttpURLConnection 的调用点,找 API 地址和加密参数
  • 加密/签名 —— Cipher、MessageDigest、Mac、Signature,找密钥和算法
  • Native 方法声明 —— 带 native 关键字的,说明逻辑在 .so 里
  • 反射调用 —— Class.forName、getDeclaredMethod,混淆和壳常用
  • 动态加载 —— DexClassLoader、PathClassLoader,加壳/热更新标志

3. lib/ —— native 库

.so 文件里通常藏着:

  • 核心算法(加密、协议、授权校验)
  • 反调试、反 Hook 逻辑
  • 壳的解密逻辑

用 IDA/Ghidra 打开,重点看 JNI_OnLoad 和 Java_* 导出函数

4. assets/ —— 原始资源

不被 aapt 编译,常被用来藏东西:

  • 加密的 dex/jar(壳的 payload)
  • 配置文件、证书、模型文件
  • 数据库、字典

这是加壳 App 藏原始 dex 的常见位置

5. res/values/strings.xml —— 字符串

  • API 地址、密钥、提示语
  • 有时敏感信息直接硬编码在这

6. META-INF/ —— 签名信息

  • CERT.RSA —— 签名证书,对比官方版本判断是否重打包

然后,实战中需要注意的是

加壳 App 的特征:Manifest 里 Application 指向陌生类,assets/ 里有 .jar/.dex/.dat 等可疑文件,lib/ 里有名字奇怪的 .so(如 libjiagu.so、libshell.so)。这时 smali/ 里看到的全是壳代码,需要先脱壳

多 dex:大型 App 会有 classes2.dex、classes3.dex,jadx 自动合并展示,apktool 拆成 smali_classes2/ 等目录

资源混淆:有些 App 用 AndResGuard 把 res/ 路径改成 r/a/b,看资源会很难受,但功能不受影响

Kotlin 代码:jadx 对 Kotlin 的反编译质量不如 Java,会出现大量 Intrinsics 调用,读的时候要有心理准备

至此……顺利!!

⚠️ 法律声明:以上内容仅供安全学习和授权测试使用。未经授权的漏洞利用属于违法行为,请勿对未经授权的目标进行测试


APK逆向后到底能看到什么?这份\"看文件\"指南请收好" 网络安全文章

APK逆向后到底能看到什么?这份\"看文件\"指南请收好"

本文是一份APK逆向分析实用指南,核心观点是逆向并非通读全部代码,而是快速定位关键文件。文章详细解析了AndroidManifest.xml、smali代码、lib目录、assets资源等关键位置的查看重点,并指出加壳App的典型特征及应对思路。文章提供了可操作的具体检查项,对安全测试人员具有实用参考价值,同时强调需在授权范围内进行测试。
F-35零部件迷案:“失联”备件如何震动五角大楼与国会山——一场横跨太平洋的物流意外,正演变为对美军最昂贵武器项目管控能力的灵魂拷问" 网络安全文章

F-35零部件迷案:“失联”备件如何震动五角大楼与国会山——一场横跨太平洋的物流意外,正演变为对美军最昂贵武器项目管控能力的灵魂拷问"

这篇报道讲述2026年9月一批F-35零部件从澳大利亚运往美国维修途中被意外转运至香港,部分部件下落不明,可能包含隐身技术相关的座舱盖,事件引发美国国会、五角大楼和澳大利亚的政治震荡,暴露了美军最昂贵武器项目供应链监管漏洞,成为F-35项目的最新信任危机。
deeplink参数注入" 网络安全文章

deeplink参数注入"

本文系统阐述AndroidDeepLink参数注入漏洞的测试方法,涵盖漏洞原理、常见类型、完整测试流程及白名单绕过技巧。文章提供从信息收集、基础触发到Payload扩展的实战步骤,并给出恶意HTML与POCApp验证方案,对移动安全测试人员具有较强实操参考价值。
让Agent给代码做安全审计,实测security-audit-skill" 网络安全文章

让Agent给代码做安全审计,实测security-audit-skill"

本文实测ClaudeCode配合security-auditskill对开源项目z-cmdb进行源码级安全审计。该skill通过六阶段流程与五条纪律实现可复核的审计账本,区分已确认与待验证项,并明确不替代人工审计与渗透测试。实测发现多项高危边界失败问题,但强调动态验证缺失时需降级处理,报告可信度取决于执行策略与覆盖账本的完整性。
评论:0   参与:  0