新的HTTP规范(RFC 7231)中,“欺骗性请求路由”是什么意思?

22
RFC 2616中,400响应代码用于语法错误。

由于格式不正确,服务器无法理解请求。客户端不应重复请求而不进行修改。

RFC 7231扩大了400的适用范围。规范给出了一些其他客户端错误的示例,但我不确定它们的含义。

400(错误请求)状态代码表示由于被视为客户端错误的某些问题(例如,格式错误的请求语法,无效的请求消息框架或欺骗性的请求路由),服务器无法或不会处理请求。

特别是,什么构成“欺骗性请求路由”?

可能的情况是主机请求头中存在未知名称。这可能是由于客户端使用了错误的IP地址,可能是由于DNS问题或DNS重绑定攻击引起的。我不知道是否有更具体的4xx状态代码适用于该情况。 - Andre D
1个回答

9

举个例子,这可能与CDN相关。参见 RFC 3568

对我来说,第4.1.2节很突出:

该技术涉及使用HTTP [4],例如Cookie,Language和User-Agent等,以选择代理的任务。在[20]中提供了一些使用此技术的示例。

引用的示例("欺骗性请求路由")的相关性在于当系统依赖包括自定义HTTP头部的信息进行决策时。当这样的头部缺失、陈旧、不正确或无法处理时,任何格式不正确或“错误”的来自公共互联网的东西都可以安全地被认为是恶意的(或“欺骗性的”)。


另一个例子:有人中间人攻击我的上行链路,并劫持我的会话cookie。试图使用该cookie访问站点,但突然之间,系统看到来自两个不同IP地址的具有相同令牌的请求。


这可能与ISP的某种阻塞有关吗? - Felipe

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接