碳基体

奋斗在产品安全第一线的安全妹子

android逆向工具cheatsheets

1、dex -> smali

java -jar baksmali.jar  classes.dex -o classout


2、smali -> dex

java -jar smali.jar classout -o classes.dex


3.dex->jar

dex2jar.sh classes.dex


4.jar查看

JD_GUI


5.apk->smali

java -jar apktool.jar d apkname.apk


6.smali->apk

java -jar apktool.jar b filename apkname.apk


7.签名

keytool -genkey -alias demo.keystore -keyalg RSA -validity 4000 -keystore demo.keystore

jarsigner -verbose -keystore demo.keystore -digestalg SHA1 -sigalg MD5withRSA -signedjar test_signed.apk test.apk demo.keystore

zipalign -v 4 unaligned.apk final.apk


8.集成工具

(1)otertool (windows平台不支持)

动态分析的瑞士军刀,功能包括:logcat筛选、文件系统diff、apk->smali及搜索、java->smali、app data browser(以及内嵌的text/hex/sqlite viewer)、smali编辑并一键build apk(可以签名)、一键安装apk、安装证书

安装方法:

在otertool/release/current/ 文件夹下载相应的版本

运行./run-linux.sh

配置,可以通过GUI操作也可以直接修改的配置文件

cat config.properties

#Thu Nov 08 15:55:58 CST 2012

logcat.maxlines=10000

android.home=/pentest/reverse-engineering/android/android-sdk

javatosmali.classpath=/pentest/reverse-engineering/android/android-sdk/platforms/android-16/android.jar

 

(2)ApkTool_GUI(windows平台,中国人编写)

 

(3) ART (windows平台)

 

9.debug

AndBug(windows平台不支持)

安装方法:

1. 安装Android SDK并更新,确保将其platform-tools目录添加到PATH环境变量,即在命令行用which adb可以找到

2. 安装python-dev和python-pyrex两个库,例如在ubuntu下,用sudo apt-get install python-dev python-pyrex即可

3. 安装python的一个名为bottle的库,如果没有安装,无法使用navi这个最重要的功能。安装方法是,

到这里:http://pypi.python.org/pypi/bottle下载最新的bottle库,解压缩后,sudo python setup.py install即可

4. 下载AndBug: git clone https://github.com/swdunlop/AndBug.git

5. 在AndBug目录下,make。如果连make和gcc都找不到,请确认自己安装了build-essential(在Ubuntu下)或者Xcode的command line tools(Mac OS X下)

6. make成功后,在~/.bashrc或者~/.bash_profile里加上一行export PYTHONPATH=$PYTHONPATH: /lib,然后重启终端

7. 现在可以开始使用andbug了。

./andbug  shell  –p  243

help

classes    java.net

break java.net.URL

navi




参考:

http://www.claudxiao.net/2012/06/andbug-installation/

http://bbs.pediy.com/showthread.php?t=141995

来源:碳基体

评论