Description
In the Linux kernel, the following vulnerability has been resolved: nfc: nci: free skb on nci_transceive early error paths nci_transceive() takes ownership of the skb passed by the caller, but the -EPROTO, -EINVAL, and -EBUSY error paths return without freeing it. Due to issues clearing NCI_DATA_EXCHANGE fixed by subsequent changes the nci/nci_dev selftest hits the error path occasionally in NIPA, and kmemleak detects leaks: unreferenced object 0xff11000015ce6a40 (size 640): comm "nci_dev", pid 3954, jiffies 4295441246 hex dump (first 32 bytes): 6b 6b 6b 6b 00 a4 00 0c 02 e1 03 6b 6b 6b 6b 6b kkkk.......kkkkk 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk backtrace (crc 7c40cc2a): kmem_cache_alloc_node_noprof+0x492/0x630 __alloc_skb+0x11e/0x5f0 alloc_skb_with_frags+0xc6/0x8f0 sock_alloc_send_pskb+0x326/0x3f0 nfc_alloc_send_skb+0x94/0x1d0 rawsock_sendmsg+0x162/0x4c0 do_syscall_64+0x117/0xfc0
Product status
6a2968aaf50c7a22fced77a5e24aa636281efca8 (git) before b367cb44d919f35b07cd56feffa15e68cd9f53f9
6a2968aaf50c7a22fced77a5e24aa636281efca8 (git) before 6d898f943766440cf766d30364e715111c3563b5
6a2968aaf50c7a22fced77a5e24aa636281efca8 (git) before 33f6b8a96dda045789796c3bcb451c74ac158039
6a2968aaf50c7a22fced77a5e24aa636281efca8 (git) before dcbcccfc5195c9caaa4bb8d31f23c345f00a9e89
6a2968aaf50c7a22fced77a5e24aa636281efca8 (git) before 3245801d44a44c090acefe19a12d22d12cac45c5
6a2968aaf50c7a22fced77a5e24aa636281efca8 (git) before 9d448bbab724b94d6c561e1f314656f5b88a7cb3
6a2968aaf50c7a22fced77a5e24aa636281efca8 (git) before 54f7f0eaafa56b5994cdb5c7967946922c2e1d22
6a2968aaf50c7a22fced77a5e24aa636281efca8 (git) before 7bd4b0c4779f978a6528c9b7937d2ca18e936e2c
3.2
Any version before 3.2
5.10.253 (semver)
5.15.203 (semver)
6.1.167 (semver)
6.6.130 (semver)
6.12.77 (semver)
6.18.17 (semver)
6.19.7 (semver)
7.0 (original_commit_for_fix)
References
git.kernel.org/...c/b367cb44d919f35b07cd56feffa15e68cd9f53f9
git.kernel.org/...c/6d898f943766440cf766d30364e715111c3563b5
git.kernel.org/...c/33f6b8a96dda045789796c3bcb451c74ac158039
git.kernel.org/...c/dcbcccfc5195c9caaa4bb8d31f23c345f00a9e89
git.kernel.org/...c/3245801d44a44c090acefe19a12d22d12cac45c5
git.kernel.org/...c/9d448bbab724b94d6c561e1f314656f5b88a7cb3
git.kernel.org/...c/54f7f0eaafa56b5994cdb5c7967946922c2e1d22
git.kernel.org/...c/7bd4b0c4779f978a6528c9b7937d2ca18e936e2c