Php 如果我得到错误403,我的站点是否容易受到SQL注入的攻击?

Php 如果我得到错误403,我的站点是否容易受到SQL注入的攻击?,php,mysql,sql,sql-injection,Php,Mysql,Sql,Sql Injection,我有一个登录表单,为了测试,我试着填写“select*from accounts where username=test”,然后按enter键查看发生了什么。我被重定向到此页面: 我应该关注SQL注入吗?或者这是正常的反应 编辑:此特定情况下的PHP代码 $sql=“从Useremail=?”的帐户中选择*; $stmt=mysqli\u stmt\u init($conn); 如果(!mysqli_stmt_prepare($stmt,$sql)) { echo“尝试连接到数据库时出错。请重

我有一个登录表单,为了测试,我试着填写“select*from accounts where username=test”,然后按enter键查看发生了什么。我被重定向到此页面:

我应该关注SQL注入吗?或者这是正常的反应

编辑:此特定情况下的PHP代码

$sql=“从Useremail=?”的帐户中选择*;
$stmt=mysqli\u stmt\u init($conn);
如果(!mysqli_stmt_prepare($stmt,$sql))
{
echo“尝试连接到数据库时出错。请重新提交密码重置请求。”;
退出();
}
其他的
{
mysqli_stmt_bind_param($stmt,“s”,$userEmail);
mysqli_stmt_execute($stmt);
$result=mysqli\u stmt\u get\u result($stmt);
如果(!$row=mysqli\u fetch\u assoc($result))
{
标题(“位置:/reset password.php?reset=fail”);
退出();
}
}

403是未经授权请求的标准http状态代码。看来,至少在这一次测试中,网站做了正确的事情

这并不能保证它没有SQL注入漏洞。俗话说:

“测试表明存在错误,而不是没有。”

换句话说,可能有另一种方法可以使用SQL注入来利用此站点,而不是您测试的那个

您应该始终关注SQL注入漏洞,并寻求使用安全编程技术来防止它们


附言:我希望你有权在这个网站上进行渗透测试。在一些国家,未经允许就这样做是一种犯罪,人们因此而被起诉。我建议您避免对漏洞进行此类测试,除非它是您自己的网站,或者它的所有者专门聘请您进行此类测试。

这两种测试可能都未公布,但可能存在过多的潜在漏洞。获取禁止的URL意味着URL更改为包含查询的一部分。这可能会导致一些问题,但如果没有登录代码,就无法判断。@obsidymanage上述示例的代码已在问题中编辑。