function hook_dlopen(){
var android_dlopen_ext
=
Module.findExportByName(null,
"android_dlopen_ext"
);
console.log(
"addr_android_dlopen_ext"
,android_dlopen_ext);
Interceptor.attach(android_dlopen_ext,{
onEnter:function(args){
var pathptr
=
args[
0
];
if
(pathptr!
=
null && pathptr !
=
undefined){
var path
=
ptr(pathptr).readCString();
if
(path.indexOf(
"libmsaoaidsec.so"
)!
=
-
1
){
console.log(
"android_dlopen_ext:"
,path);
hook_pthread()
}
}
},
onLeave:function(retvel){
}
})
}
function hook_pthread() {
var pth_create
=
Module.findExportByName(
"libc.so"
,
"pthread_create"
);
console.log(
"[pth_create]"
, pth_create);
Interceptor.attach(pth_create, {
onEnter: function (args) {
var module
=
Process.findModuleByAddress(args[
2
]);
if
(module !
=
null) {
console.log(
"address"
, module.name, args[
2
].sub(module.base));
}
},
onLeave: function (retval) {}
});
}
function main(){
hook_dlopen()
}
main()