Android知识进阶(遥远的重头开始)Android应用安全防护和逆向分析

Android 逆向工程:常用的逆向分析工具总结

2019-11-19  本文已影响0人  ImWiki

Android 的安装包APK实际上就是一个zip压缩包,把后缀改成zip即可对其进行解压,dex文件是Android的字节码文件,so文件是C++的机器码文件。

├── AndroidManifest.xml
├── assets
├── classes.dex
├── classes2.dex
├── classes3.dex
├── lib
│   └── armeabi-v7a
│       └── libtxffmpeg.so
├── res
│   ├── drawable
│   └── drawable-nodpi-v4
└── resources.arsc

dex2jar

dex2jar 可以把dex文件转换成jar文件,jar文件可以通过JD-GUI工具打开。

sh d2j-dex2jar.sh -f ~/path/to/apk_to_decompile.apk

JD-GUI

jd-gui 是一个图形化的jar查看工具。

JADX-GUI

jadx 是apk图形化查看工具,比JD-GUI更加强大,可以直接打开apk,查看java源码和xml源码。

readelf

是用于对C++机器码的分析,一般用于查看ELF格式的文件信息,常见的文件如在Linux上的可执行文件,动态库(.so)或者静态库(.a) 等包含ELF格式的文件。

IDA Pro

付费的反汇编工具,功能非常强大。是目前最好的一个静态反编译软件。可以用于so文件的静态分析,动态调试。


Xposed Hook

Xposed 是非常强大的动态逆向分析框架,可以动态获取APP运行时参数,修改数据。
Android 逆向工程:基于Xposed Hook实现动态逆向分析

apktool

apktool 是Google提供的APK编译工具。

  1. 将资源解码成原来的形式
  2. 将解码的资源重新打包成apk/jar
  3. 组织和处理依赖于框架资源的APK
  4. Smali调试
  5. 执行自动化任务
上一篇 下一篇

猜你喜欢

热点阅读