unidbg icon indicating copy to clipboard operation
unidbg copied to clipboard

求教大神:调用callJNI_OnLoad出现Illegal JNI version: 0xffffffff错误

Open 18463105800 opened this issue 3 years ago • 4 comments

大神你好,我在调用一个libxyass.so文件的时候,在初始化就出现了下面的错误: image

不知道这种错误是不是因为so文件被加壳了。 我的测试代码如下: `package com.github.unidbg.xhs;

import com.github.unidbg.AndroidEmulator; import com.github.unidbg.linux.android.AndroidEmulatorBuilder; import com.github.unidbg.linux.android.AndroidResolver; import com.github.unidbg.linux.android.dvm.*; import com.github.unidbg.memory.Memory;

import java.io.File;

public class TestCallInitMethod extends AbstractJni { private final AndroidEmulator emulator;

private final static String NameSpace = "/data/webapps";

private VM vm;

public TestCallInitMethod() {
    emulator = AndroidEmulatorBuilder
            .for32Bit()
            .setProcessName("xxx")
            .build();

    final Memory memory = emulator.getMemory();
    memory.setLibraryResolver(new AndroidResolver(23));

    vm = emulator.createDalvikVM();
    vm.setJni(this);
    vm.setVerbose(true);

    DalvikModule dm = vm.loadLibrary(new File(NameSpace + "/libxyass.so"), false);
    dm.callJNI_OnLoad(emulator);
}


@Override
public void callStaticVoidMethodV(BaseVM vm, DvmClass dvmClass, String signature, VaList vaList) {
    switch (signature) {
        case "com/tencent/mars/xlog/PLog->i(Ljava/lang/String;Ljava/lang/String;)V":
            return;
    }

    super.callStaticVoidMethodV(vm, dvmClass, signature, vaList);
}

public static void main(String[] args) throws Exception {
    TestCallInitMethod test = new TestCallInitMethod();
}

} ` so和apk文件如下: 百度网盘:链接: https://pan.baidu.com/s/1kQZt9U4tLKenq-CoiZUaGQ 密码: po3n

求大神解惑,谢谢!

18463105800 avatar Aug 20 '21 08:08 18463105800

我认为是Unidbg的SO loader存在bug,你需要自己手动执行部分initFunctions

Pr0214 avatar Sep 03 '21 22:09 Pr0214

我认为是Unidbg的SO loader存在bug,你需要自己手动执行部分initFunctions 多谢指导,后面我自己检查下

18463105800 avatar Sep 04 '21 01:09 18463105800

最新代码已修复 https://github.com/zhkl0228/unidbg/commit/ec18bd614513f17c9fb5e153e80f8a6e9e4747c1

zhkl0228 avatar Sep 06 '21 05:09 zhkl0228

最新代码已修复 ec18bd6

试了下,确实可以了,多谢大神,也辛苦大神了

18463105800 avatar Sep 06 '21 05:09 18463105800