Frida踩坑笔记
慎用Js箭头函数
前段时间在逆向app时候需要hook onCreate函数,需要调用父类的onCreate的方法进行初始化,此时修改函数内部逻辑时候碰到了两个问题:
- 父类的super函数如何获取
- 使用箭头函数时候this为null
需要注意调用父类函数正确写法为:this.$super 此外以下使用箭头函数hook的写法是错误的,此时获取的this值为null
Java.use("com.hex.wanshiwu.v2.splash.SplashActivityV2")
.onCreate.implementation = (bundle)=>{
this.$super.onCreate(bundle)
let intent = Java.use("android.content.Intent")
.$new(this,Java.use("com.hex.wanshiwu.v2.main.MainActivityV2").class)
this.startActivity(intent)
}
正确写法如下:
Java.use("com.hex.wanshiwu.v2.splash.SplashActivityV2")
.onCreate.implementation = function(bundle){
this.$super.onCreate(bundle)
let intent = Java.use("android.content.Intent")
.$new(this,Java.use("com.hex.wanshiwu.v2.main.MainActivityV2").class)
this.startActivity(intent)
}