Android逆向工程用到的工具

作者: 千山万水迷了鹿 | 来源:发表于2016-10-21 10:39 被阅读543次

第一套组合(入门级组合)

Apktool + dex2jar + jd-gui

可惜的是apktool好像后来不再支持调试Smali文件,jd-gui 作者从 2015 年开始就停止了维护.

但是AndroidStudio有个调试Smali的插件 地址 https://github.com/JesusFreke/smali/wiki/smalidea
据说jadx 不错(推荐使用),可以取代 jd-gui 地址 https://github.com/skylot/jadx

Google 出的几个逆向分析工具

  1. enjarify

https://github.com/google/enjarify
功能:可直接将 apk 文件还原成为 jar 文件,也可以和 dex2jar 一样,直接操作某个dex

这是 Google 出品的一个逆向分析工具,从反编译成 jar 包的流程来说,要比 dex2jar 方便得多。下载完工具到本地并配置好 Python 环境后,需要修改 enjarify 目录下的 enjarify.bat 文件,将 python3 改为 python

  1. ClassyShark

https://github.com/google/android-classyshark

功能:可直接浏览 Apk,支持对.dex, .aar, .so,.apk, .jar, .class等文件的操作。

同是Google出品,但是只能看到方法声明,没法看到方法的定义。

java -jar ClassyShark.jar -open XXX.apk

  1. AndroidStudio2.2 (APK Analyzer)

在Android Studio2.2 中添加了个新的功能Build -->analyze apk ...
然后选择你要分析的 APK 文件就可以了。但是只能看到方法声明,没法看到方法的定义。

me

procyon 和 cfr 和 Jad ,这些主要专注于jar的反编译

  1. orocyon 和 cfr 和 Jad

当然这几个不是Google的产物,这几个是jar.class 反编译工具。为啥要用这些,因为jd-gui,反编译java7会有问题。有些语法有点让人难以读懂。但是他有图形化界面剩下的这几个都没有。

procyon 反编译jar包命令:(我用的是这个,比jd-gui好很多真的)

$ java -jar procyon-decompiler-0.5.30.jar -jar myJar.jar -o out

cfr 反编译jar包命令:

java -jar cfr_0_79.jar example.jar -–outputdir out

2.bytecode-viewer 这是个套装

再来一个基于Procyon的项目 bytecode-viewer
A Java 8 Jar & Android APK Reverse Engineering Suite (Decompiler, Editor, Debugger & More) https://bytecodeviewer.com. 不知道如何没用过。

  1. Jadx

强烈推荐这个玩意,反编译后的代码可读性好,自带图形化界面。

这个是一款GUI界面的反编译工具,是一款点击鼠标就可以使用的跨平台工具。

项目在这里

JEB for Android


非常不错,但是不开源,不免费官网

smalidea

这个是AndroidStudio的插件,下载地址下载 smalidea-x.x.x.zip下载最新版本的就行。这个插件主要用来动态调试smali代码的。非常好用

相关文章

  • Android逆向工程用到的工具

    第一套组合(入门级组合) Apktool + dex2jar + jd-gui 可惜的是apktool好像后来不再...

  • Android逆向常用工具介绍及优化

    Android逆向工程常用工具-. jadx https://github.com/skylot/jadx-,...

  • [笔记]iOS应用逆向工程 Part2: 工具篇

    Part 2: 工具篇 OSX 工具集 iOS 逆向工程用到的一系列工具, 在 OSX 上完成的主要是开发和调试的...

  • iOS逆向工程之OSX工具集, 安装与使用

    iOS逆向工程在OSX平台上主要用到了以下工具:class-dump(提取头文件工具),Theos(越狱开发工具包...

  • iOS逆向工程

    逆向工程的目的 逆向工程的分析工具 进行iOS逆向工程的一个关键就是工具的使用,工欲善其事,必先利其器。 第一部分...

  • iOS逆向(四)-APP砸壳和class-dump工具的使用

    逆向工具集的安装和使用 iOS 逆向工程的工具分类 检查工具如:Reveal(界面分析工具)、tcpdump(抓包...

  • iOS 逆向工程步骤总结

    最近对iOS逆向工程进行了些研究,由于iOS系统的封闭性,iOS的逆向研究需要使用到一些工具,包括Mac端与iOS...

  • Android技术周报_W8

    作者:菜刀文公众号:互联网技术内参 文章 1. 史上最全Android 开发和安全系列工具 动态分析工具逆向工程工...

  • MyBatis逆向工程

    逆向工程字面意思就是反向生成工程, 和 Hibernate一样, MyBatis也有自己的逆向工程工具。详细信息请...

  • iOS逆向工程

    iOS逆向工程 什么是iOS逆向工程? iOS应用逆向工程,是指从目标应用的界面及功能表现入手,使用不同的工具和理...

网友评论

    本文标题:Android逆向工程用到的工具

    本文链接:https://www.haomeiwen.com/subject/lmnquttx.html