CVE-2021-47006: ARM: 9064/1: hw_breakpoint: Do not directly check the event's overflow_handler hook
In the Linux kernel, the following vulnerability has been resolved:
ARM: 9064/1: hw_breakpoint: Do not directly check the event's overflow_handler hook
The commit 1879445dfa7b ("perf/core: Set event's default
::overflow_handler()") set a default event->overflow_handler in
perf_event_alloc(), and replace the check event->overflow_handler with
is_default_overflow_handler(), but one is missing.
Currently, the bp->overflow_handler can not be NULL. As a result,
enable_single_step() is always not invoked.
Comments from Zhen Lei:
https://patchwork.kernel.org/project/linux-arm-kernel/patch/20210207105934.2001-1-thunder.leizhen@huawei.com/
Security readout for executives and security teams
Plain-English summary
CVE-2021-47006 is a Linux kernel ARM bug in hardware breakpoint handling. A local user could trigger an availability impact, but the public record shows no confidentiality or integrity impact and no active exploitation evidence. Treat this as a kernel maintenance risk for ARM systems, not an internet-facing emergency.
Executive priority
Schedule remediation through normal kernel patch cycles, with faster handling for shared ARM systems or devices exposed to local users. Business urgency is moderate because impact is availability-only and local, with no sourced evidence of exploitation.
Technical view
The ARM hw_breakpoint code directly checked the perf event overflow_handler hook after perf changed events to always receive a default handler. Because the handler could no longer be NULL, enable_single_step() was skipped. The CVSS vector is local, low complexity, low privilege, no user interaction, availability high.
Likely exposure
Exposure is most likely on ARM Linux systems running affected kernel versions identified in the CVE record, including affected 4.x and 5.x stable lines up to 5.13. Non-ARM deployments are not supported as affected by the supplied evidence.
Exploitation context
The supplied sources do not show KEV listing or public active exploitation. Exploitation requires local access with low privileges, and the documented impact is denial of service or availability loss rather than data theft or code execution.
Researcher notes
This issue stems from an incomplete API-behavior update after perf began assigning a default overflow_handler. The interesting validation point is whether ARM hw_breakpoint logic checks for the default handler instead of assuming NULL means absent. Evidence is limited to CVE data and kernel stable references.
Mitigation direction
Apply a vendor kernel update containing the relevant stable fix for your kernel line.
Prioritize ARM Linux hosts where local untrusted users can run code.
Check distribution advisories before backporting kernel commits manually.
Restart into the patched kernel after maintenance approval.
Track this as availability hardening, not an emergency internet-facing patch.
Validation and detection
Inventory ARM Linux kernel versions across servers, appliances, and embedded devices.
Map each kernel to the affected versions and referenced stable commits.
Confirm the installed kernel package includes CVE-2021-47006 or its stable fix.
Verify the patched code uses the default overflow-handler check correctly.
Review uptime and crash telemetry for unexplained local availability events.
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-47006 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.
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.