No kernel Linux, a seguinte vulnerabilidade foi resolvida. rede/sched: serialize qdisc_rtab_list contra o get/put concorrente qdisc_get_rtab() e qdisc_put_rtab() mutam a lista de processo-global singularmente ligada qdisc_rtab_list e um simples 'int refcnt' não atomizado sem bloqueio. Isto só era seguro porque cada chamada historicamente manteve o mutex RTNL, que serializava todas as buscas, inserções e liberações da tabela de taxas.
Que invariante não mais mantém. cls_flower define TCF_ PROTO_ OPS_ DOIT_UNLOCKED, então tc_ new_ tfilter() mantém rtnl_ held == falso para ele e define TCA_ ACT_ FLAGS_ NO_ RTNL. Essa bandeira se propaga através do tcf_exts_validate_ex() -> tcf_action_init() -> tcf_action_init_ 1 () -> tcf_police_ init(), que chama qdisc_get_rtab()/qdisc_put_rtab() com o mutex RTNL NÃO mantido. Dois pedidos RTM_ NEWTFILTER em diferentes CPUs, cada um adicionando um filtro de flor com uma ação policial carregando a mesma taxa, em seguida, corrida na qdisc_rtab_list e no refcnt não- atômico, levando a um uso- depois livre / livre- duplo do kmalloc- 2 k struct qdisc_rate_table. qdisc_rtab_list é um único global (não por- netns), por isso o objeto corrompido é compartilhado em todo o sistema. BUG: KASAN: uso de lajes-após-livre em qdisc_put_rtab+ 0 x 12 f/ 0 x 160 qdisc_put_rtab+ 0 x 12 f/ 0 x 160 tcf_police_init+ 0 xda 9 / 0 x 1590 tcf_ação_initi_ 1 + 0 x 460 / 0 x 6 b 0 tcf_action_init+ 0 x 439 / 0 xa 40 tcf_exts_validate_ex+ 0 x 42 d/ 0 x 550 fl_mudança+ 0 xddd/ 0 x 7 da 0 tc_nove_filtro de t+ 0 xaa 7 / 0 x 2420 rtnetlink_rcv_msg+ 0 x 95 e/ 0 xe 90 que pertence ao cache kmalloc- 2 K de tamanho 2048.
Proteja a lista qdisc_rtab_ e o refcount com um spinlock dedicado. A alocação (dorme, GFP_ KERNEL) no qdisc_get_rtab() é realizada antes de pegar o bloqueio; se um insertor concorrente adicionar uma tabela idêntica enquanto isso, o recém alocado é libertado sob o bloqueio, então nenhuma duplicação é vazada. qdisc_put_rtab() agora decrementa o refcount e desliga as ligações sob o mesmo bloqueio. Registro de aconselhamento: GHSA- 5 w 39 - 288 f- 6 m 96. Identificadores relacionados: CVE- 2026 - 68138.
Tempo: GitHub Advisory Database publicou este registro em 2026 - 08 - 10 T 15: 33: 37.000 Z e lista a sua última modificação como 2026 - 08 - 23 T 15: 32: 56.000 Z. Severidade: ALTAMENTE. Dados de pontuação publicados: CVSS_V 3: CVSS: 3.1 /AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H.
Software afetado: o registro de aconselhamento não fornece um pacote normalizado ou faixa de versões. Classificação e evidência: nenhum identificador CWE está listado. O registro contém 9 suporte de referências nestes tipos: AVISO, WEB.