CVE-2026-42534NLnet Labs Unbound 1.25.0及以下版本存在安全漏洞,源于jostle逻辑缺陷。当重传相同查询时,系统会错误地更新慢速查询的时间戳,导致jostle逻辑无法将其识别为老化对象并替换。攻击者若能控制响应缓慢的恶意DNS服务器,可利用此漏洞耗尽Unbound的查询线程资源,导致解析性能严重下降,甚至引发拒绝解析服务。
该漏洞的核心在于Unbound内部用于管理查询队列的“jostle”逻辑实现错误。正常情况下,当Unbound的每线程查询数达到`num-queries-per-thread`上限时,jostle逻辑会介入,将部分响应缓慢的旧查询替换为新查询。然而,受影响版本在处理重传查询时存在逻辑缺陷:当同一个查询需要重传时,系统错误地使用了最新重传的时间戳来更新该查询的“年龄”,而不是保留初始查询开始的时间戳。这导致本应因“年老”而被淘汰的慢速查询看起来是“年轻”的,从而无法被替换。攻击者可以通过控制一个响应极慢或故意不响应的权威域名服务器,向Unbound发送大量针对该域名的查询。由于重传机制不断刷新查询时间戳,这些慢速查询会长期占用工作线程槽位,最终耗尽资源,导致合法的新查询无法被处理,形成拒绝服务攻击。