ctfshow-web9

如题又是登录框,这次尝试了前面几题方法都没方法做出来,只好换一种思路,先对这网站的后台进行扫描(这里使用了很多种扫描工具比如dirb、dirbbuster都太拉了,扫了个寂寞,最后还是使用了下面这个工具扫出来的)
dirsearch扫描网站目录:

dirsearch -u http://079eb967-1867-4064-85b7-ee3490881e14.challenge.ctf.show/

扫描时间比较久,可以打一两把游戏再来看结果。扫描发现网站目录中存在robots.txt
ctfshow-web9_第1张图片
打开robots.txt提示打开index.phps
ctfshow-web9_第2张图片
访问/index.phps
ctfshow-web9_第3张图片
得到下面的代码,这应该就是题目的关键了,来分析一下:
代码口令部分使用了MD5加密,也就是说我们输入的字符进密码框的时候会被转义成MD5,所以现在有一种方法就是把万能口令转换成MD5值到代码中执行并且绕过登陆拿到flag


        $flag="";
		$password=$_POST['password'];
		if(strlen($password)>10){
			die("password error");
		}
		$sql="select * from user where username ='admin' and password ='".md5($password,true)."'";
		$result=mysqli_query($con,$sql);
			if(mysqli_num_rows($result)>0){
					while($row=mysqli_fetch_assoc($result)){
						 echo "登陆成功
"
; echo $flag; } } ?>

思路是有了,但是还是要试一试:

根据网上的大佬们得出一个万能密码
ffifdyop
转换为MD5就是
转换为字符串为:’ ’ ‘or’ 6
ctfshow-web9_第4张图片
直接使用这个密码登陆,获取flag
ctfshow-web9_第5张图片

你可能感兴趣的:(CTF,安全,flag,sql,web安全,数据库)