关键漏洞信息 漏洞描述: - HFSC (Hierarchical Fair Service Curve) 调度器在处理类添加到 eltree 时存在重入问题,导致类被添加两次。 - 当使用 NETEM 和 HFSC 结合时,可以通过特定配置绕过检查,导致 UAF (Use-After-Free) 漏洞。 根本原因: - 修补程序仅检查 字段来确定是否是第一次插入,但该字段仅由 增加。 - 使用 标志(使用 )可以绕过检查并将类两次插入 eltree 中。 影响: - 在正常情况下,这会导致 中的无限循环。 - 如果 TBF 作为根 qdisc 添加并配置为非常低的速率,可以利用它防止数据包被出队,从而允许后续插入到 HFSC eltree 中并导致 UAF。 修复措施: - 在 中显式检查类是否已在 eltree 中,特别是在设置了 标志时。 相关链接: - [1] https://web.git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=141d34391abbb315d68556b7c67ad97885407547 - [2] https://elixir.bootlin.com/linux/v6.15-rc5/source/net/sched/sch_hfsc.c#L1572 - [3] https://elixir.bootlin.com/linux/v6.15-rc5/source/net/sched/sch_hfsc.c#L677 - [4] https://elixir.bootlin.com/linux/v6.15-rc5/source/net/sched/sch_hfsc.c#L1574 - [5] https://lore.kernel.org/netdev/8DuRWWfqjoRDLDMbMlIfbrsZg9Gx50DHJclilxsEBNe2D6NMoigR_eIRIG0LOjMc3r16nUUZtArXx4oZBIIdUfZQrwjcQhdinnMis_0G7VEk=@willsroot.io/