
Eine Sammlung von Schwachstellen und Exploits gegen moderne GCS
Angriffsvektoren, Schwachstellen und Exploits von Drohne zu Bodenkontrollstation
Drohnenflotten bestehen heute aus einem Operator, der Dutzende oder Hunderte von Drohnen von einer einzigen Bodenstation aus fliegt. Dadurch wird die Bodenkontrollstation zu einem wertvollen Ziel für Angreifer. Dort befindet sich üblicherweise der Pilot, dort werden oft Missionsdaten gespeichert, und sie ist ein erstklassiger Vektor für laterale Bewegung über UxS-Netzwerke und andere Drohnen in einer Flotte.
Der Großteil der Drohnensicherheitsforschung hat sich auf die Drohne als Ziel konzentriert. Die Infected Drone-Forschung wählt einen alternativen Ansatz und zeigt, wie eine einzelne kompromittierte Drohne Bodenstationen angreifen kann, die sich mit ihr verbinden. Da die meiste Bodenkontrollsoftware allem vertraut, was die Drohne sendet, fehlen Authentifizierung, Validierung und Sanitisierung, wodurch Daten von einer kompromittierten Drohne zu Datei-CRUD, Codeausführung oder einem Absturz auf dem Rechner des Operators führen können.
Dieses Repository dokumentiert Schwachstellen in Bodenkontrollstationssoftware und liefert funktionierenden Proof-of-Concept-Code dafür. Es wird ausschließlich zu Bildungszwecken veröffentlicht und damit Operatoren ihre Exposition verstehen und Maintainer diese Probleme reproduzieren und beheben können.
Führe die PoCs nur gegen Systeme aus, die dir gehören oder für die du eine schriftliche Testgenehmigung hast. Jeder einzelne davon ist für einen Prüfstand geschrieben: Die Payloads sind harmlose Marker, und nichts hier ist für den Einsatz gegen die Luftfahrzeuge oder Bodenstationen anderer Personen paketiert. Die Verwendung dieses Materials gegen Systeme, die du nicht kontrollierst, ist wahrscheinlich illegal, wo auch immer du dich befindest.
Der Abschnitt „Reproduction" jedes Findings gibt an, was es benötigt und was es tut. Lies ihn, bevor du irgendetwas ausführst.
Legende:
Die Delivery-Klasse beschreibt, was der Angreifer auf der Verbindung tun muss, und sie entscheidet, welche Vektoren funktionieren. Push-Findings benötigen lediglich ein Frame, das an der GCS ankommt, sodass jeder injektionsfähige Vektor ausreicht. Handshake- und Request/Response-Findings erfordern, dass der Angreifer der kommunizierende Peer ist oder diesen vollständig kontrolliert, was ein On-Bus-Peripheriegerät, einen kompromittierten Companion, die Lieferkette oder einen vollständigen MITM begünstigt.
Die Spalte Fix verlinkt den Upstream-Pull-Request, sofern einer eingereicht wurde. Zehn der fünfzehn Findings werden mit einem Patch ausgeliefert, der gegen das Repository des Herstellers selbst eingereicht wurde.