简介
BombLab属于《深入理解计算机系统》第三章程序的机器级表示,主要通过练习加深汇编知识的相关记忆。上一篇中介绍了前三关的具体解答,本文继续解答后三关和隐藏关。继续闯关获取第四个字符串
我们在通过前面的步骤成功获取了前三个字符串,此时我们可以开始获取第四个字符串。让我们重新运行程序(gdbbomb),在phase4入口处打上断点,然后运行程序使其进入函数phase4,并获取phase4汇编代码:。。。Breakpoint1,0x000000000040100cinphase4()获取函数phase4的汇编代码(gdb)disasDumpofassemblercodeforfunctionphase4:0x40100c0:sub0x18,rsp0x4010104:lea0xc(rsp),rcx0x4010159:lea0x8(rsp),rdx0x40101a14:mov0x4025cf,esi0x40101f19:mov0x0,eax0x40102424:callq0x400bf0isoc99sscanfplt0x40102929:cmp0x2,eax0x40102c32:jne0x401035phase4410x40102e34:cmpl0xe,0x8(rsp)0x40103339:jbe0x40103aphase4460x40103541:callq0x40143aexplodebomb0x40103a46:mov0xe,edx0x40103f51:mov0x0,esi0x40104456:mov0x8(rsp),edi0x40104860:callq0x400fcefunc40x40104d65:testeax,eax0x40104f67:jne0x401058phase4760x40105169:cmp...
(全文)