使用jadx 查看反编译代码
程序会自动加载这个onCreate 方法,并且为输入密码按钮绑定了一个onclick 事件
当验证码输入错误的时候,会提示验证码校验失败的信息,
输入正确的时候会继续执行函数。
这里我们直接把securityCheck 的函数返回值直接修改为true 无论你输入什么函数,都是正确结果。
我们来看具体的操作
使用adb 工具把frida-server 推到mumu模拟器上并设置运行权限
adb push frida-server /data/local/tmp
adb shell
cd /data/local/tmp
chmod +x frida-server
./frida-server
新开窗口,设置端口转发
adb forward tcp:27042 tcp:27042
adb forward tcp:27043 tcp:27043
查看是否能够正常工作
frida-ps -U
frida -U -l jshook.js com.yaotong.crackme
报错 Failed to attach: the connection is closed
解决办法:
下载最新版的frida-server 推送到手机上就可以了
jshook代码
///<reference path='./index.d.ts' />
// 这个可以在写frida hook的时候有提示信息出来,也非常方便
// 安装 npm i @types/frida-gum 把里面的ts文件复制到这个目录写上上面的注释就可以在pycharm中使用了
function test() {
var ma = Java.use("com.yaotong.crackme.MainActivity");
ma.securityCheck.implementation = function (str) {
return true;
};
}
function main() {
Java.perform(function () {
test();
});
}
setImmediate(main);