Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Native Hook崩溃 #39

Closed
canyie opened this issue Nov 14, 2019 · 1 comment
Closed

Native Hook崩溃 #39

canyie opened this issue Nov 14, 2019 · 1 comment

Comments

@canyie
Copy link

canyie commented Nov 14, 2019

设备信息:三星J3109,Android 5.1.1,armeabi-v7a

测试代码:

bool targetFunction() {
    LOGI("target function");
    for(int i = 0;i < 1;++i) {
        LOGI("for loop %d", i);
    }
    return false;
}

bool (*orgi_target)() = nullptr;

bool hook() {
    LOGI("Before hook method");
    bool result = orgi_target();
    LOGI("After hook method: result is %s", result ? "yes" : "no");
    result = !result;
    LOGI("Reset result to %s", result ? "yes" : "no");
    return result;
}

void test() {
    orgi_target = reinterpret_cast<bool (*)()> (SandInlineHook((void *) targetFunction, (void *) hook));
    LOGI("Hooked target function; try call it");
    bool result = targetFunction();
    LOGI("target() returned %s", result ? "yes" : "no");
}

log:

I/DEBUG   (29383): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** 
I/DEBUG   (29383): Build fingerprint: 'samsung/j3ltectc/j3ltectc:5.1.1/LMY47X/J3109KES1AQI1:user/release-keys'
I/DEBUG   (29383): Revision: '6'
I/DEBUG   (29383): ABI: 'arm'
I/DEBUG   (29383): pid: 12928, tid: 12928, name: .nativehooktest  >>> com.canyie.nativehooktest <<<
I/DEBUG   (29383): signal 11 (SIGSEGV), code 2 (SEGV_ACCERR), fault addr 0xb7f3ef78
I/DEBUG   (29383):     r0 b7f63a58  r1 b7f63a58  r2 b7f3ef78  r3 beaea8e8
I/DEBUG   (29383):     r4 00000008  r5 a232d315  r6 b7f63740  r7 beaeabf0
I/DEBUG   (29383):     r8 12c42ef0  r9 b7c46778  sl 00000000  fp 00000000
I/DEBUG   (29383):     ip b6e58128  sp beaeaae8  lr a233c569  pc b7f3ef78  cpsr 200b0010
I/DEBUG   (29383):
I/DEBUG   (29383): backtrace:
I/DEBUG   (29383):     #00 pc 000dff78  [heap]
I/DEBUG   (29383):     #01 pc 0004b567  /data/app/com.canyie.nativehooktest-2/lib/arm/libsandhook-native.so (_ZN8SandHook7Decoder12Arm32Decoder11DisassembleEPvjRNS0_11InstVisitorEb+1510)
I/DEBUG   (29383):     #02 pc 0004d9dd  /data/app/com.canyie.nativehooktest-2/lib/arm/libsandhook-native.so (_ZN8SandHook3Asm15CodeRelocateA328RelocateEPvjS2_+228)
I/DEBUG   (29383):     #03 pc 0004bc2d  /data/app/com.canyie.nativehooktest-2/lib/arm/libsandhook-native.so (_ZN8SandHook4Hook22InlineHookArm32Android4HookEPvS2_+412)
I/DEBUG   (29383):     #04 pc 0003c587  /data/app/com.canyie.nativehooktest-2/lib/arm/libsandhook-native.so (SandInlineHook+42)
I/DEBUG   (29383):     #05 pc 0003c44f  /data/app/com.canyie.nativehooktest-2/lib/arm/libsandhook-native.so (Java_com_swift_sandhook_nativehook_NativeHook_test+30)
I/DEBUG   (29383):     #06 pc 00000305  /data/dalvik-cache/arm/data@app@com.canyie.nativehooktest-2@base.apk@classes.dex
@canyie
Copy link
Author

canyie commented Nov 15, 2019

好像是我方法体太短了...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant