frida有一个功能可以为我们生成一个进程而不是将它注入到运行中的进程中,它注入到Zygote中,生成我们的进程并且等待输入。 我们可以通过-f参数选项来实现。 frida -U -f app完整名 从上面可以看到,通过-f参数,frida会Spawned这个应用,在这个时候启...
若未改端口,使用frida -U命令连接;若修改端口,先进行端口转发adb forward tcp:12345 tcp:12345,然后使用命令frida -H 127.0.0.1:12345连接 遇到无法attach目标进程时尝试使用-f参数spawn一个进程 优点: 简单 可应对大部分app 缺点: 需要root 容易被检测 适用场景: 适用大部分场景,在手机已root的情况下可以...
于是有大佬将各种常见、常用的功能整合进一个工具,供我们直接在命令行中使用,这个工具便是objection。 objection功能强大,命令众多,而且不用写一行代码,便可实现诸如内存搜索、类和模块搜索、方法hook打印参数返回值调用栈等常用功能,是一个非常方便的,逆向必备、内存漫游神器。objection的界面及命令如下图图2-1所示。
byte_14002058F[(unsigned int)v5 + 1] = v3; continue; case 0xB5u: if ( byte_14002058F[v5 + 1] ) byte_14002058F[v5 + 1] = 1; continue; case 0xB7u: v3 = byte_14002058F[v5 + 1]; goto LABEL_9; case 0xB8u: byte_14002058F[v5 + 1] = *(_BYTE *)(byte_14002058F[v5...
参数1-参数8 分别保存到 X0~X7 寄存器中 ,剩下的参数从右往左依次入栈,被调用者实现栈平衡,返回值存放在 X0 中。 在BL或BLR的时候,将下一条指令的地址放入lr寄存器中,然后再跳转到目的地址。 而后被调用方需要保存fp和lr在栈中,在RET指令前从栈里取出...
而在 LuckyMoneyReceiveUI的 OnCreate 方法里面我们可以看到 com.tencent.mm.plugin.luckymoney.b.ag 是怎么被构造出来的:第一个参数是nativeurl中的channelid;第二个参数是nativeurl中的sendid;第三个参数是nativeurl本身;第四个参数可以用0;第五个参数是也是固定的 "v1.0"...
frida -U -f com.test.apk --no-pause %load test.js Java层hook# Frida的Java层重要函数 使用java平台—>Java.perform(function () {} 获取Java类 —>Java.use(className) 当我们获取到Java类之后,我们直接通过<wrapper>.<method>.implementations =function() {}的方式来hook wrapper类的method方法,不管是...
这里引出一个参数为char类型的数组,hook一下 function main() { Java.perform(function(){ Java.use("java.lang.Character").toString.overload('char').implementation=function(arg1) { var result=this.toString(arg1); console.log("x,result",arg1,result); ...
frida hook java层查看参数 frida hook不到 最近拿到一个XX视频apk样本,里面有视频、直播和小说,没有VIP只能试看30秒,刚好最近学习frida,用来练习下,分析过程中发现是一个插件化的apk,本文记录下分析的过程。 初步分析 首先从AndroidManifest.xml中获取到apk的包名,并且查看下activity情况:...