Bug 2312076 (CVE-2024-46688) - CVE-2024-46688 kernel: erofs: fix out-of-bound access when z_erofs_gbuf_growsize() partially fails
Summary: CVE-2024-46688 kernel: erofs: fix out-of-bound access when z_erofs_gbuf_grows...
Keywords:
Status: NEW
Alias: CVE-2024-46688
Product: Security Response
Classification: Other
Component: vulnerability
Version: unspecified
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Product Security DevOps Team
QA Contact:
URL:
Whiteboard:
Depends On: 2312206
Blocks:
TreeView+ depends on / blocked
 
Reported: 2024-09-13 06:21 UTC by OSIDB Bzimport
Modified: 2024-09-13 14:45 UTC (History)
4 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed:
Embargoed:


Attachments (Terms of Use)

Description OSIDB Bzimport 2024-09-13 06:21:11 UTC
In the Linux kernel, the following vulnerability has been resolved:

erofs: fix out-of-bound access when z_erofs_gbuf_growsize() partially fails

If z_erofs_gbuf_growsize() partially fails on a global buffer due to
memory allocation failure or fault injection (as reported by syzbot [1]),
new pages need to be freed by comparing to the existing pages to avoid
memory leaks.

However, the old gbuf->pages[] array may not be large enough, which can
lead to null-ptr-deref or out-of-bound access.

Fix this by checking against gbuf->nrpages in advance.

[1] https://lore.kernel.org/r/000000000000f7b96e062018c6e3@google.com


Note You need to log in before you can comment on or make changes to this bug.