Unknown · Opensslxwingprivatekeyimpl · CVE-2026-28815
Nome do Software Vulnerável e Versões Afetadas
swift-crypto versões 4.3.0 e anteriores
Descrição
Um atacante remoto pode fornecer uma chave encapsulada X-Wing HPKE curta, acionando uma leitura fora dos limites no caminho de decapsulação C. Isso pode levar a uma falha ou divulgação de memória, dependendo das proteções em tempo de execução. O problema surge porque o caminho de decapsulação X-Wing aceita bytes de texto cifrado controlados pelo atacante sem impor um comprimento fixo do texto cifrado. A API C espera um buffer de tamanho fixo de 1120 bytes, e um valor `Data` menor passado para ela pode fazer com que o código C leia além do buffer Swift. A vulnerabilidade é alcançável por meio da inicialização de um `HPKE.Recipient`, onde uma `encapsulatedKey` malformada pode acionar um comportamento indefinido em vez de um erro seguro de validação de comprimento. A função `decapsulate` de `OpenSSLXWingPrivateKeyImpl` não executa uma verificação de comprimento antes de passar os dados `encapsulated` para a API C. Uma Prova de Conceito (PoC) demonstra que fornecer uma `encapsulatedKey` de 1 byte em vez dos 1120 bytes necessários não resulta em rejeição e pode levar a uma falha ou corrupção de memória quando executado com o AddressSanitizer.
Recomendações
Atualize para a versão 4.3.1 ou posterior do swift-crypto.