主机名可以注入SQL吗?

0 php mysql sql sql-injection code-injection

这是PHP中用于客户端主机名的超全局:

$_SERVER['REMOTE_HOST']
Run Code Online (Sandbox Code Playgroud)

它通常看起来像:

ecIP-AD-DRE-SS.us-west-1.compute.amazonaws.com
IP-AD-DRE-SS.bb.dnainternet.fi
IP-AD-DRE-SS.dynamic.lounea.fi
Run Code Online (Sandbox Code Playgroud)

有人可以更改其主机名,以便它包含能够进行SQL注入的内容吗?此外,如果您只从用户输入中删除单引号,是否会阻止SQL注入?

Ale*_*sky 7

有人可以更改其主机名,以便它包含能够进行SQL注入的内容吗?

有趣的问题.也许?但这没关系,因为......

此外,如果您只从用户输入中删除单引号,是否会阻止SQL注入?

绝对不.忘记处理引号并使用带有绑定参数的预处理语句.

编辑:另请注意,您通常不希望您的Web服务器为每次点击进行DNS查找,因此$_SERVER['REMOTE_HOST']通常应该取消设置.如果您需要偶尔进行身份验证或日志记录查找,您可以在PHP中进行临时.