可以看到题目类型属于文件包含类题目,且有提示
二、解题步骤1、判断系统
首先,需要弄清楚这是一个windows系统还是一个linux系统,当尝试包含win.ini则会提示失败
而尝试包含/etc/passwd则会看到密码文件,证明这是一个linux系统。
2、访问日志
/var/log/httpd/access_log是Apache服务器的访问日志文件
访问http://172.24.192.216/stage/6/index.php?file=/var/log/httpd/access_log
尝试包含常规的apache访问日志路径,则会给出提示:“啊哈,它不在这里,我把它给藏起来了!”
3、linux特殊文件系统(/proc)
此题模拟的就是如果找不到apache访问日志路径还有什么其他方法?/proc是linux系统上的一个特殊的文件系统
其中httpd进程目录下的/fd目录下存在很多数字指针(从0开始,每次递增1,最多十几个),其中一个指针就是指向的apache访问日志,可以通过包含/proc/self/来进入到httpd的目录,然后穷举/fd/目录下的数字指针即可以拿到key。
三、总结文件包含中判断文件系统的方法
分别尝试包含 win.ini和/etc/passwd,前者有显示,则为windows,相反,则为linux
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)