首页
社区
课程
招聘
Frida Hook ,Xposed模块无法拿到类
发表于: 2020-8-3 13:53 10110

Frida Hook ,Xposed模块无法拿到类

2020-8-3 13:53
10110

Frida Hook Xposed模块找不到类,今天hook一个xposed模块,提示class not found,自己dugger调试了一下,发现加载xposed模块的时候,采用的FilePathClassLoader加载的,请问怎么用frida能拿到这个类加载器呢?有没有大佬遇到过,这种app采用的貌似是宿主app插件方式加载的


[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 0
支持
分享
最新回复 (12)
雪    币: 634
活跃值: (1503)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
2
先枚举拿Classloader
2020-8-6 10:27
0
雪    币: 1446
活跃值: (1783)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
Monkeylord 先枚举拿Classloader
这个frida貌似只有安卓7.0以上才能使用枚举拿classloader,安卓6.0好像不行,有解决办法么
2020-8-6 12:16
0
雪    币: 181
活跃值: (2948)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
那你要看到是FilePathClassLoader,就hook它的构造函数拿到classloader,这样不中吗
2020-8-7 10:28
0
雪    币: 634
活跃值: (1503)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
5
dreamhake 这个frida貌似只有安卓7.0以上才能使用枚举拿classloader,安卓6.0好像不行,有解决办法么
用choose
2020-8-7 20:28
0
雪    币: 1446
活跃值: (1783)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
Monkeylord 用choose
大佬,能说的具体点么?choose是??
2020-8-8 08:55
0
雪    币: 634
活跃值: (1503)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
7
dreamhake 大佬,能说的具体点么?choose是??[em_5]
https://frida.re/docs/javascript-api/#java
2020-8-10 12:21
0
雪    币: 1446
活跃值: (1783)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
Monkeylord https://frida.re/docs/javascript-api/#java
不行我尝试过了,一样拿不到类,他是一个app加载的xposed模块,明明Xposed已经加载了,但是hook  xposed模块就是不行
2020-8-10 12:27
0
雪    币: 634
活跃值: (1503)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
9
dreamhake 不行我尝试过了,一样拿不到类,他是一个app加载的xposed模块,明明Xposed已经加载了,但是hook xposed模块就是不行
Xposed每个模块都在一个单独的dalvik.system.PathClassLoader里
2020-8-10 13:52
0
雪    币: 1446
活跃值: (1783)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
Monkeylord Xposed每个模块都在一个单独的dalvik.system.PathClassLoader里
是的,如果用xposed Hook该怎么定位到具体是哪一个PathClassloader呢?还请大佬明示
2020-8-11 08:38
0
雪    币: 634
活跃值: (1503)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
11

你试试这样

function foo(clz){
    console.log(clz)
}
Java.perform(function(){
    Java.choose("dalvik.system.PathClassLoader",{
        onMatch: function(instance){
            console.log(instance)
            console.log(Java.ClassFactory)
            var factory = Java.ClassFactory.get(instance)
            try{
                var myClass = factory.use("myClass")
                foo(myClass)
                return "stop"
            }catch(e){
                console.log("next")
                console.log(e)
            }
        },
        onComplete:function(){
            console.log("Done")
        }
    })
})


2020-8-11 12:28
1
雪    币: 1446
活跃值: (1783)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
Monkeylord 你试试这样function foo(clz){     console.log(clz) } Java. ...
感谢大佬,这样确实可以拿到class类,晚上我在回去试试,看看可以正常hook不
2020-8-13 12:04
0
雪    币: 1446
活跃值: (1783)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
Monkeylord 你试试这样function foo(clz){     console.log(clz) } Java. ...
完美解决,感谢大佬
2020-8-14 12:18
0
游客
登录 | 注册 方可回帖
返回
//