URL: https://linuxfr.org/users/krunch/journaux/sauter-l-airgap-avec-des-ultrasons Title: sauter l'airgap avec des ultrasons Authors: Krunch Date: 2013年11月13日T00:08:24+01:00 License: CC By-SA Tags: mercredi, sidechannel, malware, virus, fsugar et opensuse Score: 48 [Comme promis](https://linuxfr.org/users/krunch/journaux/dlfp-journalyser-2-0-pas-de-veille-techologique-le-weekend) (désolé pour ce suspense insoutenable) et suite à [certaines élucubrations](https://linuxfr.org/users/mitsurugi/journaux/rencontrez-badbios-le-virus-plus-puissant-que-stuxnet) voici une analyse indépendante et orvalisée de la faisabilité de la transmission d'information entre ordinateurs portables via un canal ultrasonique. Cette analyse va discuter de la méthodologie employée et des résultats obtenus. Nous extrapolerons ensuite un peu puis terminerons par la conclusion et les remerciements. TL;DR ===== **Krunch** BREAKING NEWS: il est possible de générer un son à 21400Hz sur un laptop pourri (inaudible pour les gens présents qui ont 25 à 60 ans) et le capter sur un laptop pourri à 2m avec des gens qui parlent entre les deux **LiNuCe** incroyable !!! tu pourrais écrire un virus qui communique sans carte réseau ni wifi, juste en utilisant les sons ! si ça se trouve, tu le fourres autoflashable dans le bios et tu as un virus multiplateforme mac/linux/window /androïd qui peut attaquer toutes les machines de la planète : tu pourrais l'appeler badbios, comme le fake médiatisé il y a 5 semaines sur tous les trucs linux !!!! méthodologie ============ On prend des bières (préférablement en bouteilles de 33cl avec un poisson dessus), des nerds (surtout ne pas dire "geek", ce terme étant perverti à outrance), des moins nerds et des laptops dans une pièce chauffée disposant d'une connexion internet et d'une acoustique de mairde (en l'occurrence un ancien bureau de poste). L'âge des gens présents varie de ~25 à ~60 ans. Malheureusement personne n'a voulu nous prêter un jeune enfant ou un chien. Le premier laptop sur lequel on arrive à faire tourner Audacity sert à générer un signal sinusoïdal ("Generate" -> "Tone...") ayant une fréquence de 20 à 21,8kHz échantillonné à 48kHz. Une fois qu'une autre personne a réussi à trouver comment taper "sudo apt-get install audacity" (ou l'équivalent sous OpenSuse ou que sais-je), on peut tenter un enregistrement en ajustant le volume du micro pour éviter la saturation. Après quelques secondes, on arrête et on analyse le spectre ("Analyze" -> "Plot Spectrum"). Ce test a été répété à plusieurs reprises avec diverses fréquences, avec une distance inter-laptop de 20cm à 2m et des gens entre les deux qui discutent de vive voix de leurs plans de conquête du monde. On n'a pas testé de distance plus longue principalement par manque de place. résultats ========= Avec 20, 20,50, 21,4 et 21,8kHz annoncés par l'émetteur, on peut clairement distinguer un pic du côté du récepteur à +/- 20Hz de la fréquence. Au niveau auditif, certaines personnes qui sortent pas en boîte toutes les semaines sont capables de détecter un vague sifflement. Mais il faut vraiment faire attention pour s'en rendre compte et il est facile de l'ignorer ou de se méprendre sur sa cause. On notera que sur certains laptops, tenter de produire un son plus aigu que ce qui est matériellement possible (22kHz+?) avec Audacity génère un son qui se retrouve à une fréquence bien plus basse (et audible). Sur d'autres, cela ne génère rien du tout d'audible ou captable par le récepteur. Quelques tests impliquant un ordiphone suggèrent qu'il est au moins possible de capter ces signaux mais travailler avec ce genre de système ressemble à un exercice d'enculage de mouches auquel je n'ai guère envie de me prêter. extrapolations ============== On peut imaginer un système qui se calibrerait en émettant un signal sur chacune des fréquences disponibles (au moins deux) pendant un temps donné. Une fois que le récepteur a trouvé les fréquences d'émissions, il sait comment distinguer les uns des zéros et peut ainsi recevoir des données arbitraires. Et nous voilà donc avec un joli canal de communication. Si on veut faire passer du pr0n ou [150 millions de mots de passe](http://www.theguardian.com/technology/2013/nov/07/adobe-password-leak-can-check), on peut peaufiner en allant rechercher son cours de traitement du signal de manière à trouver un codage qui permette de maximiser la bande passante sans introduire trop d'erreurs. On me souffle d'ailleurs dans l'oreillette que le système multifréquence que j'ai mentionné ci-dessus est fort pourri et que quelque chose basé sur [PSK](http://en.wikipedia.org/wiki/Phase-shift_keying) ou même [AM](http://en.wikipedia.org/wiki/Amplitude_modulation) serait sans doute plus approprié. J'ai vaguement commencé à un truc à base de libasound2 mais c'est un poil trop bas niveau pour être amusant. Le jour où je me remotive à travailler dessus j'essaierai sans doute GNU Radio. Pour ce qui est d'établir une connexion TCP, désactiver le lecteur CD ou [s'accrocher aux vêtements](https://linuxfr.org/users/mitsurugi/journaux/rencontrez-badbios-le-virus-plus-puissant-que-stuxnet#comment-1497930), on laissera ces détails d'implémentations en exercice au lecteur curieux. conclusion ========== Il est tout a fait possible de faire communiquer deux laptops « de base » dans un environnement de bureau (ou même dans un café) via des sons qui sont virtuellement inaudibles pour le nerd moyen. Ceci risque cependant de ne pas bien fonctionner pour la [propagation de virus entre satellites](http://www.timesofisrael.com/stuxnet-gone-rogue-hit-russian-nuke-plant-space-station/). remerciements ============= Merci à [Planete Multimedia](http://planetemultimedia.be/) pour le local, [FSUGAr](http://fsugar.be/) pour l'ambiance, claudex pour avoir épluché le manuel de speaker-test(1) avec un succès mitigé, Fifi pour avoir été le deuxième à avoir un Audacity opérationnel, MrPlop et le vieux banquier dont je ne connais pas le nom pour leur soutient moral, misterj et tous les autres pour le bruit (généralement audibles et non-ultrasoniques) qu'ils n'ont pas arrêté de générer pendant tout ce temps. Je voulais aussi troller PulseAudio au passage mais je manque d'inspiration donc je laisse ça pour les commentaires.

AltStyle によって変換されたページ (->オリジナル) /