CVE-2025-40028: binder: fix double-free in dbitmap

Published Oct 28, 2025
·
Updated

In the Linux kernel, the following vulnerability has been resolved:

binder: fix double-free in dbitmap

A process might fail to allocate a new bitmap when trying to expand its proc->dmap. In that case, dbitmapgrow() fails and frees the old bitmap via dbitmapfree(). However, the driver calls dbitmapfree() again when the same process terminates, leading to a double-free error:

================================================================== BUG: KASAN: double-free in binderprocdectmpref+0x2e0/0x55c Free of addr ffff00000b7c1420 by task kworker/9:1/209

CPU: 9 UID: 0 PID: 209 Comm: kworker/9:1 Not tainted 6.17.0-rc6-dirty #5 PREEMPT Hardware name: linux,dummy-virt (DT) Workqueue: events binderdeferredfunc Call trace: kfree+0x164/0x31c binderprocdectmpref+0x2e0/0x55c binderdeferredfunc+0xc24/0x1120 processonework+0x520/0xba4 [...]

Allocated by task 448: kmallocnoprof+0x178/0x3c0 bitmapzalloc+0x24/0x30 binderopen+0x14c/0xc10 [...]

Freed by task 449: kfree+0x184/0x31c binderincreffornode+0xb44/0xe44 bindertransaction+0x29b4/0x7fbc binderthreadwrite+0x1708/0x442c binderioctl+0x1b50/0x2900 [...] ==================================================================

Fix this issue by marking proc->map NULL in dbitmapfree().

Affected Software

1 affected component
Linux Linux kernel

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Configuration

    Apply the binder fix by marking proc->map NULL in dbitmap_free() to prevent a double-free when the driver calls dbitmap_free() again (e.g., when dbitmap_grow() fails and frees the old bitmap).

    Linux kernel (binder) proc->map NULL handling in dbitmap_free() = Set proc->map to NULL in dbitmap_free() after freeing

Event History

Oct 28, 2025
CVE Published
via MITRE·09:32 AM
Data Sourced
via MITRE·09:32 AM
DescriptionSeverity
Data Sourced
via NVD·10:15 AM
DescriptionSeverity

Frequently Asked Questions

1

What is the severity of CVE-2025-40028?

CVE-2025-40028 has a severity rating that may vary based on system configuration and usage, but it addresses a critical double-free vulnerability in the Linux kernel.

2

How do I fix CVE-2025-40028?

To fix CVE-2025-40028, you should update your Linux kernel to the latest patched version that resolves this double-free vulnerability.

3

What impact does CVE-2025-40028 have on affected systems?

CVE-2025-40028 can potentially allow an attacker to exploit the double-free vulnerability leading to memory corruption and possible arbitrary code execution.

4

Which versions of the Linux kernel are affected by CVE-2025-40028?

CVE-2025-40028 affects specific versions of the Linux kernel that don't include the patch addressing the double-free issue, so it's crucial to review the details of your current kernel version.

5

Is CVE-2025-40028 related to other vulnerabilities in the Linux kernel?

CVE-2025-40028 might be related to other memory management vulnerabilities in the Linux kernel, particularly those concerning bitmap allocation and management.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203