首页
社区
课程
招聘
[求助] frida hook 插件化apk
发表于: 2021-12-21 19:58 5874

[求助] frida hook 插件化apk

2021-12-21 19:58
5874

最近在逆向一个看片的apk,它是用通付盾的一代壳,用frida-dexdump脱了下来,发现它是用腾讯的shadow开发的,它联网下载了
下载的插件apk
,逆向了一下,发现主要的类在app-plugin-release.apk,
要hook的类

 

想用frida hook
hook不到 找不到类,看到这个帖子https://bbs.pediy.com/thread-258772.htm,于是frida打印了一下classloader

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Java.perform(function () {
    Java.enumerateClassLoaders({
    "onMatch": function(loader) {
        console.log()
        console.log("loader:" + loader)
    //     if (loader.toString().startsWith("e.d")) {
    //    Java.classFactory.loader = loader; // 将当前class factory中的loader指定为我们需要的
    //     }
    },
    "onComplete": function() {
        console.log("------------------------")
        console.log("success    :" + Java.classFactory.loader);
 
        console.log("--------------------------")
 
 
    }
});

结果是这样的
结果

 

于是我改classloader,然后打印出所有的类,结果还是没有它,这是为什么?
(ps 我改成别的classloader 打印的类都一样,这是为什么)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
function a(){
 
Java.perform(function () {
    Java.enumerateClassLoaders({
    "onMatch": function(loader) {
        console.log()
        console.log("loader:" + loader)
        if (loader.toString().startsWith("e.d")) {
       Java.classFactory.loader = loader; // 将当前class factory中的loader指定为我们需要的
        }
    },
    "onComplete": function() {
        console.log("------------------------")
        console.log("success    :" + Java.classFactory.loader);
 
        console.log("--------------------------")
 
 
    }
});
 
if(Java.classFactory.loader.toString().startsWith("e.d")){
    Java.enumerateLoadedClasses({
        //每一次回调此函数时其参数className就是类的信息
        onMatch: function (className)
        {
            //输出类字符串
            console.log("",className);
        },
        //枚举完毕所有类之后的回调函数
        onComplete: function ()
        {
            //输出类字符串
            console.log("输出完毕");
        }
    });
 
    }
 
 
});
 
 
// Java.perform(function () {
//     Java.enumerateClassLoadersSync().forEach(function (classloader) {
//         try {
//             console.log("classloader", classloader);
//             classloader.loadClass("com.yensbcyabet.cmsnaygeste.mvp.model.entity.AdListBean");
//             Java.classFactory.loader = classloader;
//             var mainActivityClass = Java.use("com.yensbcyabet.cmsnaygeste.mvp.model.entity.AdListBean");
//             console.log("mainActivityClass", mainActivityClass);
//         } catch (error) {
//             console.log("error", error);
//         }
//     });
// })
 
}
setImmediate(a)

结果打印出来来的类和原来classloader的类一模一样这是为什么?
要hook的类


[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (1)
雪    币: 265
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
2
尝试用算法助手自定义hook这个类看看
2021-12-22 08:40
0
游客
登录 | 注册 方可回帖
返回
//