运行gdb cmd时,我可以通过Ctrl-C手动停止cmd。这将调用调试器并让我检查内存。
在pwntools中,我可以附加gdb,还可以通过在gdb窗口中按Ctrl-C来手动停止该进程。我希望能够从pwntools脚本以编程方式完成此操作:类似于:
if output != expected:
io.gdb.ctrlc() # break, let me use gdb这不一定需要pwntools的答案。GDB有一个强大的Python API,但我找不到等同于“中断进程,就好像有人按下了Ctrl-C”。有没有办法做到这一点,通过GDB Python API或通过pwntools方法?
发布于 2021-11-23 01:01:13
有没有办法做到这一点,通过GDB Python API或通过pwntools方法?
我不知道pwntools,但在全停止模式下使用GDB Python API是不可能的:当下级进程正在运行时,GDB会被阻塞(等待使用waitpid的下级进程发生什么事情)。
不过,它在non-stop mode中可能会起作用。
https://stackoverflow.com/questions/70073113
复制相似问题