java反编译工具_10款优秀的Android逆向工程工具

一、1SMALI/BAKSMAL

SMALI/BAKSMALI是一个强大的apk文件编辑工具,用于Dalvik虚拟机(Google公司自己设计用于Android平台的虚拟机)来反编译和回编译。

其语法是一种宽松式的Jasmin/dedexer语法,而且它实现了.dex格式所有功能(注解,调试信息,线路信息等)。

2 、ANDBUG

Andbug是一款针对Android平台的Dalvik虚拟机的调试工具,工具基于jdwp协议,使用了python封装,其灵活性和可定制性对逆向工程师和开发人员而言可谓是神器级别的安卓安全工具。它与Android的Eclipse插件调试使用相同的接口,其Java 调试线协议(JDWP)和Dalvik调试监视器(DDM)允许用户监视Dalvik虚拟机,检查进程状态。

不同于谷歌自己的Android软件开发工具包调试工具,AndBug不要求源代码。但是,它需要使用python封装,因为对于大多数重要的任务,它需要使用一个脚本断点(scripted breakpoints)的概念,称为“hooks”。

3、ANDROGUARD

androguard (也称Android guard) 是 Android 应用程序的逆向工程,提供恶意软件分析等功能。

特征:使用DAD作为反编译器;可以分析恶意软件;

主要由Python 编写;

支持可视化;

androguard 支持:DEX, ODEX;APK;

Android的二进制XML;Android资源文件;

分解的DEX/ODEX 字节;

DEX/ODEX 文件反编译程序;

4、APKTOOL

APKTool是GOOGLE提供的APK编译工具,能够反编译及回编译apk,同时安装反编译系统apk所需要的framework-res框架,清理上次反编译文件夹等功能。它可以完整解包APK,解包后你可以看到 APK 里面的声明文件、布局文件、图片资源文件、由 dex 解包出来的 smali 文件、语言文件等。如果你要汉化、修改界面、修改代码的话,apktool 可以帮你一站式完成。

特征:反编译资源文件到原始格式(包括,,以及XML等);将解码资源重建回二进制APK / JAR;组织和处理依赖于框架资源的APK;Smali调试(中移除,被IdeaSmali取代);协助重复性任务;

5、AFE

AFE(Android Frameworkfor Exploitation)是一个开源项目,运行在Unix-based 的操作系统中,能够用来证明Android操作系统中存在安全漏洞,它还表明Android僵尸网络是能够存在的。使用AFE能够非常容易的自动创建一个Android平台的恶意软件,发现应用软件的漏洞(例如Leaking Content Providers,Insecure FileStorage,Directory Traversal等),以及在受感染的设备上执行任意命令。

AFE包含两个部分,PC端(以下称为AFE)和手机端(以下称为AFEServer)。AFE大部分是完全使用Python编写的。AFE是可扩展的,可以自由添加其他的模块或者将已有的工具移植到AFE框架下。AFEServer是一个在手机上运行的Android应用,用来和AFE的Python界面进行连接,执行AFE发送到手机的命令。

功能:完善的命令行界面;发现应用漏洞;自动化创建恶意应用;

6、DEDEXER

Dedexer是一款反编译dex文件的开源工具。

特征包含:不需要在android模拟器中运行;

能够将dex文件按照java源代码package的目录结构建好了目录,每个class文件对应一个ddx文件;

可作为像jasmin一样的反编译引擎;

7、 ANDROID OPENDEBUG

该工具利用Cydia Substrate将所有的应用程序在设备上运行;

一旦安装任意应用程序就会有一个debugger连接到它们。

注意:该工具只能在测试设备中使用!

8、DARE

Dare是宾州大学计算机系发布的apk逆向工程工具,可以将Android系统中使用的apk文件反编译为JavaClass文件,这些Class文件随后可以通过现有的Java工具(包括反编译)进行处理。目前支持Linux和Mac OS X中使用。

9、 FINO

一款Android动态分析工具

10、 ENJARIFY

Enjarify是由Google推出的一款基于Python3开发,类似dex2jar的反编译工具,它可以将Dalvik字节码转换成相对应的Java字节码,有比dex2jar更优秀的兼容性,准确性及更高的效率。

以上这些工具的话目前都很少用到了,现在大多数用的安卓逆向工具java层这块更多是ak和apktool,jeb,jadx,so层的话就是ida ,Winhex这些。需要安卓逆向工具的话可以添加一下vx获取13140310004

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ClassyShark是一可以查看Android可执行文件的浏览工具,支持.dex, .aar, .so, .apk, .jar, .class, .xml 等文件格式,分析里面的内容包括classes.dex文件,包、方法数量、类、字符串、使用的NativeLibrary等。 使用方法 打开apk文件java -jar ClassyShark.jar -open <YOUR_APK.apk> 将生成的所有数据导出到文本文件里java -jar ClassyShark.jar -dump <BINARY_FILE> 将指定类生成的文件导出到文本文件里java -jar ClassyShark.jar -dump <BINARY_FILE> <FULLY_QUALIFIED_CLASS_NAME> 打开ClassyShark,在GUI界面展示某特定的类 java -jar ClassyShark.jar -open <BINARY_FILE> <FULLY_QUALIFIED_CLASS_NAME> 检测APKjava -jar ClassyShark.jar -inspect <YOUR_APK.apk> 导出所有的字符串 java -jar ClassyShark.jar -stringdump <YOUR_APK.apk> 工具介绍: apktool 作用:资源文件获取,可以提取出图片文件和布局文件进行使用查看 dex2jar 作用:将apk反编译java源码(classes.dex转化成jar文件) jd-gui 作用:查看APK中classes.dex转化成出的jar文件,即源码文件、 smali-1.2.6.jar  用途:.smali文件 转成 classes.dex文件  说明:.smali文件,类似于.class文件,可以用普通文本编辑器查看和修改。 用法举例:命令行:java -jar smali.jar classout/ -o classes.dex 下载:http://code.google.com/p/smali/downloads/list 2、baksmali-1.2.6.jar  用途:classes.dex文件 转成 .smali文件  说明:classes.dex不便于查看和理解,使用此工具转成的.smali文件易于阅读和修改。 用法:命令行:java -jar baksmali.jar -o classout/ classes.dex 下载:http://code.google.com/p/smali/downloads/list
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值