您的位置: 首页 > 文章 > CS:APP-Bomb Lab拆炸弹实验 CS:APP-Bomb Lab拆炸弹实验 分类: 文章 • 2025-05-08 18:30:28 实验前准备: 由于可执行文件的反汇编代码过长,为了便于阅读,将它重定向输出到文件中,再使用文本编辑器vi或gedit来阅读。 objdump -d bomb > bomb.s 首先观察main函数部分并对其进行gdb调试,看在调用每个关卡函数前做了什么 阅读汇编代码可知,在调用每个关卡函数之前,程序会首先输出一行提示的字符串,然后需要我们输入一个字符串作为拆炸弹的“密码”。 可以看到在执行read_line函数后,eax中保存的即为我们输入的字符串,图中即将要执行的这一步是为phase_1函数准备参数。了解这些将对后面计算栈帧位置以及推断寄存器中的值很有帮助。 具体实验步骤: