LiveActive security incident?Get immediate response
CVE Record

CVE-2021-47631: ARM: davinci: da850-evm: Avoid NULL pointer dereference

In the Linux kernel, the following vulnerability has been resolved: ARM: davinci: da850-evm: Avoid NULL pointer dereference With newer versions of GCC, there is a panic in da850_evm_config_emac() when booting multi_v5_defconfig in QEMU under the palmetto-bmc machine: Unable to handle kernel NULL pointer dereference at virtual address 00000020 pgd = (ptrval) [00000020] *pgd=00000000 Internal error: Oops: 5 [#1] PREEMPT ARM Modules linked in: CPU: 0 PID: 1 Comm: swapper Not tainted 5.15.0 #1 Hardware name: Generic DT based system PC is at da850_evm_config_emac+0x1c/0x120 LR is at do_one_initcall+0x50/0x1e0 The emac_pdata pointer in soc_info is NULL because davinci_soc_info only gets populated on davinci machines but da850_evm_config_emac() is called on all machines via device_initcall(). Move the rmii_en assignment below the machine check so that it is only dereferenced when running on a supported SoC.

MediumCVSS 5.5Not KEV-listedUpdated
Glexia's TakeAutomated analysismoderate

Security readout for executives and security teams

Plain-English summary

CVE-2021-47631 is a Linux kernel reliability flaw in ARM DaVinci DA850 Ethernet initialization. On affected builds, the kernel can dereference a NULL pointer during boot and panic. The business impact is availability, not data theft, and the provided sources do not show active exploitation.

Executive priority

Treat as a targeted availability risk. Prioritize embedded, ARM, or appliance-like systems where reboot failure would disrupt operations. It is less urgent than remotely exploitable kernel bugs, but should be patched through normal kernel maintenance.

Technical view

The flaw is CWE-476 in da850_evm_config_emac(). emac_pdata can be NULL when davinci_soc_info is not populated, because the initcall may run on non-DaVinci machines. The kernel fix moves rmii_en access after the machine check so dereference occurs only for supported SoCs.

Likely exposure

Exposure is most likely on Linux systems using affected ARM DaVinci DA850-related kernel code or multi_v5-style builds. Source data lists Linux kernel as affected across several version lines, but exact exposure depends on downstream kernel patches and configuration.

Exploitation context

The CVSS vector is local, low complexity, low privilege, no user interaction, with high availability impact. The source bundle marks KEV as false and provides no public evidence of active exploitation. The described failure was observed as a boot-time kernel panic in QEMU.

Researcher notes

Evidence supports a NULL pointer dereference fixed by initialization ordering and machine checks. The bundle does not provide exploit code, weaponized scenarios, or distribution-specific fixed package names. Validate against actual kernel configuration and vendor backport status.

Mitigation direction

  • Upgrade to a kernel release containing the relevant stable fix for your maintained branch.
  • Confirm downstream distribution packages include one of the referenced kernel stable commits.
  • Check vendor guidance for exact fixed package versions and backports.
  • Reduce local access on systems where vulnerable kernels cannot be updated promptly.

Validation and detection

  • Inventory Linux kernel versions and architectures against the affected version data.
  • Check kernel source or changelog for the referenced stable commit in your branch.
  • Review boot logs for NULL pointer panic in da850_evm_config_emac().
  • Confirm test coverage for ARM multi_v5 or DaVinci boot paths after updating.
Prepared
Confidence
high
Sources
10

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-476: 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.

Open ATT&CK lookup
cve · low confidence lookup

CVE-2021-47631 mapping review

Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.

Open ATT&CK lookup
Vulnerability profileCVE Program record
Severity
Medium
CVSS
5.5 (3.1)
Known Exploited
No
Published

Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H

Official CVE source material

CNA and ADP enrichment extracted from CVE v5

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.

1CVSS vectors
3Timeline events
1ADP providers
9Source links

SSVC decision data

CISA-ADPCISA Coordinator
Timestamp
Version
2.0.3
Exploitation: noneAutomatable: noTechnical Impact: partial

CVSS vector scores

1 official score

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.

ScoreVersionSeverityVectorExploitImpactSource
5.5CVSS 3.1MediumCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H1.83.6CISA-ADP

Vulnerability scoring details

Base CVSS 3.1 score

5.5Medium
CVSS 3.1 vector shape for CVE-2021-47631Attack VectorAttack ComplexityPrivileges RequiredUser InteractionScopeConfidentiality ImpactIntegrity ImpactAvailability Impact

Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H

Attack Vector
NetworkAdjacentLocalPhysical
Attack Complexity
LowHigh
Privileges Required
NoneLowHigh
User Interaction
NoneRequired
Scope
ChangedUnchanged
Confidentiality Impact
HighLowNone
Integrity Impact
HighLowNone
Availability Impact
HighLowNone

Vulnerability timeline

Timeline events are normalized from CVE metadata, CNA source timelines, ADP timelines, and KEV metadata when present.

  1. CVE reservedCVE Program

    The CVE ID was reserved by the assigning CNA.

  2. CVE publishedCVE Program

    The CVE record was published.

  3. CVE updatedCVE Program

    The CVE record metadata indicates this as the latest update time.

ADP provider summaries

CISA-ADPCISA ADP Vulnrichment
cvssV3_1other:ssvc
Affected products

Products and packages named in the record

VendorProductVersion / packageStatus
LinuxLinuxbae105879f2f2404155da6f50b3636193d228a62, bae105879f2f2404155da6f50b3636193d228a62, bae105879f2f2404155da6f50b3636193d228a62, bae105879f2f2404155da6f50b3636193d228a62, bae105879f2f2404155da6f50b3636193d228a62, bae105879f2f2404155da6f50b3636193d228a62, bae105879f2f2404155da6f50b3636193d228a62, bae105879f2f2404155da6f50b3636193d228a62unaffected
LinuxLinux2.6.33, 0, 4.9.311, 4.14.276, 4.19.239, 5.4.190, 5.10.112, 5.15.35, 5.17.4, 5.18affected
Weakness

CWE details

CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.

CWE-476 · source CWE mapping

NULL Pointer Dereference

NULL Pointer Dereference represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.