CVE-2023-54115
Unknown Unknown - Not Provided
Memory Leak in Linux Kernel PCMCIA Resource Management

Publication date: 2025-12-24

Last updated on: 2025-12-24

Assigner: kernel.org

Description
In the Linux kernel, the following vulnerability has been resolved: pcmcia: rsrc_nonstatic: Fix memory leak in nonstatic_release_resource_db() When nonstatic_release_resource_db() frees all resources associated with an PCMCIA socket, it forgets to free socket_data too, causing a memory leak observable with kmemleak: unreferenced object 0xc28d1000 (size 64): comm "systemd-udevd", pid 297, jiffies 4294898478 (age 194.484s) hex dump (first 32 bytes): 00 00 00 00 00 00 00 00 f0 85 0e c3 00 00 00 00 ................ 00 00 00 00 0c 10 8d c2 00 00 00 00 00 00 00 00 ................ backtrace: [<ffda4245>] __kmem_cache_alloc_node+0x2d7/0x4a0 [<7e51f0c8>] kmalloc_trace+0x31/0xa4 [<d52b4ca0>] nonstatic_init+0x24/0x1a4 [pcmcia_rsrc] [<a2f13e08>] pcmcia_register_socket+0x200/0x35c [pcmcia_core] [<a728be1b>] yenta_probe+0x4d8/0xa70 [yenta_socket] [<c48fac39>] pci_device_probe+0x99/0x194 [<84b7c690>] really_probe+0x181/0x45c [<8060fe6e>] __driver_probe_device+0x75/0x1f4 [<b9b76f43>] driver_probe_device+0x28/0xac [<648b766f>] __driver_attach+0xeb/0x1e4 [<6e9659eb>] bus_for_each_dev+0x61/0xb4 [<25a669f3>] driver_attach+0x1e/0x28 [<d8671d6b>] bus_add_driver+0x102/0x20c [<df0d323c>] driver_register+0x5b/0x120 [<942cd8a4>] __pci_register_driver+0x44/0x4c [<e536027e>] __UNIQUE_ID___addressable_cleanup_module188+0x1c/0xfffff000 [iTCO_vendor_support] Fix this by freeing socket_data too. Tested on a Acer Travelmate 4002WLMi by manually binding/unbinding the yenta_cardbus driver (yenta_socket).
CVSS Scores
EPSS Scores
Probability:
Percentile:
Meta Information
Published
2025-12-24
Last Modified
2025-12-24
Generated
2026-06-16
AI Q&A
2025-12-24
EPSS Evaluated
2026-06-15
NVD
Affected Vendors & Products
Showing 3 associated CPEs
Vendor Product Version / Range
acer travelmate_4002wlmi *
linux yenta_socket *
linux linux_kernel *
Helpful Resources
Exploitability
CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-UNKNOWN
Attack-Flow Graph
AI Quick Actions
Instant insights powered by AI
Executive Summary

This vulnerability is a memory leak in the Linux kernel's PCMCIA subsystem. Specifically, the function nonstatic_release_resource_db() fails to free the socket_data when it frees all resources associated with a PCMCIA socket. This causes memory to be allocated but never released, which can be detected by tools like kmemleak.

Impact Analysis

The memory leak caused by this vulnerability can lead to increased memory usage over time, potentially degrading system performance or causing resource exhaustion if the affected PCMCIA sockets are frequently allocated and released without proper cleanup.

Detection Guidance

This vulnerability can be detected by observing memory leaks related to PCMCIA socket resources using kmemleak. You can enable kmemleak in the Linux kernel and monitor for unreferenced objects related to pcmcia, such as socket_data. Commands to help detect this include: 1. Enable kmemleak (if not already enabled): echo scan > /sys/kernel/debug/kmemleak 2. Check kmemleak reports: cat /sys/kernel/debug/kmemleak 3. Manually bind/unbind the yenta_cardbus driver to trigger the issue: modprobe -r yenta_socket modprobe yenta_socket Monitoring kmemleak output after these steps can help detect the memory leak caused by this vulnerability.

Mitigation Strategies

Immediate mitigation involves updating the Linux kernel to a version where the pcmcia: rsrc_nonstatic memory leak in nonstatic_release_resource_db() is fixed. Until then, avoid frequent binding and unbinding of the yenta_cardbus driver (yenta_socket) to reduce triggering the memory leak. Monitoring and cleaning up with kmemleak can help manage the issue temporarily.

Chat Assistant
Ask questions about this CVE
Hi! I’m here to help you understand CVE-2023-54115. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70
EPSS Chart