网站登录将保护网站免受SQL注入


Will a site login protect a site from SQL Injection?

在任何人可以进入网站并提交任何表单数据之前,我有一个安全的登录网站。这是足够安全的SQL注入吗?

NO

SQL注入与认证无关;这与你处理用户输入的方式有关。换句话说,拥有完美凭据的用户可能有不良意图,并决定通过在表单的某些字段中输入恶意文本来尝试删除数据库。

在PHP上,您可以使用mysql_real_escape_string()来净化输入并通过字符串连接形成SQL语句,但是如果您可以更好地实现准备好的语句(也称为参数化查询),因为您的查询计划可能会被重用,并且您也可以获得性能提升。

不!

它使它容易受到攻击(如果处理不当)。以及登录后的所有易受攻击)。

由于黑客可以使用表单注入sql。

A login != slq注入保护。

清理用户输入是。

使用示例:

mysql_real_escape_string()
mysqli_real_escape_string()
pdo's prepared statements

如果用户在您的登录表单上使用sql注入,则不需要。登录表单是如何工作的。如果它使用select检查,那么你仍然需要删除坏的sql等

用你的话说,这是一个祖父悖论,如果你的登录确实为sql注入提供了保护,那么在登录页面上用户就没有登录。顺便说一下,授权/身份验证和sql注入都是不相关的事情,所以你的答案是NO