frida - класс defpackage не указан в android - PullRequest
0 голосов
/ 11 июля 2020

Я нашел несколько классов в каталоге defpackage, но они не перечислены с приведенным ниже кодом:

log("load script")
Java.perform(function() {
    log("load java")
    var clzlst = []
    Java.enumerateLoadedClasses({
        onMatch: function(clzname) {
            clzlst.push(clzname)
        },
        onComplete: function(e) {
            console.log("<<<<onComplete");
        }
    });
    log(clzlst.length)
    clzlst.forEach(function (clzname) {
        if (clzname.includes("abcd")) {
            log("found clz:" + clzname) // this line not been hitted.
        }
        });

    var hook = Java.use("abcd");
    var methods = hook.class.getDeclaredMethods();
    hook.$dispose();
 
    methods.forEach(function (method) {
        var name = method.toString();
        log(name) // this line hitted
    });
});

function log(msg) {
    console.log(msg)
}

Классы загруженного списка не включают целевой класс (например, abcd), но если я вызываю Java .use ("abcd"), я могу успешно получить доступ к этому классу.

Я предполагаю, что этот класс все еще не загружается! как я могу перечислить все классы, даже если они не были загружены?

...