Le Bebop de Parrot présente deux défauts majeurs en terme de sécurité:
– Le hotspot wifi embarqué ne propose aucune solution protection (vous pouvez ajouter le WEP comme indiqué ici)
– L’accès root n’est protégé par aucun mot de passe
Quel sont les conséquences?
Si vous êtes victime d’une intrusion sur le réseau wifi de votre drone, cela permettra à l’attaquant de gagner énormément de temps pour détourner votre drone. Ainsi, il faudra seulement quelques minutes à un assaillant pour prendre les commandes de votre Bebop. En effet, il suffit de lancer une attaque de « dés-authentification » à l’aide des outils adéquat tel que Aireplay-ng qui permet l’envoi de « paquets deauth » vers la cible. Ceci aura pour effet de libérer l’accès au réseau sans fil du Bebop. Du fait de l’absence d’authentification cela permet à l’attaquant de se reconnecter à votre place et donc soit de piloter avec l’application officiel FreeFlight soit de rentrer dans le système embarqué. Une fois la console Linux ouverte avec un compte ayant l’accès root par défaut, il devient possible d’arrêter des services ou effacer des fichiers… ce qui entraînera l’arrêt des moteurs et un crash immédiat.
Voici une démo en vidéo qui a été réalisé sur un AR Drone via le package d’outils Skyjack créé par Samy Kamkar. Le fonctionnement est le même sur Bebop.
Une fois connecté sur le Bebop,il suffit d’ouvrir une session telnet avec l’adresse IP du Bebop: 192.168.42.1 (dans notre exemple à l’aide de Putty)
Vous voilà avec un accès complet en ligne de commande (CLI)
A partir de là, vous pouvez utiliser la commande Linux: « ps » qui permet de lister tous les services actif. Vous pouvez filtrer par exemple sur un service sensible: dragon-prog
ps -ef |grep dragon
Cela vous permet de récupérer le pid
Vous pouvez ensuite tuer le process
kill -9 ID (dans notre exemple 813)
Cela aura pour effet de couper immédiatement les quatre moteurs…
Dragon-prog gère l’ensemble du Bebop, il existe tout un tas d’option pour le lancement qui permette d’influer sur un certain nombre de paramètres, effectuer des diagnostic avec des modes verbeux et debub.
Ici par exemple, des info directement affichées dans l’app Freeflight
Qu’est-il possible de faire pour protéger la connexion ?
J’ai rajouté une page dans le wiki qui explique comment activer une protection WEP.
http://geekmag.fr/wiki/doku.php?id=fr_activer_wep
Merci Eric !!
Je découvre ta réponse maintenant seulement, merci pour tes explications…
Continue à explorer, c’est utile à tous !!
Salut 🙂 Pourrais-tu nous conseiller un site ou un tuto pour apprendre comment utiliser telnet pour modifier un fichier de configuration par exemple, ou se balader dans la hiérarchie du bebop ?
🙂
Salut Vinc,
Regardes le wiki, j’ai déjà écrit pas mal de doc à ce sujet
http://geekmag.fr/wiki/doku.php?id=bebop
http://geekmag.fr/wiki/doku.php?id=hack
Le wiki contient tout ce qui concerne les fichiers du Bebop.
Pour tout ce qui éditer un fichier, se déplacer dans l’arborescence, c’est du Linux classique, tu peux utiliser toutes les commandes de base
cd
ls
vi
Donc tu peux chercher sur tous les sites spécialisés en Linux
http://doc.ubuntu-fr.org/tutoriel/console_commandes_de_base
Grand merci pour ta réponse.
Je cherche maintenant à récupérer sur mon Mac (pour analyse) l’intégralité du contenu du bebop (tout le system linux etc…).
– Dois-je modifier un fichier de configuration pour que le ftp me donne accès à la racine du bebop ?
– Ou dois-je passer par une clef usb branchée dessus ? Et y accéder en telnet ? (ça me paraît compliqué)
A moins qu’il existe sur le net une archive d’un contenu du bebop en 1.98.10 déjà disponible ?
🙂
Bon, j’ai eu un gros soucis pendant la copie… je t’ai envoyé un message sur FB. Si tu as une minutes ; sinon dis moi. Je comprendrai. En tous cas, j’ai trouvé des choses intéressantes coté qualité d’image… Mais il faut que je me perfectionne en unix ! 😀
Hi. I’ve accidentally reset my Bebop by holding the power button for 10 seconds and now all the videos are gone. I haven’t recorded anything since. Please help me recover them.
Bonsoir,
merci pour toutes ces informations, mais accéder via Telnet au Bebop (même bleu), n’est pas aussi simple que décrit: méconnaissance des commandes de base et inquiétude de ne pouvoir revenir en arrière.
N’y a t’il pas une procédure plus automatique pour introduire un mot de passe/protection ?
En fait, moi c’est juste pour voler, pas pour faire du Telnet… Merci. JPHI
Bonjour Eric, je reviens vers toi parque j’essaie d’accéder à ta page Wiki guidant l’activation du WEP
elle ne fonctionne plus, pourrais-tu remettre en ligne ton tuto ?
(j’avais activé un mot de passe sur mon BEBOP 1, mais je le retrouve plus et je ne peux donc plus faire fonctionner mon drone !)