Java/android大型工程分析工具

能用于反编译apk/class的反编译器有很多,实际工作中几乎体验过所有的反编译器后,发现大型项目的分析,还是用ide比较方便。

众所周知,IntelliJ idea有一个很棒的反编译器,但我曾经搜索过,并没有独立版,直到今天我才知道这个东西是开源的:https://github.com/JetBrains/intellij-community/tree/master/plugins/java-decompiler/engine

这个东西是可以命令行工作的,但我估计也没人愿意下载整个idea的源码去编译,不过没关系,不需要我们自己去编译它,有个叫bytecode viewer的项目整合了它:https://github.com/Konloch/bytecode-viewer

大型工程,如果是dex文件的话,凡是可以dex2jar或者enjarfy成功的,就可以顺利的直接file export to java获取反编译源码了。

这里有个trick,有些java的混淆是这样的:Aa.class aA.class AA.class 我们都知道,windows是默认大小写不敏感的,但是没关系,win10开始不但有了wsl,还可以手动开启某个目录大小写敏感。

命令行:fsutil file setCaseSensitiveInfo “目录” enable

byteviewer很聪明,默认就输出了一个打包的zip,不要自作聪明去直接解压缩,winrar不支持大小写敏感,会把同名的文件吃掉,直接进wsl用unzip命令去解压缩。

解压出来的文件不要用idea查看,用visual studio code,其他ide不清楚,但它是支持大小写敏感的,在idea上是会出问题的,会找不到同名类。

由于windows文件管理器对这种特殊的大小写敏感文件夹支持的很差,建议需要文件操作或者重打包一类的操作,在wsl中进行,这样不会出现问题。

发表评论

电子邮件地址不会被公开。 必填项已用*标注