UBUNTU-CVE-2026-80802: Medium severity ubuntu/linux-aws vulnerability
In the Linux kernel, the following vulnerability has been resolved: nfc: fdp: bound the device-reported read length and fix an skb leak fdpncii2cread() takes the next packet length from two device-supplied bytes and never validates it. The value is a u16 used as the i2cmasterrecv() count into a 261-byte on-stack buffer: a malicious, counterfeit or malfunctioning controller (or an i2c bus interposer) can drive it far past the buffer for a stack out-of-bounds write that clobbers the canary and return address, or below the minimum frame size (directly, or by truncating the computed sum) so the header/LRC strip and the next length read run past a short receive. Reject a length outside [FDPNCII2CMINPAYLOAD, FDPNCII2CMAXPAYLOAD], as a corrupted packet already is, and force resynchronization. The same loop allocates one data skb per iteration and assumes a length packet followed by a data packet; a device that sends two data packets in one call leaks the first skb when the second allocation overwrites it. Free a previously allocated skb before allocating the next.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Compensating control
In fdp_nci_i2c_read(), reject device-reported lengths outside [FDP_NCI_I2C_MIN_PAYLOAD, FDP_NCI_I2C_MAX_PAYLOAD] and force resynchronization.
- Compensating control
In the read loop, free the previously allocated data skb before allocating the next skb, preventing a second data packet from overwriting the first skb pointer and leaking it.