CVE-2026-53390 in Linuxinformação

Sumário

de VulDB • 19/07/2026

No kernel do Linux, a seguinte vulnerabilidade foi corrigida:

ksmbd: corrige leitura fora dos limites em smb_check_perm_dacl()

A verificação de permissões (ACE walk) em smb_check_perm_dacl() valida o tamanho do cabeçalho ACE e limita sid.num_subauth a SID_MAX_SUB_AUTHORITIES, mas nunca verifica se ace->size é realmente grande o suficiente para conter num_subauth sub-autoridades antes que compare_sids() as dereference.

CIFS_SID_BASE_SIZE cobre o cabeçalho da SID até, mas excluindo, o array sub_auth[], e offsetof(struct smb_ace, sid) representa o cabeçalho ACE; portanto, os controles existentes apenas garantem a base de 8 bytes da SID, ou seja, zero sub-autoridades. compare_sids() então lê ace->sid.sub_auth[i] para i < min(local_sid->num_subauth, ace->sid.num_subauth). As SIDs locais de comparação (sid_everyone, sid_unix_NFS_mode e o resultado de id_to_sid()) sempre têm pelo menos uma sub-autoridade, e um atacante controla os bytes de revisão da ACE e autoridade (que estão dentro da base SID válida), podendo assim corresponder a uma dessas SIDs forçar a leitura em sub_auth.

Uma ACE manipulada com size == 16 e num_subauth >= 1 posicionada no final do descritor de segurança causa, portanto, uma leitura heap out-of-bounds de até SID_MAX_SUB_AUTHORITIES * sizeof(__le32) bytes além da alocação pntsd. O descritor de segurança é carregado por ksmbd_vfs_get_sd_xattr() em um buffer dimensionado exatamente para os dados no disco (kzalloc(sd_size) em ndr_decode_v4_ntacl()), fazendo com que a leitura ocorra após o fim da alocação. O descriptor malformado pode ser armazenado literalmente via SMB2_SET_INFO (o DACL não é normalizado antes de ser gravado no xattr security.NTACL), e a leitura ocorre durante uma verificação de acesso subsequente do SMB2_CREATE, tornando isso acessível por um cliente autenticado em um compartilhamento que utiliza ACLs com xattrs.

Adiciona-se o controle ausente num_subauth-versus-ace_size, espelhando os controles idênticos já presentes nos parsers irmãos parse_dacl() e smb_inherit_dacl().

Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.

Responsável

Linux

Reservar

09/06/2026

Divulgação

19/07/2026

Moderação

aceite

Entrada

VDB-380122

CPE

pronto

EPSS

0.00000

KEV

não

Atividades

baixo

Fontes

Do you know our Splunk app?

Download it now for free!