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

traceFunction函数报错Error: expected a pointer和b断点断不下函数 #1

Open
thouger opened this issue Jun 11, 2024 · 2 comments

Comments

@thouger
Copy link

thouger commented Jun 11, 2024

我自己写了个测试 apk,用的静态注册方法,开线程 5 秒后执行 test 函数,函数内容简单写了 1+333,这是我的 apk,zip 后缀改成 apk
apk-debug.zip

尝试使用traceFunction,看起来和readme 的例子差不多,但是最后指针报错

(base) thouger :: Documents/code/FridaDebugger ‹main*› » frida -U -f com.zzkko -l _agent.js                                                                                                                     1 ↵
     ____
    / _  |   Frida 16.2.1 - A world-class dynamic instrumentation toolkit
   | (_| |
    > _  |   Commands:
   /_/ |_|       help      -> Displays the help system
   . . . .       object?   -> Display information about 'object'
   . . . .       exit/quit -> Exit
   . . . .
   . . . .   More info at https://frida.re/docs/home/
   . . . .
   . . . .   Connected to MI 6 (id=edc95003)
Spawned `com.zzkko`. Resuming main thread!
[MI 6::com.zzkko ]-> traceFunction(Module.findBaseAddress("libnativeLib.so").add(0xcfc))
INIT QBDI VM -> Stack: 0x7b53dd6040 | SP: 0x7b53de0040
[MI 6::com.zzkko ]->
called 0x7ae9cafc9c | args => 0x7b55936680 0x7ae9ca9ec4 0xde803b58 0x0
VM START | CALL -> 0x7ae9cafc9c | at 09:19:45 AM
VM STOP | RET => [object Promise]
Error: expected a pointer

借着尝试,无任何反应,函数是延迟五秒执行的

[MI 6::com.zzkko ]-> b(Module.findBaseAddress("libnativeLib.so").add(0xcfc))
[MI 6::com.zzkko ]-> b(Module.findBaseAddress("libnativeLib.so").add(0xcfc))
[MI 6::com.zzkko ]->
[MI 6::com.zzkko ]->
@axhlzy
Copy link
Owner

axhlzy commented Jun 13, 2024

https://github.com/axhlzy/FridaDebugger/blob/main/agent/breakpoint/breakpoint.ts#L30
具体的原因是因为stalker翻译过来的汇编指定不一定能和原指令对应上,这个我暂时也没有什么特别好的解决想法,这个项目初衷就是提供这么一个想法而已,实际落地使用还差得多,不过退一步的话考虑调试stalker翻译出来的汇编也可以的

截图中能正常调试在于他们之间有指令完全映射关系,中途是忽略了一些stalker中间指令的

@thouger
Copy link
Author

thouger commented Jun 26, 2024

意思是stalker翻译过来的汇编和原指令对不上,导致我定下的地址0xcfc未必是我看反编译时经过的地址是吗?我之前对过几下有些指令都和ida的匹配的,0xcfc这个地址有点忘记了

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

2 participants