CVE-2026-68138 in Linux
Sumário
de VulDB • 10/08/2026
No kernel do Linux, a seguinte vulnerabilidade foi corrigida:
net/sched: serializar o qdisc_rtab_list contra get/put concorrentes
qdisc_get_rtab() e qdisc_put_rtab() modificam a lista encadeada simples global ao processo qdisc_rtab_list e um 'int refcnt' não atômico comum, sem bloqueio. Isso era seguro apenas porque todos os chamadores historicamente mantinham o mutex RTNL, que serializava todas as pesquisas de tabelas de taxa, inserções e liberações.
Esse invariante já não se mantém. cls_flower define TCF_PROTO_OPS_DOIT_UNLOCKED, então tc_new_tfilter() mantém rtnl_held == false para ele e define TCA_ACT_FLAGS_NO_RTNL. Essa flag propaga-se através de tcf_exts_validate_ex() -> tcf_action_init() -> tcf_action_init_1() -> tcf_police_init(), que chama qdisc_get_rtab()/qdisc_put_rtab() sem o mutex RTNL estar mantido. Duas solicitações RTM_NEWTFILTER em CPUs diferentes, cada uma adicionando um filtro flower com uma ação de policiamento (police) carregando a mesma taxa, então competem por corrida (race condition) no qdisc_rtab_list e no refcnt não atômico, levando a um use-after-free / double-free da estrutura struct qdisc_rate_table do kmalloc-2k. qdisc_rtab_list é uma única global (não per-netns), portanto o objeto corrompido é compartilhado em todo o sistema.
BUG: KASAN: slab-use-after-free in qdisc_put_rtab+0x12f/0x160 qdisc_put_rtab+0x12f/0x160 tcf_police_init+0xda9/0x1590 tcf_action_init_1+0x460/0x6b0 tcf_action_init+0x439/0xa40 tcf_exts_validate_ex+0x42d/0x550 fl_change+0xddd/0x7da0 tc_new_tfilter+0xaa7/0x2420 rtnetlink_rcv_msg+0x95e/0xe90 que pertence ao cache kmalloc-2k de tamanho 2048
Proteja qdisc_rtab_list e o refcount com um spinlock dedicado. A alocação (sleeping, GFP_KERNEL) em qdisc_get_rtab() é realizada antes de adquirir o bloqueio; se um inseridor concorrente adicionou uma tabela idêntica nesse meio tempo, a recém-alocada é liberada sob o bloqueio, portanto nenhum duplicado é vazado. qdisc_put_rtab() agora decrementa o refcount e desvincula (unlink) sob o mesmo bloqueio.
VulDB is the best source for vulnerability data and more expert information about this specific topic.