
Proof-of-Concept-Exploit für CVE-2025-5640, einen Stack-Buffer-Overflow in PX4 Military UAV Autopilot <=1.12.3. Sendet manipulierte MAVLink-Pakete, um einen Denial-of-Service über UDP auszulösen, für autorisierte Sicherheitstests und Forschung.
Autor: Mohammed Idrees Banyamer (@banyamer_security)
GitHub: https://github.com/mbanyamer
Datum: 2025-06-21
Getestet auf: Ubuntu 20.04 LTS + PX4 SITL (jMAVSim)
CVE: CVE-2025-5640
Typ: Denial of Service (DoS) durch Stack-Pufferüberlauf
Plattform: Plattformunabhängig (militärische UAVs / PX4 SITL / Linux-basierte Autopilot-Bodenstation)
Autorenland: Jordanien
In PX4 Military UAV Autopilot Versionen <= 1.12.3 besteht eine Sicherheitslücke durch einen stackbasierten Pufferüberlauf.
Die Sicherheitslücke wird beim Verarbeiten einer fehlerhaften MAVLink-Nachricht des Typs TRAJECTORY_REPRESENTATION_WAYPOINTS ausgelöst.
Ein Angreifer mit Zugriff auf den MAVLink-Kommunikationskanal kann ein manipuliertes Paket senden, um den Autopiloten zum Absturz zu bringen und möglicherweise den Betrieb militärischer UAVs zu stören.
Dieses Repository enthält einen Proof-of-Concept-Exploit (PoC), der ein bösartiges MAVLink-UDP-Paket sendet, um die Sicherheitslücke auszulösen und einen Denial of Service (Absturz) im PX4-Autopiloten zu verursachen.
python3 px4_military_exploit.py [OPTIONS]
# DoS-Angriff auf Standard-PX4-SITL ausführen
python3 px4_military_exploit.py --mode dos
# Konnektivität zu einer echten Drohne testen
python3 px4_military_exploit.py --mode check --ip 192.168.10.10 --port 14550
Optionen: --ip Ziel-IP-Adresse (Standard: 127.0.0.1) --port Ziel-UDP-Port (Standard: 14540) --mode Betriebsmodus: dos (Standard), check --timeout Timeout in Sekunden für Heartbeat (Standard: 5) --verbose Ausführliche Ausgabe aktivieren
Dieser PoC-Exploit wird ausschließlich zu Bildungs- und Forschungszwecken bereitgestellt.
Die unbefugte Verwendung gegen Systeme ohne Erlaubnis ist illegal und unethisch.
Verwenden Sie ihn verantwortungsvoll und stellen Sie sicher, dass Sie vor dem Testen eine ausdrückliche Genehmigung einholen.
"""
Installieren Sie pymavlink mit pip:
pip install pymavlink