Skip to main content

PX4 Autopilot EUVDEUVD-2026-89108

| CVE-2026-102808 HIGH
NULL Pointer Dereference (CWE-476)
2026-09-29 VulnCheck GHSA-6mwg-qhjp-3hf8
7.1
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

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

  1. Access
    Gain MAVLink/shell access to flight controller
  2. Exploit
    Invoke sd_stress with invalid -b byte count
  3. Execution
    malloc() returns NULL, memset() dereferences it
  4. Impact
    Flight controller crashes (DoS)

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A10:2025 - Mishandling of Exceptional Conditions
ASVS 5.0
V16 - Security Logging and Error Handling Null pointer safety, defensive checks
MITRE ATT&CK

1 technique across 1 tactic: Impact

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

Exploitation Conditions

Requires access to the PX4 flight-controller command shell - specifically the ability to invoke the sd_stress system command with a crafted -b (byte count) parameter set outside the valid 1-10000 range. This shell is reachable over the drone's MAVLink telemetry/command link (adjacent, AV:A), so the attacker must be on that link rather than the open internet. Limiting factors: the attacker must reach the MAVLink/console interface and be able to run system commands; deployments that authenticate or restrict the MAVLink shell, or disable the sd_stress command in production firmware, are not exploitable. Impact is limited to a crash - no code execution or data disclosure.

Impact

This is a moderate-severity availability-only issue, not a high-impact priority. The vendor CVSS 4.0 vector (AV:A/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H) scores 7.1 driven entirely by VA:H (availability high) - there is NO confidentiality or integrity impact, so this is purely a denial-of-service (flight-controller crash), consistent with CWE-476. No EPSS score, no CISA KEV listing, and no public exploit code are present in the provided data, so exploitation status is: no public exploit identified at time of analysis. A meaningful signal conflict exists: the CVSS vector asserts PR:N (unauthenticated), but the description states the attacker needs 'shell access, including through MAVLink' - this is a prerequisite that raises the bar beyond raw network reach, though MAVLink command shells are frequently exposed without authentication on the control link, which makes PR:N defensible. AV:A (adjacent) correctly reflects that exploitation happens over the drone's radio/telemetry link rather than the open internet. Overall: real but bounded risk - a crash of safety-critical avionics is serious operationally, but there is no code execution, no data exposure, a patch exists, and no evidence of active exploitation.

Exploit ScenarioDerived

An attacker within range of a PX4-based drone's MAVLink telemetry/command link opens the flight-controller shell and runs the sd_stress command with an out-of-range -b byte count (e.g., a value that forces malloc() to return NULL). The subsequent memset() on the NULL pointer dereferences it and crashes the flight controller, potentially causing loss of control of the aircraft. No public exploit code is identified, but the trigger is trivial once shell/MAVLink access is obtained.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.2% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Sep 29, 2026

Crashes of PX4 Autopilot flight controllers (versions through 1.17.0) can be induced by invoking the sd_stress diagnostic system command with a -b byte count outside the documented 1-10000 range, because that value is passed unchecked into malloc() and memset() and ends up dereferencing a NULL pointer. The command shell is reachable from the adjacent MAVLink telemetry/command link (AV:A with PR:N per the CVSS vector, though practically the attacker must be able to reach that interface and run system commands), so the result is an availability-only denial of service with no code execution or data disclosure. No confirmed active exploitation (not in CISA KEV) and no public exploit code were identified at the time of analysis; the independent assessment rates this as a moderate-severity availability issue rather than a high-impact priority, and deployments that authenticate or restrict the MAVLink shell or remove sd_stress from production firmware are not exposed.

RemediationAI

Apply the upstream fix referenced in PR #28795 (commit c865dc9fde14d1391916775153aa271603c3c592, https://github.com/PX4/PX4-Autopilot/pull/28795), which bounds-checks the -b value to 1-10000 and returns -EINVAL otherwise; the input data states a vendor patch is available but does not name an exact released firmware version, so an upstream fix via PR/commit is confirmed while the corresponding tagged release has not been independently verified. Where rebuilding or upgrading is not immediately possible, the most effective compensating control is to remove or exclude the sd_stress diagnostic system command from production flight-controller builds, since it is a bench/stress-test utility with no operational role; the trade-off is loss of that diagnostic capability. Second, restrict and authenticate the MAVLink shell/console path: enable MAVLink signing and constrain which ground stations and network segments may reach the telemetry link, acknowledging the overhead of key management, possible incompatibility with unsigned GCS clients, and the fact that signing does not help if an already-trusted link is compromised. Third, disable remote shell access over MAVLink (for example by not exposing the nsh-over-MAVLink feature on deployed aircraft) and limit the telemetry radio's range/exposure, at the cost of losing remote console debugging. Note that the impact is a crash only; none of these controls should be treated as mitigating code execution or data disclosure, because neither is present in the assessed impact.

Affected VersionsENISA

PX4-Autopilot 0 ≤1.17.0

Affected Packages

euvd px4_autopilot no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

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

Technical ContextAI · show details

The flaw is a NULL pointer dereference (CWE-476) in PX4 Autopilot, the open-source flight-control firmware, specifically in the sd_stress system command implemented at src/systemcmds/sd_stress/sd_stress.cpp. sd_stress is a diagnostic/stress-test utility that exercises the SD card subsystem; its usage text advertises the -b ("Number of bytes") parameter with an intended range of 1-10000, but the code up to and including version 1.17.0 parsed the supplied value without enforcing that range before handing it to malloc() and memset(), so an out-of-range value (for example zero, negative, or an allocation that fails) leads to a failed allocation whose NULL return is then written through, faulting the process. On PX4 flight controllers running the NuttX-based firmware this fault crashes the flight stack. The MAVLink protocol carries telemetry and command traffic to the autopilot, and its shell/console facility (used by ground stations for remote nsh access) is the practical path to invoking sd_stress, which is why the vector is adjacent-network (AV:A) rather than network. The upstream fix (PR #28795, commit c865dc9fde14d1391916775153aa271603c3c592) adds an explicit bounds check that rejects values outside 1-10000 with PX4_ERR and -EINVAL, and updates the usage string to document the range. Impact is confined to availability (VC:N/VI:N/VA:H); there is no evidence of memory corruption exploitable for code execution or information disclosure.

Know when Px4 Autopilot 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 (VulnCheck) PRIMARY 7.1 HIGH
CVSS:4.0/AV:A/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
vuln.today AI 6.5 MEDIUM

Exploited over the MAVLink/telemetry link (AV:A) via a trivial command parameter (AC:L); MAVLink shell is often unauthenticated (PR:N); impact is a crash only, so C:N/I:N/A:H.

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

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Adjacent
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
None
Vulnerable system: Availability
High
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

PX4 Autopilot through 1.17.0 contains a NULL pointer dereference vulnerability in the sd_stress command where the -b byte count parameter is parsed without validation before being passed to malloc() and memset(). Attackers with shell access, including through MAVLink, can supply invalid byte count values to crash the flight controller.

Executive ViewAI

Why It Matters

PX4 Autopilot flight controllers through version 1.17.0 are affected by an availability-only denial-of-service condition that can crash the flight controller when a specific diagnostic command is invoked over MAVLink. Organizations operating affected PX4-based drones or autonomous aircraft could face mission interruption or loss of flight-control availability if the MAVLink command interface is reachable by an adversary, though no code execution or data disclosure is involved. No public exploit identified at time of analysis, and a vendor patch is available, so exposure can be managed through patching and restricting access to the diagnostic shell.

Business Impact: Medium
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.2%
Top 86% exploitable
Prevalence
Medium
leading open-source drone/UAV autopilot, common in research and commercial drones
Data Quality
5 sources
Confidence: Medium

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.2%
Patch available Yes
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
Scheduled
Exploitation
None
System Exposure· derived
Controlled
Automatable
No
Human Impact
Medium
Technical Impact
Partial

Priority Score

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

Attack Technique

A null pointer dereference occurs when a program attempts to access memory through a pointer that has been set to NULL (address 0x0).

Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.

CVE-2026-32708 HIGH
7.8 Mar 13

Stack overflow vulnerability in PX4 autopilot drone flight control software (versions prior to 1.17.0-rc2) where the Zen

CVE-2026-86097 HIGH
7.1 Sep 04

Null pointer dereference in PX4 Autopilot through 1.17.0 allows any party with PX4 shell access to crash the autopilot p

CVE-2026-32706 HIGH
7.1 Mar 13

Buffer overflow vulnerability in PX4 autopilot drone firmware versions before 1.17.0-rc2 that allows adjacent network at

CVE-2026-102809 HIGH
7.1 Sep 29

Denial of service in PX4 Autopilot (through version 1.17.0) through the file2 diagnostic test command, whose -c write-ch

CVE-2026-86713 HIGH
7.1 Sep 08

Use-after-free in PX4 Autopilot through 1.17.0 allows an adjacent unauthenticated attacker to corrupt flight-stack heap

CVE-2026-32705 MEDIUM
6.8 Mar 13

PX4 autopilot versions prior to 1.17.0-rc2 contain a stack overflow vulnerability in the BST telemetry probe driver that

CVE-2026-86096 MEDIUM
6.0 Sep 04

Use-after-free in PX4 Autopilot through v1.17.0 permits adjacent attackers with shell access to corrupt the autopilot's

CVE-2026-32709 MEDIUM
5.4 Mar 13

An unauthenticated path traversal vulnerability in PX4 Autopilot's MAVLink FTP implementation (CWE-22) allows any MAVLin

CVE-2026-86714 MEDIUM
5.3 Sep 08

Stack buffer over-read in PX4 Autopilot through v1.17.0 exposes stack memory via the netman system command's interface n

CVE-2026-32724 MEDIUM
5.3 Mar 13

PX4 Autopilot versions prior to 1.17.0-rc1 contain a heap-use-after-free vulnerability in the MavlinkShell::available()

CVE-2026-32707 MEDIUM
5.2 Mar 13

PX4 autopilot versions prior to 1.17.0-rc2 contain an unbounded memcpy vulnerability in the tattu_can module that allows

CVE-2026-32713 MEDIUM
4.3 Mar 13

PX4 Autopilot prior to version 1.17.0-rc2 contains a boolean logic error in MAVLink FTP session validation that uses AND

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