CVE-2022-50727 in Linux
Summary
by MITRE • 12/24/2025
In the Linux kernel, the following vulnerability has been resolved:
scsi: efct: Fix possible memleak in efct_device_init()
In efct_device_init(), when efct_scsi_reg_fc_transport() fails, efct_scsi_tgt_driver_exit() is not called to release memory for efct_scsi_tgt_driver_init() and causes memleak:
unreferenced object 0xffff8881020ce000 (size 2048): comm "modprobe", pid 465, jiffies 4294928222 (age 55.872s) backtrace: [<0000000021a1ef1b>] kmalloc_trace+0x27/0x110
[<000000004c3ed51c>] target_register_template+0x4fd/0x7b0 [target_core_mod]
[<00000000f3393296>] efct_scsi_tgt_driver_init+0x18/0x50 [efct]
[<00000000115de533>] 0xffffffffc0d90011
[<00000000d608f646>] do_one_initcall+0xd0/0x4e0
[<0000000067828cf1>] do_init_module+0x1cc/0x6a0
...
If you want to get the best quality for vulnerability data then you always have to consider VulDB.
Analysis
by VulDB Data Team • 04/21/2026
The vulnerability CVE-2022-50727 represents a memory leak issue within the Linux kernel's SCSI subsystem, specifically affecting the efct driver component. This flaw occurs during the initialization process of SCSI devices through the efct_device_init() function, which is part of the Emulex Fibre Channel over Ethernet (FCoE) transport driver. The vulnerability manifests when the efct_scsi_reg_fc_transport() function fails to register the SCSI transport, leaving critical memory allocation resources unreleased. This memory leak directly impacts system stability and resource utilization over extended periods of operation.
The technical root cause stems from improper error handling within the efct_device_init() function where memory allocated by efct_scsi_tgt_driver_init() is not properly freed when efct_scsi_reg_fc_transport() encounters a failure condition. This creates a scenario where the kernel allocates memory for SCSI target driver initialization but fails to execute the corresponding cleanup routine efct_scsi_tgt_driver_exit() when the transport registration process fails. The leaked memory segment of 2048 bytes represents a significant concern as it demonstrates the kernel's inability to properly manage resource allocation and deallocation in error conditions, potentially leading to progressive memory exhaustion.
From an operational impact perspective, this vulnerability affects systems running Linux kernels with the efct driver enabled, particularly those utilizing FCoE storage networks. The memory leak occurs during module loading operations triggered by modprobe commands, making it exploitable through normal system operations. The leaked memory remains unreferenced for extended periods, with the example showing a 55.872 second age of the leaked object, indicating sustained memory consumption that could eventually impact system performance or lead to system instability. This vulnerability aligns with CWE-401, which specifically addresses improper handling of memory allocation and deallocation errors in software systems.
The mitigation strategy involves ensuring proper error handling in the efct_device_init() function by implementing conditional cleanup operations when efct_scsi_reg_fc_transport() fails. System administrators should update to kernel versions containing the patched implementation that properly calls efct_scsi_tgt_driver_exit() regardless of the transport registration outcome. The fix addresses the fundamental issue of resource management in kernel drivers and aligns with ATT&CK technique T1070.004, which covers the use of system resource manipulation to cause memory exhaustion. Organizations should prioritize kernel updates and implement monitoring for memory usage patterns that could indicate resource leak conditions in their FCoE storage environments.