HID: bpf: cast size to ssize_t when checking hid_bpf_hw_request
- Published
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Fix
- Fixed in 6.12.113, 6.18.56, 6.20, 7.2.10
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
Summary
In the Linux kernel, the following vulnerability has been resolved: HID: bpf: cast size to ssize_t when checking hid_bpf_hw_request As reported by Sashiko: If a transport driver encounters a hardware error and returns a negative error code such as -EPIPE, ret is implicitly promoted to size_t when compared against size. This causes the negative error code to evaluate as a large positive number, making the (ret > size) condition true. This silently converts the hardware error into a success return value and copies the unmodified buffer back, which could leave BPF programs operating on uninitialized or stale data. Fix this by casting size into ssize_t to return the actual negative error code.
Timeline
- CVE published
- Record last updated
Affected versions
- Linux Linux
From d6efaa50af62fb0790dd1fd4e7e5506b46312510 · fixed in 8b85ef0f561039e249c3f883c5280a1449c6dbee; From 73c5b5aea1c443239c8cb4191b4af7a4bd6fd7b1 · fixed in 97be6396817bd3b11d06239010d27902940bfaa9; From 2b658c1c442ec1cd9eec5ead98d68662c40fe645 · fixed in f9f808227554b2c116fd07dd2328ecd74ea3f411; From 2b658c1c442ec1cd9eec5ead98d68662c40fe645 · fixed in 3afefbfe55c2a8a0c4bdf6f4cc1f773da120027c; From 6.12.78 · fixed in 6.12.113; From 6.18.20 · fixed in 6.18.56; From 6.19.10 · fixed in 6.20
- Linux Linux
7.0
- KernelLinux
fixed in 6.12.113; From 6.13.0 · fixed in 6.18.56; From 6.19.0 · fixed in 7.2.10