这是PHP中客户端主机名的超全局变量:
$_SERVER['REMOTE_HOST']
通常看起来像这样:
ecIP-AD-DRE-SS.us-west-1.compute.amazonaws.com
IP-AD-DRE-SS.bb.dnainternet.fi
IP-AD-DRE-SS.dynamic.lounea.fi
有人可以更改其主机名,使其包含能够进行SQL注入的内容吗? 另外,如果仅从用户输入中删除单引号',是否可以防止SQL注入?
答案 0 :(得分:7)
有人可以更改其主机名,使其包含能够进行SQL注入的内容吗?
有趣的问题。也许?但这没关系,因为...
此外,如果仅从用户输入中删除单引号',是否可以防止SQL注入?
绝对不是。不用处理引号,而将prepared statements与bound parameters一起使用。
编辑:还要注意,您通常不希望Web服务器每次命中都进行DNS查找,因此通常$_SERVER['REMOTE_HOST']
应该未设置。如果您偶尔需要进行查找以进行身份验证或登录,则可以在PHP中临时进行。