CVE-2022-50352: net: hns: fix possible memory leak in hnae_ae_register()
In the Linux kernel, the following vulnerability has been resolved:
net: hns: fix possible memory leak in hnae_ae_register()
Inject fault while probing module, if device_register() fails,
but the refcount of kobject is not decreased to 0, the name
allocated in dev_set_name() is leaked. Fix this by calling
put_device(), so that name can be freed in callback function
kobject_cleanup().
unreferenced object 0xffff00c01aba2100 (size 128):
comm "systemd-udevd", pid 1259, jiffies 4294903284 (age 294.152s)
hex dump (first 32 bytes):
68 6e 61 65 30 00 00 00 18 21 ba 1a c0 00 ff ff hnae0....!......
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
backtrace:
[<0000000034783f26>] slab_post_alloc_hook+0xa0/0x3e0
[<00000000748188f2>] __kmem_cache_alloc_node+0x164/0x2b0
[<00000000ab0743e8>] __kmalloc_node_track_caller+0x6c/0x390
[<000000006c0ffb13>] kvasprintf+0x8c/0x118
[<00000000fa27bfe1>] kvasprintf_const+0x60/0xc8
[<0000000083e10ed7>] kobject_set_name_vargs+0x3c/0xc0
[<000000000b87affc>] dev_set_name+0x7c/0xa0
[<000000003fd8fe26>] hnae_ae_register+0xcc/0x190 [hnae]
[<00000000fe97edc9>] hns_dsaf_ae_init+0x9c/0x108 [hns_dsaf]
[<00000000c36ff1eb>] hns_dsaf_probe+0x548/0x748 [hns_dsaf]
Security readout for executives and security teams
Plain-English summary
CVE-2022-50352 is a Linux kernel memory leak in the HNS/HNAE network driver path. Under a probing failure, kernel memory allocated for a device name may not be released. The main business risk is local availability impact on systems using affected kernels and relevant driver components.
Executive priority
Treat as a routine kernel availability issue unless affected driver components are present on sensitive Linux hosts. It does not currently warrant emergency response based on the provided evidence, but it should be folded into regular kernel patch cycles.
Technical view
The flaw is CWE-401 in hnae_ae_register(). If device_register() fails during module probing, the kobject reference count is not reduced to zero, so the dev_set_name() allocation leaks. The resolved fix calls put_device(), allowing kobject_cleanup() to free the name. CVSS 3.1 is 5.5 with local, low-privilege, availability-only impact.
Likely exposure
Exposure appears limited to affected Linux kernel versions where the HNS/HNAE network driver code is present and can be probed. The source lists affected versions including 4.4 through 6.1 ranges, but downstream distribution backports may change exact status.
Exploitation context
The source bundle does not show active exploitation, and KEV status is false. The CVSS vector requires local access with low privileges and no user interaction. The described condition depends on module probing and a device_register() failure path, not a remote network attack.
Researcher notes
The public record is clear on root cause and fix direction, but incomplete on practical exploitability across distributions. Validate exposure by kernel branch, backport status, and driver reachability. Avoid assuming all Linux systems are affected solely from the upstream version list.
Mitigation direction
Upgrade to a kernel or distribution package containing the referenced stable fixes.
Confirm vendor guidance for backported or vendor-maintained kernel branches.
Prioritize systems where HNS/HNAE driver components are present or loadable.
Track remediation through normal kernel vulnerability management and reboot workflows.
Validation and detection
Compare running kernel versions against vendor advisories and the CVE affected ranges.
Check whether hnae or hns_dsaf driver components exist on managed systems.
Review kernel logs for probe failures or memory leak reports involving hnae.
Confirm scanners recognize the fixed kernel package after update and reboot.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cwe · low confidence lookup
CWE-401: Exact CWE lookup
Use the exact CWE identifier as the starting point before reviewing related ATT&CK behavior. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.
CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.
CWE-401 · source CWE mapping
Missing Release of Memory after Effective Lifetime
Missing Release of Memory after Effective Lifetime represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.