题目源码

    1. <?php
    2. $flag="";
    3. $password=$_POST['password'];
    4. if(strlen($password)>10){
    5. die("password error");
    6. }
    7. $sql="select * from user where username ='admin' and password ='".md5($password,true)."'";
    8. $result=mysqli_query($con,$sql);
    9. if(mysqli_num_rows($result)>0){
    10. while($row=mysqli_fetch_assoc($result)){
    11. echo "登陆成功<br>";
    12. echo $flag;
    13. }
    14. }
    15. ?>

    将密码转换成16进制的hex值以后,再将其转换成字符串后包含’ ‘or ’ 6’
    如果加密过后的密码是 ‘ or ‘?????
    那么由于运算的优先级关系 我们最后的or ‘???? 就相当于一个or true 永远是对的
    这样的话就是一个万能密码
    提供两个字符串: ffifdyop、129581926211651571912466741651878684928