Linux: KEYS: encrypted: fix integer overflow of datablob_len
What fixes it
- 1e720f63dbafc093a8f5d519f05b67724993edd4LinuxCVE List
- 8697c431e297eb0d0ab13dda6bc172b48a34f05cLinuxCVE List
A fixed version on one release line is not the upgrade target for every line. Check your exact version and any vendor backports.
Description
In the Linux kernel, the following vulnerability has been resolved:
KEYS: encrypted: fix integer overflow of datablob_len
encrypted_key_alloc() stores datablob_len in a u16. It is computed from multiple string and payload lengths. If the result exceeds U16_MAX, the assignment truncates the allocation size. KASAN reports a 32760-byte slab-out-of-bounds write when __ekey_init() copies the master key description into the undersized buffer.
The total payload length stored in key->datalen is also a u16. Use check_add_overflow() to reject values that do not fit either destination, and use kzalloc_flex() for the flexible-array allocation.
Text from CVE List
Affected versions 10
- Linuxaffected: 7e70cb4978507cf31d76b90e4cfb4c28cad87f0c before 1e720f63dbafc093a8f5d519f05b67724993edd4CVE List
- Linuxaffected: 7e70cb4978507cf31d76b90e4cfb4c28cad87f0c before a1a98eca102b1cbbc37ff9eaa197ae4e6a3ea4b0CVE List
- Linuxaffected: 7e70cb4978507cf31d76b90e4cfb4c28cad87f0c before cca38f2102a4cd35eda8d48950df4817b4b24757CVE List
- Linuxaffected: 7e70cb4978507cf31d76b90e4cfb4c28cad87f0c before 8697c431e297eb0d0ab13dda6bc172b48a34f05cCVE List
- Linuxaffected: 2.6.38CVE List
- Linuxunaffected: all versions before 2.6.38CVE List
- Linuxunaffected: 6.12.112 through 6.12.*CVE List
- Linuxunaffected: 6.18.54 through 6.18.*CVE List
- Linuxunaffected: 7.2.8 through 7.2.*CVE List
- Linuxunaffected: 7.3CVE List
References 4
- git.kernel.org/stable/c/1e720f63dbafc093a8f5d519f05b67724993edd4Referencevia CVE List
- git.kernel.org/stable/c/a1a98eca102b1cbbc37ff9eaa197ae4e6a3ea4b0Referencevia CVE List
- git.kernel.org/stable/c/cca38f2102a4cd35eda8d48950df4817b4b24757Referencevia CVE List
- git.kernel.org/stable/c/8697c431e297eb0d0ab13dda6bc172b48a34f05cReferencevia CVE List