我的登录脚本容易受到SQL注入的攻击吗?
作者:互联网
2天前,一个黑客进入了一个Admin帐户.他告诉我们login.php容易受到攻击.
但是我找不到如何逃避输入的方法:
$salt = '78sdjs86d2h';
$username = mysqli_real_escape_string($DB_H, addslashes($_POST['username']));
$password = mysqli_real_escape_string($DB_H, addslashes($_POST['password']));
$hash1 = hash('sha256', $password . $salt);
$hash = strtoupper($hash1);
$check = mysqli_query($DB_H, "SELECT * FROM players WHERE Name='$username' && Password = '$hash'");
if(mysqli_num_rows($check) != 0)
解决方法:
除非您使用的是some peculiar encoding,否则您发布的代码虽然意义不大,但对于SQL注入是无害的.宁愿不要让诚实的用户登录,也无法通过SQL注入来破解它.
该漏洞是另一种漏洞,例如XSS.
标签:security,sql-injection,mysql,php 来源: https://codeday.me/bug/20191118/2031837.html