A Tale of a Trailing Dot (2022)
a year ago
- #Security
- #DNS
- #HTTP
- 主机名中的尾部点会影响DNS解析、HTTP头部、Cookie以及HTTPS中的SNI。
- DNS将'example.com'和'example.com.'视为相同,但多个尾部点是无效的。
- HTTP Host头部应包含URL中存在的尾部点,以便服务器进行区分。
- Cookie会忽略尾部点,将'example.com'和'example.com.'视为同一域名。
- HTTPS中的SNI会去除尾部点,导致带点和不带点的主机名无法区分。
- curl最初会去除尾部点,后因兼容性问题恢复保留。
- 尾部点曾导致curl出现安全漏洞(CVE-2022-27779和CVE-2022-30115)。
- 公共后缀列表(PSL)可防止Cookie域名设置过宽,但在curl中是可选的。
- HSTS和alt-svc的处理也需要针对尾部点进行调整。
- 尾部点仍是互联网协议中一个复杂且未解决的问题。