登录进远程电脑,看到flag,查看内容,权限不够失败咯,ls -la看看权限。
欧克,fd用户对flag只用可读权限,但是呢,看到fd用户对fd文件有s权限,它指设置使当前在执行阶段具有文件所有者的权限。看看fd.c源码信息:
看到了查看flag的命令,耶,说明执行fd会执行此命令(fd在执行状态具有查看flag内容的权限)。
看了下程序逻辑,好叭,输入不正确值,先用scp命令下载下来,再gdb走起。
是这样吗?
不是啊,耻辱,对代码缺少明显的敏感性,需要多读多看多写代码啊。这一块,思路就是了解好read,第一个文件描述符参数设为0就允许标准输入,即从键盘输入。试试./fd 4660,接着输入那个值:
欧克,到远程主机上瞅瞅:
耶,成功。
weak:忘了read函数文件描述符的妙用,切记切记;要多看多写代码。