Description
In the Linux kernel, the following vulnerability has been resolved: thunderbolt: Reject zero-length property entries in validator tb_property_entry_valid() accepts entries with length == 0 for DIRECTORY, DATA, and TEXT types. A zero-length TEXT entry passes validation but causes an underflow in the null-termination logic: property->value.text[property->length * 4 - 1] = '\0'; When property->length is 0 this writes to offset -1 relative to the allocation. Reject zero-length entries early in the validator since they have no valid representation in the XDomain property protocol.
Affected products
- Linux / Linux7.1 – *
- Linux / Linux7.0.13 – 7.0.*
- Linux / Linuxcdae7c07e3e3509eaabc18c1640a55dc5b99c179 – 581c2053ab4dbe27e83c9e62deb4c73aa8dc0c3a
- Linux / Linuxcdae7c07e3e3509eaabc18c1640a55dc5b99c179 – 35d6c9252a152e756768a26dbf216b9dd9dd8e92
- Linux / Linuxcdae7c07e3e3509eaabc18c1640a55dc5b99c179 – 99d9dbad1463afb510d42c9714f846361d1b726d
- Linux / Linuxcdae7c07e3e3509eaabc18c1640a55dc5b99c179 – 5f56bc6bddffe8710ba0ba8844023b5a44ca90e4
- Linux / Linuxcdae7c07e3e3509eaabc18c1640a55dc5b99c179 – ca11e7da4fba4b394f69e16448f4463c44c84de6
- Linux / Linuxcdae7c07e3e3509eaabc18c1640a55dc5b99c179 – 2e0ddac549ebd713eb9f4a15b6496e3440a17d8b
- Linux / Linuxcdae7c07e3e3509eaabc18c1640a55dc5b99c179 – 3b6e68cb97f725385010264a873e14a3921b6b8a
- Linux / Linuxcdae7c07e3e3509eaabc18c1640a55dc5b99c179 – cff8eb65d1eafe7793e54b4d0cf6bf831644630b
- Linux / Linux4.15 – 4.15
- Linux / Linux0 – 4.15
- Linux / Linux5.10.259 – 5.10.*
- Linux / Linux5.15.210 – 5.15.*
- Linux / Linux6.1.176 – 6.1.*
- Linux / Linux6.6.143 – 6.6.*
- Linux / Linux6.12.94 – 6.12.*
- Linux / Linux6.18.36 – 6.18.*
References
- MISChttps://git.kernel.org/stable/c/581c2053ab4dbe27e83c9e62deb4c73aa8dc0c3a
- MISChttps://git.kernel.org/stable/c/35d6c9252a152e756768a26dbf216b9dd9dd8e92
- MISChttps://git.kernel.org/stable/c/99d9dbad1463afb510d42c9714f846361d1b726d
- MISChttps://git.kernel.org/stable/c/5f56bc6bddffe8710ba0ba8844023b5a44ca90e4
- MISChttps://git.kernel.org/stable/c/ca11e7da4fba4b394f69e16448f4463c44c84de6
- MISChttps://git.kernel.org/stable/c/2e0ddac549ebd713eb9f4a15b6496e3440a17d8b
- MISChttps://git.kernel.org/stable/c/3b6e68cb97f725385010264a873e14a3921b6b8a
- MISChttps://git.kernel.org/stable/c/cff8eb65d1eafe7793e54b4d0cf6bf831644630b