【Android逆向】修改so文件方式修改程序行为
1. 还是之前的那个apk
链接:https://pan.baidu.com/s/1vKC1SevvHfeI7f0d2c6IqQ 密码:u1an
尝试使用 010Editor来修改so文件
2. 使用ida打开so文件,双击 hello 52pojie!
,会跳转到该字符串的偏移地址,ida显示是00001BB8
,要的就是这个值
3. 将so拖入到010Editor中,ctrl+g
跳转到该位置
4. 找一个在线字符转ascii码的网站,转jiang
到ascii码6A69616E67
, 替换掉52pojie!
, 由于52pojie!字符数大于jiang,其余位置补零
5. 重打包,重签名(注意最好用jdk8来处理,高版本jdk签名时会报错)
java -jar ../apktool_2.2.4.jar b app-debug -o app-debug-new.apk
java -jar signapk.jar platform.x509.pem platform.pk8 app-debug-new.apk app-debug-new-signed.apk
# 当然也可以用androidkiller来处理
6. 安装执行,查看日志
//before
02-18 15:26:20.931 6982 6982 I 开始调用so中的sayHello方法: hello 52pojie!
02-18 15:26:46.216 7039 7039 I 开始调用so中的sayHello方法: hello 52pojie!
//after
02-18 16:15:46.650 8973 8973 I 开始调用so中的sayHello方法: hello jiang
02-18 16:17:47.321 9350 9350 I 开始调用so中的sayHello方法: hello jiang
02-18 16:36:34.898 10603 10603 I 开始调用so中的sayHello方法: hello jiang