CVE-2024-36895
Last modified
CVE-2024-36895 is a high-severity vulnerability rated 7.8/10 on the CVSS scale. In the Linux kernel, the following vulnerability has been resolved: usb: gadget: uvc: use correct buffer size when parsing configfs lists This commit fixes uvc gadget support on 32-bit platforms. Commit 0df28607c5cb ("usb: gadget: uvc: Generalise helper functions for reuse") introduced a helper function __uvcg_iter_item_entries() to aid with parsing lists of items on configfs attributes stores. This function is a generalization of another very similar function, which used a stack-allocated temporary buffer of fixed size for each item in the list and used the sizeof() operator to check for potential buffer overruns. The new function was changed to allocate the now variably sized temp buffer on heap, but wasn't properly updated to also check for max buffer size using the computed size instead of sizeof() operator. As a result, the maximum item size was 7 (plus null terminator) on 64-bit platforms, and 3 on 32-bit ones. EPSS estimates a 0.23% chance of exploitation in the next 30 days.
Description
In the Linux kernel, the following vulnerability has been resolved: usb: gadget: uvc: use correct buffer size when parsing configfs lists This commit fixes uvc gadget support on 32-bit platforms. Commit 0df28607c5cb ("usb: gadget: uvc: Generalise helper functions for reuse") introduced a helper function __uvcg_iter_item_entries() to aid with parsing lists of items on configfs attributes stores. This function is a generalization of another very similar function, which used a stack-allocated temporary buffer of fixed size for each item in the list and used the sizeof() operator to check for potential buffer overruns. The new function was changed to allocate the now variably sized temp buffer on heap, but wasn't properly updated to also check for max buffer size using the computed size instead of sizeof() operator. As a result, the maximum item size was 7 (plus null terminator) on 64-bit platforms, and 3 on 32-bit ones. While 7 is accidentally just barely enough, 3 is definitely too small for some of UVC configfs attributes. For example, dwFrameInteval, specified in 100ns units, usually has 6-digit item values, e.g. 166666 for 60fps.
Metrics
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Weakness Enumeration
Affected Software
| Vendor | Product | Versions | Update |
|---|---|---|---|
| Linux | Linux Kernel | >= 6.3, < 6.6.31 | — |
| Linux | Linux Kernel | >= 6.7, < 6.8.10 | — |
| Linux | Linux Kernel | 6.9 | Rc1 |
References
Timeline
- Published
- Last Modified
- Status
- Analyzed
Frequently Asked Questions
What is CVE-2024-36895?
How severe is CVE-2024-36895?
How do I fix CVE-2024-36895?
How Strix Helps
- How Strix found a critical auth bypass in etcdStrix autonomously discovered a critical authentication bypass in etcd, later designated CVE-2026-33413.
- Autonomous PentestingAI agents that find and validate exploitable vulnerabilities like this one across your applications.
- PR ReviewsPentest every pull request so vulnerable code is caught before it ships to production.
- AI Penetration TestingHow AI-driven penetration testing continuously covers your attack surface.
Related CVEs from 2024
- CVE-2024-3689A vulnerability classified as problematic has been found in …5.9
- CVE-2024-36890In the Linux kernel, the following vulnerability has been re…5.5
- CVE-2024-36891In the Linux kernel, the following vulnerability has been re…5.5
- CVE-2024-36892In the Linux kernel, the following vulnerability has been re…5.5
- CVE-2024-36893In the Linux kernel, the following vulnerability has been re…5.5
- CVE-2024-36894In the Linux kernel, the following vulnerability has been re…7.8
- CVE-2024-36896In the Linux kernel, the following vulnerability has been re…9.1
- CVE-2024-36897In the Linux kernel, the following vulnerability has been re…5.5
- CVE-2024-36898In the Linux kernel, the following vulnerability has been re…7.8
- CVE-2024-36899In the Linux kernel, the following vulnerability has been re…7
- CVE-2024-3690A vulnerability classified as critical was found in PHPGuruk…8.8
- CVE-2024-36900In the Linux kernel, the following vulnerability has been re…5.5
Are you affected by CVE-2024-36895?
Run a free Strix scan to check your systems for this vulnerability.
Scan your code nowSource: NVD / NIST
