CVE Intelligence
Alta

CVE-2026-89777 — vfio/pci: clear vdev->msi_perm after freeing it on init failure

In the Linux kernel, the following vulnerability has been resolved: vfio/pci: clear vdev->msi_perm after freeing it on init failure vfio_msi_cap_len() lazily allocates the per-device MSI permission table: vdev->msi_perm = kmalloc_obj(struct perm_bits, GFP_KERNEL_ACCOUNT); if (!vdev->msi_perm) return -ENOMEM; ret = init_pci_cap_msi_perm(vdev->msi_perm, len, flags); if (ret) { kfree(vdev->msi_perm); return ret; /* vdev->msi_perm left dangling */ } When init_pci_cap_msi_perm() -> alloc_perm_bits() fails with -ENOMEM, the error path frees vdev->msi_perm but leaves the freed pointer stored in it. vdev->msi_perm is not re-zeroed later because struct vfio_pci_core_device is per-device and persists across open/close cycles, and the vfio_config_init() error path returns without calling vfio_config_free(). So the dangling pointer outlives the failed open. That leads to two use-after-frees on the same device: 1. Reuse. The next vfio_config_init() sees the stale pointer at "if (vdev->msi_perm) return len;" and reuses the freed object. MSI config accesses in vfio_pci_config_rw_single() then dereference and call the freed perm->readfn / perm->writefn function pointers. 2. Double free. A later vfio_config_free() runs free_perm_bits() and kfree() on the already-freed object. Fix it by NULLing vdev->msi_perm after the kfree(), matching the NULL-after-free discipline already used in free_perm_bits() and vfio_config_free(). BUG: KASAN: slab-use-after-free in vfio_pci_config_rw_single (drivers/vfio/pci/vfio_pci_config.c:1961) Read of size 8 at addr ffff88800fcc88d0 by task exploit/143 Call Trace: ... kasan_report (mm/kasan/report.c:595) vfio_pci_config_rw_single (drivers/vfio/pci/vfio_pci_config.c:1961) vfio_pci_config_rw (drivers/vfio/pci/vfio_pci_config.c:1986) vfio_pci_rw (drivers/vfio/pci/vfio_pci_core.c:1599) vfs_read (fs/read_write.c:572) __x64_sys_pread64 (fs/read_write.c:764) do_syscall_64 (arch/x86/entry/syscall_64.c:94) ... Followed on device close by a double free of the same object: Oops: general protection fault, probably for non-canonical address 0x1f63e0e8000008: 0000 [#1] SMP KASAN NOPTI RIP: 0010:kfree (mm/slub.c:6711) Call Trace: vfio_config_free (drivers/vfio/pci/vfio_pci_config.c:1861) vfio_pci_core_disable (drivers/vfio/pci/vfio_pci_core.c:685) vfio_pci_core_close_device (drivers/vfio/pci/vfio_pci_core.c:777) vfio_df_close (drivers/vfio/vfio_main.c:602) vfio_device_fops_release (drivers/vfio/vfio_main.c:648) __fput (fs/file_table.c:512) __x64_sys_close (fs/open.c:1496) do_syscall_64 (arch/x86/entry/syscall_64.c:94) ... Kernel panic - not syncing: Fatal exception

Descrição oficial em inglês (tradução ainda não revisada).

Publicada em 16/09/2026 · Atualizada em 15/10/2026 · Fontes: NIST National Vulnerability Database, CVE Program (cve.org) e CISA ADP · CNA: Linux

Quem explora e qual a prioridade

Nota de 0 a 100 que combina exploração confirmada, uso por ransomware e grupos APT, exploits públicos, EPSS e severidade.

Nenhum sinal de exploração nas fontes consultadas até agora.
Como a nota foi calculada
  • Severidade técnica (high)+6

A nota ordena a fila de correção; não substitui o contexto dos seus ativos (exposição à internet, criticidade, compensações).

Triagem

Está sendo explorada, qual a probabilidade de exploração, o que afeta e qual a severidade segundo as fontes.

Exploração
Não confirmada
Fora da CISA KEV — ausência de registro, não prova de que não é explorada.
EPSS FIRST
—
Sem pontuação EPSS.
Afeta
Linux
Linux
CVSS base
8.8
Alta · 2 fonte(s)

Remediação

Correções e mitigações documentadas pelas fontes — com link para o aviso original.

Nenhuma correção documentada pelas fontes consultadas. Isso não significa que não exista: verifique o aviso do fabricante.

Primeiras 24 horas

Ordenado a partir dos próprios campos do registro — exposição primeiro, porque não se corrige o que não se encontrou. Ponto de partida, gerado por regras.

  1. Identifique ativos expostos que executam as combinações de fabricante/produto/versão afetadas (Linux Linux).
  2. Nenhuma correção documentada nas fontes: reduza a exposição e monitore o aviso do fabricante.
  3. Procure nos logs disponíveis sinais de tentativa de exploração, erros e anomalias de autenticação.

Escopo afetado

Fabricante, produto e versões como as fontes os descrevem.

FabricanteProdutoVersõesStatusFonte
Linux Linux versão ac370e3d1f3b01519d2705cd5815d1c9d0a8812bversão 4.20≥ 4.19.85 e < 4.20≥ 4.14.155 e < 4.15≥ 4.9.203 e < 4.10≥ 4.4.203 e < 4.5versão dde3433de9a067a33d67d65b9093cad3e043e49eversão f1b10ba5739440ca51d66f0b2949cead88d2dd02
e mais 9 versão be363e27ec3c3a99793da2be6c07eafb95709c6b≥ 30ea32ab1951c80c6113f300fce2c70cd12659e4 e < eb84cd81040e58dd05ac190f561f2115e3367249≥ 30ea32ab1951c80c6113f300fce2c70cd12659e4 e < dc77acfeb979dded39b247b60fef0399536bfa77≥ 30ea32ab1951c80c6113f300fce2c70cd12659e4 e < fda8fb7e8179561693a786a7af593f6b944a21c1≥ 30ea32ab1951c80c6113f300fce2c70cd12659e4 e < 533d0c5feef85ee6404b9f41d5564fac6971a008≥ 30ea32ab1951c80c6113f300fce2c70cd12659e4 e < 812f1db7f0755a19ef16ecdc5cec51bcabc5eda5≥ 30ea32ab1951c80c6113f300fce2c70cd12659e4 e < 25cdd2a492d868cff1e519a60fe282909c52d385≥ 30ea32ab1951c80c6113f300fce2c70cd12659e4 e < d665a1688af7f8fefd7c0eb04f2a37122ce007f4≥ 30ea32ab1951c80c6113f300fce2c70cd12659e4 e < f0eea8f9013676b42289ec35941e848b8a543e19
Vulnerável CVE Program (cve.org) e CISA ADP

Características do ataque

O vetor CVSS decodificado. Descreve o ataque, não a sua exposição a ele.

Vetor de ataque
Local
Complexidade
Baixa
Privilégios exigidos
Baixos
Interação do usuário
Nenhuma
Escopo
Alterado
Confidencialidade
Alto
Integridade
Alto
Disponibilidade
Alto

Todas as pontuações coletadas

As fontes pontuam de forma independente e podem discordar; cada linha diz quem pontuou e em qual versão.

NotaVersãoSeveridadeExplor.ImpactoPontuado por
8.8 CVSS 3.1 Alta 2.0 6.0 416baaa9-dc9f-4396-8d5f-8c081fb06d67 via NIST National Vulnerability Database
8.8 CVSS 3.1 Alta — — Linux via CVE Program (cve.org) e CISA ADP
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H (nota exibida no topo: 416baaa9-dc9f-4396-8d5f-8c081fb06d67)

Detecção

Derivado do vetor CVSS e da classe da fraqueza. Pontos de partida, não regras testadas.

  • Vetor local/físico: concentre-se em telemetria de endpoint (EDR) dos hosts afetados.
telemetria de endpoint (EDR)

Linha do tempo

O que aconteceu com esta CVE, do mais recente ao mais antigo.

  • 2026
  • Produtos afetados adicionados · linux/linux
    15/10/2026 · CVE Program (cve.org) e CISA ADP
  • Ficha publicada
    15/10/2026
  • CVSS alterado · 8.8
    15/10/2026 · NIST National Vulnerability Database
  • Status na fonte alterado · → Received
    15/10/2026 · NIST National Vulnerability Database
  • Registro criado nesta base
    15/10/2026 · NIST National Vulnerability Database
  • CVE publicada
    16/09/2026 · Linux

Atividade das fontes

Leituras que se repetem foram contadas em vez de listadas.

  • 1× Descrição oficial atualizada · 15/10/2026 – 15/10/2026

Referências

8 no registro

Em outras páginas do site

Linux
todas as CVEs deste fabricante

CVEs relacionadas (mesmos produtos)

  • Crítica CVE-2026-99999 ipv4: validate checksum_start before completing checksum 13 h
  • Desconhecida CVE-2026-98432 ipv4: free inet_opt and ireq_opt after an RCU grace period 13 h
  • Desconhecida CVE-2026-98424 wifi: cfg80211: undo netns switch if renaming the wiphy fails 1 d
  • Desconhecida CVE-2026-98425 wifi: mac80211: don't warn when an IBSS has no channel to scan 1 d
  • Desconhecida CVE-2026-98426 wifi: mwifiex: fix IRQ leak using wrong index in MSI-X error path 1 d
  • Desconhecida CVE-2026-98427 net/sched: codel: bound the dropping loop per dequeue call 1 d

Não consta em nenhuma fonte consultada

Listado em vez de deixado em branco: um campo vazio e um não medido parecem iguais na tela, e só um deles é motivo para procurar em outro lugar.

  • Sem pontuação EPSS da FIRST.
  • Nenhuma versão corrigida, patch ou mitigação documentada.
  • Sem avaliação SSVC da CISA.
  • Sem classificação CWE.
  • Nenhum IOC confirmado (IPs, domínios, hashes ou artefatos de malware) fornecido.
  • Nenhum inventário de ativos, controle compensatório ou evidência de implantação de patch da sua organização.
  • Nenhuma captura de tráfego de exploração, amostra de log ou caso de incidente.

Respondido a partir deste registro

Texto montado apenas com os campos acima — sem afirmações adicionais.

O que os defensores devem saber primeiro?

CVE-2026-89777 é "vfio/pci: clear vdev->msi_perm after freeing it on init failure", de severidade Alta. Afeta Linux (Linux); as versões estão na tabela de escopo. Não está na CISA KEV, o que não exclui exploração. CVSS 8.8 descreve a severidade técnica. Verifique primeiro se ativos expostos ou críticos executam as versões afetadas, aplique as correções ou mitigações do fabricante e preserve logs para análise.

Comentários

Discussão técnica moderada. Leia as regras da comunidade.

Nenhum comentário ainda.

Entre ou crie uma conta para comentar e sugerir correções.