CVE-2026-89607informação

Sumário

de VulDB • 11/09/2026

No kernel do Linux, a seguinte vulnerabilidade foi corrigida:

ecryptfs: rejeitar encrypted_key_size excessivo em parse_tag_3_packet

parse_tag_3_packet() define encrypted_key_size com base no corpo do pacote Tag 3 sem limitá-lo contra ECRYPTFS_MAX_KEY_BYTES (64). Quando encrypted_key_size > 64, decrypt_passphrase_encrypted_session_key() define decrypted_key_size = encrypted_key_size e executa duas escritas fora dos limites:

1. crypto_skcipher_decrypt() escreve encrypted_key_size bytes em decrypted_key[64] via scatterlist, transbordando para a estrutura pai ecryptfs_auth_tok.
2. memcpy(crypt_stat->key, decrypted_key, decrypted_key_size) grava em crypt_stat->key[64], corrompendo root_iv, keysig_list e mutexes em ecryptfs_crypt_stat.

Apenas AES-192 (código do cipher 0x08) permite isso porque define crypt_stat->key_size = 24 independentemente de encrypted_key_size, permitindo que crypto_skcipher_setkey() tenha sucesso enquanto encrypted_key_size excede ECRYPTFS_MAX_KEY_BYTES.

O caminho de descriptografia PKI (parse_tag_65_packet) já valida decrypted_key_size <= ECRYPTFS_MAX_KEY_BYTES; o caminho da senha omite essa verificação.

Limitar encrypted_key_size contra ECRYPTFS_MAX_KEY_BYTES (64) em vez de ECRYPTFS_MAX_ENCRYPTED_KEY_BYTES (512). O limite de 64 bytes também protege o buffer encrypted_key[] de 512 bytes, portanto a verificação anterior de 512 bytes é removida por ser redundante.

[tyhicks: Ajustar o comentário do código para referir-se às macros que representam os tamanhos dos buffers em vez de mencionar os valores dos tamanhos dos buffers, pois eles podem mudar no futuro]

If you want to get best quality of vulnerability data, you may have to visit VulDB.

Divulgação

11/09/2026

Moderação

em revisão

EPSS

0.00000

KEV

não

Atividades

muito baixo

Fontes

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!