Drohnensoftware im Sicherheitscheck:
Eine Untersuchung von “Drone Harmony for DJI Dock”
„Drone Harmony for DJI Dock“ ist eine von Drone Harmony AG entwickelte Anwendung, mit der Benutzer Flugrouten für Drohneninspektionen festlegen, den Livestream der Drohne anzeigen und die Drohne in Echtzeit steuern können.
Um die Sicherheit beim Einsatz dieser Softwarelösung zu gewährleisten, wurde mgm security partners im Dezember 2024 von ihrem Kunden Vattenfall mit der Durchführung eines Penetrationstests beauftragt.
Als Ergebnis dieses umfassenden Penetrationstests wurden mehrere Schwachstellen von mgm security partners identifiziert und von Drone Harmony behoben.
Zusammenfassung
Es wurden mehrere sicherheitsrelevante Schwachstellen in der Anwendung identifiziert, die potenziell zu einer unautorisierten Rechteausweitung (Privilege Escalation) führen konnten. So war es angemeldeten Benutzern möglich, gespeicherte Standorte anderer Nutzer zu löschen. Darüber hinaus konnten Nutzer mit reinem Lesezugriff unberechtigt Medien und Overlays hochladen sowie bereits vorhandene Inhalte entfernen.
Zusätzlich wurde festgestellt, dass beliebige Dateien über die Webanwendung hoch- und wieder heruntergeladen werden konnten. Diese Schwachstelle ermöglichte sogenannte Reflected Cross-Site Scripting (XSS)-Angriffe, bei denen schädliche HTML-Dateien mit XSS-Payloads hochgeladen und über entsprechende Download-Links an andere Nutzer verteilt werden konnten.
Weitere Sicherheitsrisiken betrafen die Übertragung von Session-Tokens in URL-Parametern sowie die Offenlegung des Passworts für den MQTT-Zugang zur Drohnenkommunikation in der Benutzeroberfläche. Ersteres birgt das Risiko eines unautorisierten Kontenzugriffs über geloggte oder gecachte URLs, letzteres kann – beispielsweise in Kombination mit einem XSS-Angriff – zur Übernahme der MQTT-Kommunikation führen.
Alle identifizierten Schwachstellen wurden im Rahmen eines Responsible Disclosure-Prozesses an den Hersteller gemeldet und mit den Software-Releases vom 23. April bzw. 20. Mai 2025 behoben. Weitere Details sind unter folgendem Link veröffentlicht:
https://www.droneharmony.com/post/security
Für die Schwachstellen wurden CVEs beantragt.
Weitere Details zu den Schwachstellen sind in den folgenden Abschnitten beschrieben:
Privilege-Escalation
Beschreibung
Die Anwendung ist anfällig für horizontale und vertikale Privilege-Escalation in zwei Funktionalitäten:
Datei-Upload (vertikale Privilege-Escalation)
Die Anwendung ermöglicht es Benutzern, andere Benutzer zu ihrem Team hinzuzufügen und ihnen eingeschränkte Zugriffsrechte zu gewähren. Die Rechteüberprüfung findet jedoch nur im Frontend statt. Das ermöglicht es einem Benutzer, diese Prüfung zu umgehen. Beispielsweise könnte ein Benutzer mit ausschließlich Leserechten Medien hochladen oder löschen.
Beispiel eines Aufrufs zum Hochladen von Medien:
Beispiel eines Aufrufs zum Löschen von Medien eines anderen Benutzers:
Löschen gespeicherter Standorte (horizontale Privilege-Escalation)
Die Anwendung erlaubt es Benutzern, gespeicherte Standorte anderer Benutzer zu löschen. Der folgende Screenshot zeigt, wie ein Benutzer einen Standort speichert:
Der Standort mit der im obigen Screenshot gezeigten 'instanceId' kann dann von einem anderen Benutzer gelöscht werden:
Wie im folgenden Screenshot zu sehen ist, wurde der Standort tatsächlich gelöscht:
Betroffene Komponenten: Dateiupload, gespeicherte Standorte
Angriffstyp: Remote
Auswirkung: Privilege-Escalation
Angriffsvektoren: Um die Schwachstelle auszunutzen, muss ein Angreifer Zugang zur Anwendung, also ein Nutzerkonto haben. Je nach Konfiguration kann dies selbst angelegt werden.
Referenz: https://www.droneharmony.com/post/security
Entdecker: André Eikmeier (mgm security partners)
Upload beliebiger Dateitypen erlaubt
Beschreibung
Die Anwendung bietet diverse Dateiupload-Möglichkeiten an, die nur bestimmte Dateitypen zulassen sollten. Einige dieser Upload-Funktionen prüfen jedoch nicht den Dateityp. Während des Tests war es möglich, eine .com-Datei auf den Server hochzuladen (hier gezeigt am Beispiel des Uploads von Medien/Bildern):
Diese Datei konnte danach auch wieder heruntergeladen werden:
Dies ermöglicht es Angreifern, potenziell schädliche Dateien wie Viren oder HTML-Dateien mit schädlichem JavaScript hochzuladen.
Betroffene Komponenten: Dateiupload
Angriffstyp: Remote
Angriffsvektoren: Um die Schwachstelle auszunutzen, muss ein Angreifer Zugang zur Anwendung, also ein Nutzerkonto haben. Unter Umständen kann dies selbst angelegt werden.
Referenz: https://www.droneharmony.com/post/security
Entdecker: André Eikmeier (mgm security partners)
Reflected cross-site scripting
Beschreibung
Wie oben beschrieben, erlaubt die Anwendung den Upload von beliebigen Dateien. Dabei können auch HTML-Dateien mit schädlichem JavaScript hochgeladen werden:
Nun kann der Angreifer einem beliebigen anderen Nutzer einen Download-Link für diese schädliche HTML-Datei senden, in diesem Fall: https://{host}/server/storage/download/media/{date}/{fileName}?token={attacker_session_token}. Wenn der angegriffene Nutzer auf den Link klickt, wird die HTML-Datei geöffnet und das schädliche JavaScript ausgeführt. So könnte ein Angreifer beispielsweise auf den Session-Token des Opfers zugreifen, wenn dieses sich vorher angemeldet hat und bei der Anmeldung die Option „Angemeldet bleiben“ ausgewählt hat:
Bemerkung: Dabei ist zu beachten, dass der Session-Token im bösartigen Link der Session-Token des Angreifers ist, der das Opfer zum Herunterladen der vom Angreifer hochgeladenen Datei berechtigt. Der Session-Token, auf den das JavaScript zugreift, ist jedoch tatsächlich der Session-Token des Opfers. Diese Schwachstelle nutzt dabei sowohl die oben beschriebene Schwachstelle des Uploads beliebiger Dateitypen als auch die unten beschriebene Schwachstelle des in der URL übertragenen Session-Tokens aus.
Betroffene Komponenten: Dateiupload
Angriffstyp: Remote
Auswirkung: Offenlegung von sensiblen Informationen
Angriffsvektoren: Um die Schwachstelle auszunutzen, muss ein Angreifer Zugang zur Anwendung, also ein Nutzerkonto haben. Unter Umständen kann dies selbst angelegt werden.
Referenz: https://www.droneharmony.com/post/security
Entdecker: André Eikmeier (mgm security partners)
Übertragung des Session-Tokens in der URL
Beschreibung
Der Session-Token ermöglicht den Zugriff auf die Sitzung eines Benutzers. Der Token wird jedoch in der URL transportiert und daher unnötig viel exponiert. Sollte ein Angreifer Zugriff auf Logs oder Caches wie Server-Logs oder den Browser-Cache haben, kann er den Token auslesen und bekommt Zugriff auf das entsprechende Benutzerkonto, falls der Token noch aktiv ist.
Außerdem kann der Session-Token beim unvorsichtigen Teilen von Links an Dritte potenziell offengelegt werden.
Der folgende Screenshot zeigt einen beispielhaften HTTP-Request an das Backend, der von der Anwendung mit dem Token in der URL gestellt wird:
Betroffene Komponenten: Session-Verwaltung
Angriffstyp: Remote
Auswirkung: Offenlegung von sensiblen Informationen
Angriffsvektoren: Um die Schwachstelle auszunutzen, muss ein Angreifer Zugriff auf den Cache des Browsers oder Reverse Proxys haben oder als Man-in-the-Middle agieren, um die URLs auslesen zu können.
Referenz: https://www.droneharmony.com/post/security
Entdecker: André Eikmeier (mgm security partners)
MQTT-Passwort in der Webanwendung einsehbar
Beschreibung
Das Dashboard der Webanwendung zeigt einen Überblick über die Parameter für die Einrichtung des Drohnen-Docks, einschließlich des Passworts für das MQTT-Konto des Benutzers:
Dies ermöglicht es einem Angreifer, beispielsweise per Cross-Site-Scripting das Passwort auszulesen und Zugriff auf das MQTT-Konto und damit auf die gesamte Kommunikation des Nutzers mit der Drohne zu erhalten.
Betroffene Komponenten: Dashboard
Angriffstyp: Remote
Auswirkung: Offenlegung von sensiblen Informationen
Angriffsvektoren: Um die Schwachstelle auszunutzen, muss ein Angreifer Zugriff auf das entsprechende Nutzerkonto haben oder beispielsweise eine Cross-Site-Scripting-Schwachstelle ausnutzen.
Referenz: https://www.droneharmony.com/post/security
Entdecker: André Eikmeier (mgm security partners)
Autor
Dr. André Eikmeier ist Security-Berater und Penetration Tester. Neben der Begleitung eines Softwareentwicklungsprojekts beschäftigt er sich insbesondere mit der
Sicherheit von Web- und Fat Client-Anwendungen.
Weitere Informationen
Sie haben Fragen, oder wollen sich unverbindlich beraten lassen?
Nehmen Sie Kontakt per E-Mail auf, rufen Sie uns an oder nutzen Sie unser Kontaktformular.
Ihr Ansprechpartner
Thomas Schönrich
Nehmen Sie Kontakt per E-Mail auf, rufen Sie uns an oder nutzen Sie unser Kontaktformular.

DOWNLOAD