CVE-2021-47455: ptp: Fix possible memory leak in ptp_clock_register()
In the Linux kernel, the following vulnerability has been resolved:
ptp: Fix possible memory leak in ptp_clock_register()
I got memory leak as follows when doing fault injection test:
unreferenced object 0xffff88800906c618 (size 8):
comm "i2c-idt82p33931", pid 4421, jiffies 4294948083 (age 13.188s)
hex dump (first 8 bytes):
70 74 70 30 00 00 00 00 ptp0....
backtrace:
[<00000000312ed458>] __kmalloc_track_caller+0x19f/0x3a0
[<0000000079f6e2ff>] kvasprintf+0xb5/0x150
[<0000000026aae54f>] kvasprintf_const+0x60/0x190
[<00000000f323a5f7>] kobject_set_name_vargs+0x56/0x150
[<000000004e35abdd>] dev_set_name+0xc0/0x100
[<00000000f20cfe25>] ptp_clock_register+0x9f4/0xd30 [ptp]
[<000000008bb9f0de>] idt82p33_probe.cold+0x8b6/0x1561 [ptp_idt82p33]
When posix_clock_register() returns an error, the name allocated
in dev_set_name() will be leaked, the put_device() should be used
to give up the device reference, then the name will be freed in
kobject_cleanup() and other memory will be freed in ptp_clock_release().
Security readout for executives and security teams
Plain-English summary
This is a Linux kernel memory leak in the Precision Time Protocol clock registration path. If registration fails, allocated device-name memory may not be released. The public record shows it was found by fault injection, not real-world attacks.
Executive priority
Treat this as a low-urgency kernel maintenance item unless PTP-enabled systems are stability-sensitive. Patch through normal kernel update cycles, with higher attention for infrastructure depending on precise time synchronization.
Technical view
In ptp_clock_register(), an error returned from posix_clock_register() could bypass the correct device cleanup path. The fix uses put_device() so kobject_cleanup() and ptp_clock_release() free the device name and related memory.
Likely exposure
Exposure is most relevant to Linux systems using the kernel PTP clock subsystem or related PTP hardware clock drivers. The CVE record lists Linux kernel versions and stable commit identifiers, but the source bundle does not provide a complete distribution-by-distribution affected matrix.
Exploitation context
The source bundle provides no evidence of active exploitation, and the CVE is not marked KEV. The reported trigger came from fault injection testing during PTP driver probing, so practical attacker reachability is unclear from the available sources.
Researcher notes
Evidence supports a cleanup bug in an error path, not a demonstrated exploit primitive. The available bundle lacks CVSS, CWE, attacker requirements, and complete fixed-version mapping, so validation should focus on kernel provenance and downstream vendor advisories.
Mitigation direction
Update to a vendor kernel containing the referenced stable fixes.
For Debian systems, review the cited Debian LTS advisory.
Prioritize systems using PTP hardware clock drivers.
Check vendor guidance for exact fixed package versions.
Monitor kernel advisories for downstream backports.
Validation and detection
Inventory Linux kernel versions on systems using PTP clock functionality.
Check whether PTP hardware clock drivers are loaded or configured.
Confirm installed kernels include the referenced stable fix commits or vendor backports.
Review kernel logs for PTP driver registration failures if investigating leaks.
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.
cve · low confidence lookup
CVE-2021-47455 mapping review
Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.
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.