android软件安全攻防实例第一章笔记

java -jar apktool.jar d- d nixiang.apk -o out
在out文件中打开AndroidManifest.xml然后在application节点中设置属性android:debuggable="true"
找到含有
               
               
           

的activity节点,其android:name的属性值为应用的主类
在主类的第一句(即.method public 后面)插入 invoke - static { } , Landroid / os / Debug ; -> waitForDebugger ( ) V(如果逆向后的文件前面有前缀,那么也要加前缀到前面) , Landroid有个空格不然会出错
然后用命令java -jar apktool.jar b -d out -o debug.apk将其重新编译为debug.apk
然后利用signapk软件签名,java -jar signapk.jar  testkey.x509.pem testkey.pk8 debug.apk debug.sig.apk生成签名后的 debug.sig.apk
然后将debug.sig.apk安装。安装后会一直白屏等待调试。

利用android studio逆向步骤见https://blog.csdn.net/u013736724/article/details/53292855

使用dex2jar和jd-gui反编译apk得到Java源代码 https://blog.csdn.net/ygd1994/article/details/51809142
关于R的介绍https://ask.csdn.net/questions/235448
关乎react-native见https://www.jianshu.com/p/97692b1c451d



Smali 是 Android 的 Dalvik 虚拟机所使用的一种 dex 格式的中间语言

你可能感兴趣的:(android软件安全攻防实例第一章笔记)