
Un drone conçu pour rechercher, pirater et prendre le contrôle total sans fil de tout autre drone Parrot ou 3DR à portée sans fil ou de vol, créant ainsi une armée de drones zombies sous votre contrôle.
SkyJack est un drone conçu pour chercher, pirater et prendre le contrôle complet par voie sans fil de tout autre drone à portée sans fil ou de vol, créant ainsi une armée de drones zombies sous votre contrôle.
Mise à jour : Preuve de concept de SkyJack pour les drones 3D Robotics utilisant les chipsets TI CC1111 [Août 2015]
Cette mise à jour utilise un émetteur-récepteur RF sub-GHz pour prédire le motif de saut de fréquence + l'ID des modules de télémétrie 3DR, permettant une prise de contrôle à distance complète des drones à proximité, similaire à l'attaque Parrot (sans wifi nécessaire).
par @SamyKamkar // [email protected] // http://samy.pl // 2 décembre 2013
Code disponible sur github
Regardez la vidéo ici
SkyJack - contrôle autonome de drone
Aujourd'hui, Amazon a annoncé qu'il prévoit d'utiliser des drones sans pilote pour livrer certains colis aux clients d'ici cinq ans. Cool ! Quel plaisir ce serait de prendre le contrôle de drones transportant des colis Amazon… ou de prendre le contrôle de n'importe quel autre drone et d'en faire mes petits drones zombies. Génial.
En utilisant un Parrot AR.Drone 2, un Raspberry Pi, une batterie USB, un émetteur sans fil Alfa AWUS036H, aircrack-ng, node-ar-drone, node.js et mon logiciel SkyJack, j'ai développé un drone qui vole, cherche le signal sans fil de tout autre drone dans la zone, déconnecte de force la connexion sans fil du véritable propriétaire du drone cible, puis s'authentifie auprès du drone cible en se faisant passer pour son propriétaire, puis lui envoie des commandes ainsi qu'à tous les autres drones zombies possédés à ma volonté.
SkyJack fonctionne également au sol ; aucun drone n'est nécessaire de votre côté pour qu'il fonctionne. Vous pouvez simplement l'exécuter depuis votre propre machine Linux/Raspberry Pi/ordinateur portable/etc et pirater des drones directement depuis le ciel.
Vous pouvez obtenir SkyJack depuis github : https://github.com/samyk/skyjack
SkyJack (disponible depuis github) est principalement une application Perl qui s'exécute sur une machine Linux, lance aircrack-ng pour mettre sa carte wifi en mode moniteur, détecte tous les réseaux sans fil et clients environnants, désactive tous les clients connectés aux Parrot AR.drones, se connecte au Parrot AR.Drone désormais libre en tant que son propriétaire, puis utilise node.js avec node-ar-drone pour contrôler les drones zombies.
Je détecte les drones en cherchant toute connexion sans fil provenant d'adresses MAC appartenant à la société Parrot, que vous pouvez trouver définies dans le Registration Authority OUI.
J'utilise aircrack-ng pour mettre notre périphérique sans fil en mode moniteur afin de trouver nos drones et leurs propriétaires. J'utilise ensuite aireplay-ng pour déauthentifier le véritable propriétaire du drone que je cible. Une fois déauthentifié, je peux me connecter car le drone attend que son propriétaire se reconnecte.
J'utilise node-ar-drone pour contrôler le drone nouvellement asservi via Javascript et node.js.
Le Parrot AR.Drone 2 est le drone qui vole à la recherche d'autres drones, contrôlé depuis un iPhone, un iPad ou Android, et c'est également le type de drone que SkyJack recherche pour le contrôler. SkyJack est également capable de repérer le Parrot AR.Drone version 1.
Les Parrots lancent en fait leur propre réseau sans fil, c'est ainsi que le propriétaire du drone se connecte. Nous prenons le contrôle en déauthentifiant le propriétaire, puis en nous connectant une fois que le drone attend que son propriétaire se reconnecte, exploitant le fait que nous avons temporairement détruit sa connexion sans fil.
J'utilise un Raspberry Pi pour piloter le projet car il est peu coûteux, raisonnablement léger, possède des ports USB et exécute Linux.
J'utilise la carte sans fil Alfa AWUS036H qui prend en charge l'injection de paquets bruts et le mode moniteur, ce qui me permet de déauthentifier les utilisateurs légitimement connectés à leurs drones.
J'utilise également l'adaptateur USB sans fil Edimax EW-7811Un pour que SkyJack lance son propre réseau. Cela me permet de me connecter à SkyJack depuis mon ordinateur portable ou mon iPad et de regarder tous les autres drones pendant qu'ils sont contrôlés.
Je suggère n'importe quelle batterie USB légère (moins de 100 grammes) et capable de fournir près d'un ampère (1000 mAh). Le Raspberry Pi + le wifi consommeront probablement à peu près cette quantité d'énergie. Vous pourriez également connecter trois piles AAA ensemble pour obtenir environ 4,5 V, ce qui serait un peu plus léger, mais je ne suis pas sûr du courant qu'elles pourront fournir.
N'hésitez pas à me contacter pour toute question !
Vous pouvez me joindre à l'adresse [email protected].
Suivez @SamyKamkar sur Twitter ou consultez http://samy.pl pour mes autres projets.