总结一些经典步骤,工具下载地址:

链接:https://pan.baidu.com/s/1leIM_C_OA2CGJV_eaNFa9Q
提取码:itn4

1.查看资源文件

使用apktool可以最大限度的还原出资源文件

java -jar apktool_2.3.4.jar d -f yv.apk -o vpn

yv.apk (要反编译的apk名字) vpn(反编译后存到vpn目录下)

2.使用dex2jar反编译apk得到Java源代码

将yv.apk解压将其中的classes.dex文件放到dex2jar-2.0 目录下
dos命令定位到dex2jar.bat所在目录,输入

d2j-dex2jar classes.dex

然后获得 classes-dex2jar.jar 文件

3.使用jd-gui工具将class文件反编译成java源代码

运行jd-gui.exe,将classes-dex2jar.jar 拖入jd-gui.exe即可

4.逆向SO文件

有些apk为了防止被反编译等原因,将关键代码封装成SO文件

so是shared object的缩写,见名思义就是共享的对象,机器可以直接运行的二进制代码。

也就是使用C\C++来编写,然后编译成SO文件,逆向SO是一个复杂的过程,简单的可以参考这几篇文章

1.汉化修改so文件心得篇一(带偏移修改)

2.汉化修改so文件心得篇二(带偏移修改)

3.so文件汉化心得【整理】

4.Android逆向之旅—Android应用的汉化功能(修改SO中的字符串内容)