Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessGain MAVLink/shell access to flight controller
-
ExploitInvoke sd_stress with invalid -b byte count
-
Executionmalloc() returns NULL, memset() dereferences it
-
ImpactFlight 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. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – 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
Affected Packages
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
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
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.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
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
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.
Apply vendor patch.
Threat Intelligence Overview
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.
What every action level means
SSVC AssessmentENISA
Priority Score
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.
More in Px4 Autopilot
View allStack overflow vulnerability in PX4 autopilot drone flight control software (versions prior to 1.17.0-rc2) where the Zen
Null pointer dereference in PX4 Autopilot through 1.17.0 allows any party with PX4 shell access to crash the autopilot p
Buffer overflow vulnerability in PX4 autopilot drone firmware versions before 1.17.0-rc2 that allows adjacent network at
Denial of service in PX4 Autopilot (through version 1.17.0) through the file2 diagnostic test command, whose -c write-ch
Use-after-free in PX4 Autopilot through 1.17.0 allows an adjacent unauthenticated attacker to corrupt flight-stack heap
PX4 autopilot versions prior to 1.17.0-rc2 contain a stack overflow vulnerability in the BST telemetry probe driver that
Use-after-free in PX4 Autopilot through v1.17.0 permits adjacent attackers with shell access to corrupt the autopilot's
An unauthenticated path traversal vulnerability in PX4 Autopilot's MAVLink FTP implementation (CWE-22) allows any MAVLin
Stack buffer over-read in PX4 Autopilot through v1.17.0 exposes stack memory via the netman system command's interface n
PX4 Autopilot versions prior to 1.17.0-rc1 contain a heap-use-after-free vulnerability in the MavlinkShell::available()
PX4 autopilot versions prior to 1.17.0-rc2 contain an unbounded memcpy vulnerability in the tattu_can module that allows
PX4 Autopilot prior to version 1.17.0-rc2 contains a boolean logic error in MAVLink FTP session validation that uses AND
EUVD-2026-89108
GHSA-6mwg-qhjp-3hf8
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB