nebula level04收获

首先看源码:

nebula level04收获_第1张图片

先看一下flag04目录下各个文件的权限:、



nebula level04收获_第2张图片

可以看到token所有者为flag04所属组也是flag04,其他人不可读写,所基本上无法从token入手,只好从flag04程序入手。通过flag04diamante基本可判断这段代码出问题的地方是18行和23行,第23行读取输入的文件的路径,18行判断路径是否有token,如果有就返回not access

绕过思路:

虽然我们没有办法改变token文件名但是我们可以创建一个链接指向token,然后读取这个链接文件,从而达到绕过。

对于linux硬链接和软链接可以查看此篇文章:

http://www.ibm.com/developerworks/cn/linux/l-cn-hardandsymb-links/

在tmp下创建token文件的硬链接(为什么是tmp,因为tmp目录下对level04用户是可写的)


nebula level04收获_第3张图片

最后读出密码,执行getflag

你可能感兴趣的:(nebula level04收获)