攻击与威胁
DNS 缓存投毒
别称: 缓存投毒
定义
向 DNS 递归解析器缓存中插入伪造记录的攻击,使其在 TTL 过期前持续返回攻击者指定的地址。
DNS 缓存投毒以递归解析器为目标,诱使其接受并缓存恶意响应。经典技术包括猜测或嗅探事务 ID、利用可预测的源端口(卡米斯基攻击),以及在权威响应到达前以竞速方式注入伪造响应。记录被缓存后,所有使用该解析器的下游用户在 TTL 期间都会被重定向至攻击者基础设施,从而实施大规模钓鱼、投递恶意软件或 TLS 中间人攻击。缓解措施包括 DNSSEC、源端口随机化、0x20 大小写随机化、查询名最小化以及更短的 TTL。
示例
- 2008 年的卡米斯基攻击利用了主流解析器的端口可预测性缺陷。
- 对运营商解析器投毒,使其所有用户访问到假冒网银网站。
相关术语
DNS 欺骗
通过注入伪造的 DNS 响应,将受害者从合法域名重定向到攻击者控制的 IP 地址的攻击。
DNS 劫持
通过修改客户端设置、路由器配置、解析器响应或权威 DNS 记录,将 DNS 解析重定向到攻击者控制结果的攻击。
缓存投毒
将恶意响应保存在共享缓存中,使后续用户收到由攻击者控制内容的攻击。
域名劫持式钓鱼 (Pharming)
通过篡改 DNS、hosts 文件或本地路由,将用户从合法网站静默重定向到恶意站点的攻击,且无需受害者点击任何链接。
DNSSEC
一组对 DNS 区域数据进行加密签名的扩展,使解析器能够验证 DNS 响应的真实性与完整性。
DNS over HTTPS(DoH)
通过加密 HTTPS 连接传输 DNS 查询和响应的协议,防止其在本地网络上被窃听或篡改。