反编译也是码工必备技能了,本文介绍的是MAC环境下使用反编译三件套
看到身边有些朋友还在用dex2jar,很是纳闷为啥不用enjarify? 这是Google推出的反编译利器,而且看提交记录现在还在维护.与dex2jar相比,enjarify功能更强大,成功率也更高.只不过enjarify是python项目,对不熟悉python的朋友来说有一丢丢门槛.
1.apktool:主要用来查看apk资源文件
第一步:点击这里下载所需的2个文件,一个jar和一个脚本,注意正确的保存方式是这样的:
不要把脚本文件保存为文本格式.
第二步:将上面二个文件copy至usr/local/bin目录下(Open Finder -> Press Command+Shift+G to open the dialogue box -> Input the following search: /usr/local/bin.),像这样
第三步:授权这两个文件为可执行,输入chmod a+x file,看图
第四步:双击apktool脚本,Mac会提示禁止打开,在偏好设置->安全与隐私下允许打开。然后输入apktool命令检查是否安装成功,如果出现一下内容即安装成功
好了, 我们找个apk练练手,输入命令
apktool d appName.apk -o test
效果如下
资源文件一目了然,smali文件也生成了.
2.enjarify
enjarify是google推出的反编译工具, 原文介绍是
Enjarify is a tool for translating Dalvik bytecode to equivalent Java bytecode. This allows Java analysis tools to analyze Android applications.
先配置python3环境,MAC电脑系统自带有python2的环境,莫要动他, 我们重新配置省坑省事.点击这里下载python3最新release版本,点击安装就是了.安装完了在终端中输入
python3 -V
检查是否安装成功.
然后点击这里下载enjarify,下载好了把你要反编译的apk考到enjarify的一级目录下,
进入此目录下, 输入命令
python3 -O -m enjarify.main yourapp.apk
走一个, 反编译效果如下
3.JD-GUI
这个工具so easy,大家自己装,用它来查看我们反编译后的jar:
一目了然有木有?
小朋友看到这里是不是想要去下个抖音/快手反编译一下试试?要是这样想说明你还年轻,有想法,先随老夫学学习smali语法吧.