android逆向基础的几个步骤

由于刚开始接触android逆向,对一些命令不太熟,一用起来就得找,所以决定自己记录一些步骤,找起来也方便些。

ida调试dex:

准备阶段,添加android_server,

adb push \dbgsrv\android_server /data/local/tmp/android_server

adb shell // 得到Android系统的shell,下面是在Shell中的操作 

su //获得Root权限 

cd /data/local/tmp 

chmod 755 android_server // 修改android_server权限 rwxr-xr-x

./android_server //运行

再另开一个cmd:

adb forward tcp:23946 tcp:23946

然后确保dex可调试,即在AndroidManifest.xml中的application 标签里含有android:debuggable=“true”,如图:


这里需要用到,java -jar apktool.jar d file.apk java -jar apktool.jar b file-name -o new-file.apk

修改apk为zip文件,解压后找到dex文件,用ida打开,在debugger->debugger options下设置


并在其下的set specific options设置adb的路径,包名,活动名:


在debugger->process options下设置:


做好这些后,还需要在真机上安装这个的apk程序,使用adb install file.apk即可。

安装好之后,在ida中开始调试:



apk反编译、打包、签名

解包:apktool d apkname.apk foldername
打包:apktool b xxx -o xxx-new.apk
生成keystore:
keytool -genkeypair -alias - app.keystore -keyalg RSA -validity 100 -keystore app.keystore 
输入密码: 
一路回车 
到最后时输入y
(keytool是java jdk bin目录下的工具)
给apk签名:
jarsigner -verbose -keystore app.keystore  -signedjar  xxx-new.apk  xxx-new-signed.apk

ida调试so文件:

和调试dex步骤类似,区别在ida的设置



选择要调试的程序,定位调试so库的位置,下好断点,调试……


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值