其中一部分涉及利用SQL语句。目标是能够输入用户名和不正确的密码,但仍然能够登录。我已经在这方面工作了几个小时,没有这样的运气,我已经做了相当多的研究,看看哪些漏洞是可用的。当一个人提交他们的用户名和密码(在本例中,它可以是任何内容)时,函数将使用以下准备好的SQL语句运行:
$query = "SELECT Salt FROM Accounts WHERE Username然而,这似乎不是适当的SQL语法,可能是因为它将整个$user输入解释为用户名。在这个语句之后还有另一个准备好的语句,但是它依赖于与salt连接的密码的md5
我知道过滤bad关键字并不是防止SQL注入的好方法。然而,当我无法回答为什么这不是一个好方法时,下面是我的原则:假设在解析SQL语句时,我在服务器上执行以下操作:db.exc("INSERT INTO name VALUES ('{}', '{}');".format(firsname, lastname))
当我查