【问题标题】:debugging root application on linux with GDB使用 GDB 在 linux 上调试根应用程序
【发布时间】:2014-05-01 17:49:53
【问题描述】:

我正在研究一本名为“黑客艺术”的书,在理论之后,我正在尝试对真正的旧漏洞进行一些练习,只是为了做一些练习。

所以,我“配置”、“制作”和“制作安装”一个 ftp 易受攻击的服务,然后以 root 身份启动它。

此时,我需要在 ftp 服务以 root 身份运行时对其进行调试。 我从书中了解到,要为这样的情况创建一个有效的漏洞利用,我需要在服务以 root 身份运行时研究堆栈,以便了解我在其上运行的程序的真实“堆栈情况”想要工作......并且要做到这一点,我需要将我的 gdb 附加到正在运行的进程!

我的问题是当我启动命令时

gdb

我的 gdb 正在附加到该进程,但是我当然加载了任何符号,并且有任何可能研究程序的堆栈。

由于我拥有应用程序的所有源代码,如何编译它们以创建调试运行进程所需的符号?

【问题讨论】:

    标签: debugging process gdb


    【解决方案1】:

    您需要在编译标志中添加-g。大多数软件包都会使用configure --enable-debug 执行此操作,但如果这不起作用,您可能需要在运行configure 之前使用export CFLAGS=-g 设置CFLAGS 环境变量。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-08-11
      • 2011-01-10
      • 1970-01-01
      • 2012-03-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多