为什么远程调试时gdb插件不生效?
Why gdb plugins don't take effect while remote debugging?
我的 gdb 插件,如 peda、Gdbinit...,在本地调试时工作正常。
在我运行下面的命令之后,插件环境会一直显示。
gdb testApp
(gdb)b main
(gdb)run
我远程调试的过程如下
在 PC1 上:
gdbserver :2345 testApp
在 PC2 上:
gdb
(gdb)target remote PC1_IP:2345
(gdb)file testApp
(gdb)b main
(gdb)continue
gdb 调试似乎很好,但插件环境从未显示,尽管 PC1 和 PC2 上的插件在本地调试时都被验证可以工作。
我是不是犯了什么错误?
尝试 pwndbg 而不是 peda。
或者如果可以的话,手动修改插件。通常不擅长远程的 gdb 插件会做错一件事:当他们要求一个进程处于活动状态时,他们只考虑本地情况。他们可以远程做同样的事情,但他们没有,因为他们从一开始就没有考虑远程目标的情况。
我的 gdb 插件,如 peda、Gdbinit...,在本地调试时工作正常。 在我运行下面的命令之后,插件环境会一直显示。
gdb testApp
(gdb)b main
(gdb)run
我远程调试的过程如下
在 PC1 上:
gdbserver :2345 testApp
在 PC2 上:
gdb
(gdb)target remote PC1_IP:2345
(gdb)file testApp
(gdb)b main
(gdb)continue
gdb 调试似乎很好,但插件环境从未显示,尽管 PC1 和 PC2 上的插件在本地调试时都被验证可以工作。
我是不是犯了什么错误?
尝试 pwndbg 而不是 peda。
或者如果可以的话,手动修改插件。通常不擅长远程的 gdb 插件会做错一件事:当他们要求一个进程处于活动状态时,他们只考虑本地情况。他们可以远程做同样的事情,但他们没有,因为他们从一开始就没有考虑远程目标的情况。