前几天做了一道CTF的题目,是在”实验吧“的一道简单的web题目,当然这道题目很多人都解出来了,因为它的.php文件名就是答案。
他的网页链接里面的php文件名就是’ffifdyop.php‘。
上面的’ffifdyop‘就是我们要输入的密码。哦,忘了介绍,这道题目只需要表单提交密码。
当然如果直接输入ffifdyop,提交后就能出现flag。我也不知道出题的本意是如何,但是也许大家不知道这道题的原理是什么,为什么ffifdyop是答案。比如我,我之前一直不知道这个sql注入的原理是什么。
下面就说明这道题的sql注入的原理,我们可以直接看到后台里面的php判断代码:
<!-- $password=$_POST['password'];
$sql = "SELECT * FROM admin WHERE username = 'admin' and password = '".md5($password,true)."'";
$result=mysqli_query($link,$sql);
if(mysqli_num_rows($result)>0){
echo 'flag is :'.$flag;
}
else{
echo '密码错误!';
} -->
从