将 ltrace 信息添加到 gdb

逆向工程 调试 数据库 动态分析 称呼 痕迹
2021-06-14 18:30:54

我想在每个系统调用上使用类似 ltrace 的信息运行 gdb(或 gdb-peda)。我怎样才能做到这一点?

我知道,根据ltrace 和 gdb 附加到同一个进程,您实际上不能将 ltrace 和 gdb 附加到同一个进程。但是,一旦进程在 gdb 下,捕获每个 lib 调用并打印出它的 args 并返回 vals 应该是相当简单的,就像 ltrace 一样。

事实上,更进一步是可能且有价值的:运行 gdb 或 gdb-peda,并打印出每个调用(不仅仅是 lib 调用,带有 params 和 return val。我该怎么做?

1个回答

如果你真的想使用 GDB 来做到这一点,最好的选择可能是通过它的 Python API 编写脚本。

例子: