CVE-2026-89607

CVE-2026-89607

High · published September 12, 2026

CVSS v3.1
7.8
EPSS
0%
Percentile
5.9
In the wild
Unconfirmed
What it is

In the Linux kernel, the following vulnerability has been resolved:

ecryptfs: reject oversized encrypted_key_size in parse_tag_3_packet

parse_tag_3_packet() set encrypted_key_size from the Tag 3 packet body

without bounding it against ECRYPTFS_MAX_KEY_BYTES (64). When

encrypted_key_size > 64, decrypt_passphrase_encrypted_session_key()

sets decrypted_key_size = encrypted_key_size and performs two

out-of-bounds writes:

1. crypto_skcipher_decrypt() writes encrypted_key_size bytes into

decrypted_key[64] via scatterlist, overflowing into the parent

ecryptfs_auth_tok struct.

2. memcpy(crypt_stat->key, decrypted_key, decrypted_key_size) writes

into crypt_stat->key[64], corrupting root_iv, keysig_list, and

mutexes in ecryptfs_crypt_stat.

Only AES-192 (cipher code 0x08) enables this because it sets

crypt_stat->key_size = 24 independently of encrypted_key_size,

allowing crypto_skcipher_setkey() to succeed while encrypted_key_size

exceeds ECRYPTFS_MAX_KEY_BYTES.

The PKI decryption path (parse_tag_65_packet) already validates

decrypted_key_size <= ECRYPTFS_MAX_KEY_BYTES; the passphrase path

omits this check.

Bound encrypted_key_size against ECRYPTFS_MAX_KEY_BYTES (64) rather

than ECRYPTFS_MAX_ENCRYPTED_KEY_BYTES (512). The 64-byte limit also

protects the 512-byte encrypted_key[] buffer, so the former 512-byte

check is removed as redundant.

[tyhicks: Adjust the code comment to refer to macros representing the

buffer sizes rather than mentioning the buffer size values since they

may change in the future]

The record
Technical detail
CVSS v3.1
7.8 · HIGH
Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CVSS v4.0
Not supplied
EPSS
0.00169 · 5.9th percentile
Published
2026-09-12T00:19Z
References (8)
EPSS history
Timeline
  • 13 SEP 03:23Z
    EPSS moved — → 0%
    epss
  • 11 SEP 19:45Z
    ecryptfs: reject oversized encrypted_key_size in parse_tag_3_packet
    cvelistv5