Skip to main content

NetCDF-C CVE-2025-14932

HIGH
Stack-based Buffer Overflow (CWE-121)
2025-12-23 zdi-disclosures@trendmicro.com
7.8
CVSS 3.0 · Vendor: trendmicro
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Deliver malicious NetCDF file to victim
  2. Delivery
    User opens file in NetCDF-C app
  3. Exploit
    Overflow fixed stack buffer in time-unit parser
  4. Execution
    Hijack control flow and execute code
  5. Impact
    Run arbitrary code as current user

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Stack buffer bounds checking
MITRE ATT&CK

1 technique across 1 tactic: Execution

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires the victim to open or process an attacker-controlled NetCDF file whose time-unit field contains data exceeding the fixed-length stack buffer, parsed by NetCDF-C's time-unit parsing code path. The required UI:R (user must open the malicious file or visit a page that serves it) and the local attack vector (AV:L) are the primary limiting factors - there is no network-service exposure and no automatic/unauthenticated remote trigger. No special privileges are needed (PR:N) and no non-default configuration is indicated, so any build of NetCDF-C that parses untrusted files is affected; code runs only at the privilege of the current user (S:U).

Impact

This is a moderate-priority issue whose signals are broadly consistent and point AWAY from mass exploitation. The CVSS 3.0 vector (AV:L/AC:L/PR:N/UI:R) describes a LOCAL attack vector requiring user interaction, not a truly remote network-facing flaw: despite the ZDI title and the phrase 'remote attackers,' exploitation requires the victim to open a malicious NetCDF file or visit a page that delivers one, which is why the vector is AV:L/UI:R rather than AV:N. Impact is high across confidentiality, integrity, and availability (C:H/I:H/A:H) with code execution in the context of the current user (S:U - no privilege escalation beyond the running process). EPSS is low at 0.35% (27th percentile), which aligns with the UI-dependent local vector and the absence of a listed public exploit. KEV status is NO (not CISA-listed) and no POC is indicated in the provided data, so there is no evidence of active exploitation. NOTE THE APPARENT CONFLICT: the description uses 'remote attackers' while the CVSS vector is AV:L - this is the standard ZDI file-parsing categorization (attacker is remote but delivery requires local file handling); defenders should treat this as a client-side/file-parsing bug, not a network-reachable service flaw. Net: a legitimately dangerous memory-corruption RCE, but real-world risk is gated by user interaction and is well below that of a wormable or network-exploitable vulnerability. No SSVC decision data was provided in the input.

Exploit ScenarioDerived

An attacker crafts a malformed NetCDF file containing an overly long time-unit string and distributes it via email, a shared dataset repository, or a malicious web page. When a researcher or an application using NetCDF-C parses the file's time units, the oversized data overflows a fixed-length stack buffer, letting the attacker execute arbitrary code as the current user. No public exploit code is identified in the available data.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
No patch listed yet 0.4% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 19, 2026

Stack-based buffer overflow in NSF Unidata NetCDF-C's time-unit parsing routine allows arbitrary code execution at the privilege of the current user when a victim opens a crafted NetCDF file. Exploitation is gated by user interaction (UI:R) and a local attack vector (AV:L): the attacker must deliver a malicious file or page that the target then parses, there is no network-service exposure and no automatic trigger, though no privileges are required (PR:N) and no non-default configuration is indicated. No public exploit code and no confirmed active exploitation were identified at time of analysis, and EPSS is low (0.35%, 27th percentile), consistent with a moderate-priority issue rather than a mass-exploitation threat; the ZDI advisory ZDI-25-1153 (ZDI-CAN-27273) documents the disclosure.

RemediationAI

No vendor-released patch was identified at time of analysis, so remediation must start with confirming whether an upstream NetCDF-C fix has since been tagged and, if so, rebuilding or upgrading to that release - check the ZDI advisory at https://www.zerodayinitiative.com/advisories/ZDI-25-1153/ and the Unidata NetCDF-C release notes rather than assuming a version number. Until a fix is available, the highest-value control is input provenance: refuse to open NetCDF files from untrusted sources and quarantine or pre-screen them, since the flaw only triggers when a malicious file is parsed (UI:R is the primary limiting factor). Where untrusted files must be handled, run the parsing step in a sandboxed or low-privilege worker (container with seccomp/AppArmor, dedicated unprivileged user, no network egress and no access to credentials) so a successful overflow yields nothing of value - the trade-off is operational overhead and possible breakage of jobs that need filesystem or network access. Build-level hardening helps but does not remove the bug: compile NetCDF-C and its units-parsing dependency with -fstack-protector-strong, _FORTIFY_SOURCE and full ASLR/PIE, accepting that these raise exploitation difficulty rather than eliminating the overflow. If the time-unit conversion path is not needed by a given deployment, disabling or stubbing that feature reduces attack surface, at the cost of losing time-coordinate interpretation for legitimate datasets.

Affects your stack

Find out whether the stacks and servers you run are on an affected version.

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

NetCDF-C is the reference C implementation of the NetCDF self-describing array data format used widely in climate, weather, oceanographic and scientific data pipelines; its time-unit handling (the 'units' attribute such as 'days since 1990-01-01', typically delegated to the UDUNITS-style conversion code path) parses strings supplied inside the file itself. CWE-121 (stack-based buffer overflow) describes the root cause precisely: the parser copies a user-controlled time-unit string into a fixed-length stack buffer without validating its length first, so an overlong field overwrites adjacent stack memory including saved return addresses and can redirect control flow. Because the data is embedded in the file rather than delivered over a socket, the CVSS vector is AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H - the attacker needs the victim to load the file but gains high confidentiality and integrity impact within the user's own security scope. Note that the flaw may sit in the bundled/underlying units-parsing library rather than the container format handling itself, so any application, service or batch ingest job that calls into NetCDF-C on untrusted inputs is in scope.

Know when Netcdf gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (trendmicro) PRIMARY 7.8 HIGH
AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
vuln.today AI 7.8 HIGH

File must be opened by the victim, so AV:L and UI:R; no privileges needed (PR:N); straightforward overflow gives AC:L and full C:H/I:H/A:H code execution in the user context.

3.1 AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
4.0 AV:L/AC:L/AT:N/PR:N/UI:A/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (trendmicro).

CVSS VectorVendor: trendmicro

Attack Vector
Local
Attack Complexity
Low
Privileges Required
None
User Interaction
Required
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

DescriptionCVE.org

NSF Unidata NetCDF-C Time Unit Stack-based Buffer Overflow Remote Code Execution Vulnerability. This vulnerability allows remote attackers to execute arbitrary code on affected installations of NSF Unidata NetCDF-C. User interaction is required to exploit this vulnerability in that the target must visit a malicious page or open a malicious file.

The specific flaw exists within the parsing of time units. The issue results from the lack of proper validation of the length of user-supplied data prior to copying it to a fixed-length stack-based buffer. An attacker can leverage this vulnerability to execute code in the context of the current user. Was ZDI-CAN-27273.

Executive ViewAI

Why It Matters

CVE-2025-14932 is a high-severity stack-based buffer overflow in NSF Unidata NetCDF-C's time-unit parsing routine that can permit arbitrary code execution at the current user's privilege when a victim opens a crafted NetCDF file. Because exploitation requires local file delivery and user interaction, with no public exploit identified at time of analysis, the immediate organizational risk is concentrated among users and pipelines that process untrusted NetCDF datasets rather than broad network-facing exposure. Leadership should care because successful exploitation could compromise endpoint integrity and data-processing workflows under the victim's account.

Business Impact: Medium
Compensating Controls

No vendor-released patch identified at time of analysis. Restrict processing of NetCDF files to trusted sources, sandbox or containerize NetCDF parsers, run parsing under least-privilege accounts, validate file origins, and monitor vendor advisory ZDI-25-1153 for a fixed release.

Threat Intelligence Overview

EPSS Score
0.4%
Top 73% exploitable
Prevalence
Medium
widely used scientific data library in geoscience/climate, not general enterprise software
Data Quality
3 sources
Confidence: Low

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.4%
Patch available No
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Defer
Exploitation· derived
None
System Exposure· derived
Small
Automatable· derived
No
Human Impact
Medium

Priority Score

39
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +39
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

A buffer overflow occurs when a program writes more data to a memory buffer than it was allocated to hold, causing the excess data to spill into adjacent memory regions.

A stack-based buffer overflow occurs when a program writes more data to a buffer located on the stack than it was allocated to hold.

Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.

Affected Products (CPE)CVE.org

cpe:2.3:a:unidata:netcdf:-:*:*:*:*:*:*:*

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy