句号错位的奇怪 HTTP URI 请求
Odd HTTP URI Requests with Misplaced Periods
由于请求如下所示,我收到了来自系统的错误报告:
https://www.example.com./
注意第三个正斜杠前添加的句点。
我不认为这是有效的,尽管服务器说 $_SERVER['HTTP_HOST'] = www.example.net.
。
- 这在技术上有效吗?
- 我是否应该使用带有奇数字符的
trim
来重定向到 实际 主机名 URL?
- 是否有其他奇怪的方式可以请求
$_SERVER['HTTP_HOST']
我应该尝试让我的系统补偿?
- 是的,有效!查看 https://whosebug.com./.
- 从技术上讲,我相信 URI 是相同的,所以我不知道有充分的理由从一个重定向到另一个。如果它有效,我想我不会碰这个。请注意,例如 Whosebug 不会。
- HTTP
Host
header 由客户端控制,可以是任何字符串。因此,如果您正在对 header 执行任何操作,例如将其添加到 HTML 或 SQL 字符串,则需要将其视为用户输入和转义。您应该假设 每个 header。始终可以使用 CURL 发出请求并更改其中任何一个。
由于请求如下所示,我收到了来自系统的错误报告:
https://www.example.com./
注意第三个正斜杠前添加的句点。
我不认为这是有效的,尽管服务器说 $_SERVER['HTTP_HOST'] = www.example.net.
。
- 这在技术上有效吗?
- 我是否应该使用带有奇数字符的
trim
来重定向到 实际 主机名 URL? - 是否有其他奇怪的方式可以请求
$_SERVER['HTTP_HOST']
我应该尝试让我的系统补偿?
- 是的,有效!查看 https://whosebug.com./.
- 从技术上讲,我相信 URI 是相同的,所以我不知道有充分的理由从一个重定向到另一个。如果它有效,我想我不会碰这个。请注意,例如 Whosebug 不会。
- HTTP
Host
header 由客户端控制,可以是任何字符串。因此,如果您正在对 header 执行任何操作,例如将其添加到 HTML 或 SQL 字符串,则需要将其视为用户输入和转义。您应该假设 每个 header。始终可以使用 CURL 发出请求并更改其中任何一个。