事件起因(无语)
手残博主因在27日从根地址误删了自己两年半配置和使用的kali虚拟机。。。在一步步恢复环境配置的时候,从头到尾刷一遍题,总结思路。
题目分析
开启场景后,服务端会开启对应的端口,并在端口上部署和附件相同的ELF二进制可执行文件,我们要做的就是下载附件并在本地进行反汇编,反编译等操作分析程序漏洞,从而利用漏洞获取题目的flag。
checksec监测
file查看一下文件属性,可以看到文件是linux elf文件,64字节,x86也就是amd64微处理器。
checksec的常用命令是:checksec [filename] ,也就是checksec后面加上你的程序;
也可以用gdb插件中的checksec来监测,gdb中直接checksec就可以了,如下:
checksec可以检查程序保护机制,从而查看题目开启了哪些保护机制,有助于对题目的初步分析。
Arch:程序位数(查看是多少位的程序,比如32或64位),也可以查看是哪个微处理器,比如i386为32位微处理器,amd64为64位微处理器(x86架构的延伸产品,称为x86-64,后改名为AMD64);
RELRO:设置符号重定向表格为只读或在程序启动时就解析并绑定所有动态符号,从而减少对GOT(Global Offset Table)攻击。RELEO为"Partial RELRO"&#x