La clef USB Rubber Ducky pour pirater des PC revient, avec une nouvelle version plus puissante

La clef USB Rubber Ducky pour pirater des PC revient, avec une nouvelle version plus puissante

La clef USB Rubber Ducky pour pirater des PC revient, avec une nouvelle version plus puissante

La nouvelle version de Rubber Ducky, inaugurée lors du récent Def Con, « est plus dangereuse que jamais », explique The Verge.

Sortie il ​​y a plus de 10 ans, popularisée dans une scène de Mr Robot, cette clef USB d'apparence anodine se fait passer pour un clavier USB, et permet d'injecter n'importe quel type de commandes, comme le résume son site web : 

« Les ordinateurs font confiance aux humains. Les humains utilisent des claviers. L'USB Rubber Ducky - qui ressemble à une clé USB innocente pour les humains - abuse de cette confiance pour fournir des charges utiles puissantes, en injectant des frappes à des vitesses surhumaines. »

Les précédentes versions permettaient déjà de lancer une fausse fenêtre contextuelle Windows afin de récolter les identifiants de connexion d'un utilisateur, ou encore d'envoyer tous les mots de passe enregistrés dans le navigateur Chrome au serveur de l'attaquant. 

Mais ces fonctionnalités n'étaient pas supportées par toutes les plateformes, contrairement à la nouvelle version, explique son créateur, Darren Kitchen, à The Verge : 

« Cela signifie, par exemple, que le nouveau Ducky peut exécuter un test pour voir s'il est branché sur une machine Windows ou Mac et exécuter conditionnellement le code approprié à chacun ou se désactiver s'il a été connecté à la mauvaise cible. Il peut également générer des nombres pseudo-aléatoires et les utiliser pour ajouter un délai variable entre les frappes pour un effet plus humain. »

Commentaires (44)


C’est dans quel épisode de Mr Robot?


C’est vers le milieu de la saison 2, épisode 56 je dirais :yes:


06Sergio

Merci


Pourquoi les OS ne “popppent” pas une demande d’accès à la machine en s’identifiant comme clavier ou souris? Excepté à l’initialisation du poste.


L’idée n’est pas mauvaise, mais soit la personne valide avec le vrai clavier/souris le rubber ducky quand il le plante, soit il peut le cacher derrière le PC et ça attendra le reboot…



EDIT: Accessoirement, j’imagine que la personne visée et qui a trouvé la clé et le branche pour “voir ce qu’il y a dedans” risque de juste valider la popup de toute façon.



dylem29 a dit:


Pourquoi les OS ne “popppent” pas une demande d’accès à la machine en s’identifiant comme clavier ou souris? Excepté à l’initialisation du poste.




Ça existe, par exemple avec usbguard sous Linux, il faut approuver (de façon permanente ou non , au choix) un périphérique usb avant qu’il puisse être utilisé.
Il me semble avoir vu des alternative pour d’autres OS, après comme toute les mesures de sécurité ça doit être contournable (copier l’ID d’un périphérique approuvé par exemple) mais ça complique considérablement la tache.
Ça mériterait d’être plus généralisé comme sur les smartphone par exemple ou il me semble que c’est déjà le cas.


C’est bien de ça qu’il s’agit, se faire passer pour un périphérique USB type clavier.
Pas certain que les OS, tous autant qu’ils sont, avec un périphérique qui se dit clavier/souris pop un contrôle vu que c’est le dit périphérique qui t’aidera à la faire.



L’autre solution, c’est de bloquer les ports USB de la machine, mais bon, faut à minima du PS2 clavier/souris et c’est plsu trop dispo sur les machines et les ports d’extension.


the_Grim_Reaper

C’est bien de ça qu’il s’agit, se faire passer pour un périphérique USB type clavier.
Pas certain que les OS, tous autant qu’ils sont, avec un périphérique qui se dit clavier/souris pop un contrôle vu que c’est le dit périphérique qui t’aidera à la faire.



L’autre solution, c’est de bloquer les ports USB de la machine, mais bon, faut à minima du PS2 clavier/souris et c’est plsu trop dispo sur les machines et les ports d’extension.


Rendre la popup obligatoire après avoir initialisé la machine par exemple.


dylem29

Rendre la popup obligatoire après avoir initialisé la machine par exemple.


Et tu le valide avec quel périphérique si c’est le périphérique de saisie qui est nouvellement détecté ?




Clavier HS, tu changes de clavier, l’ancien ne peut rien valider, tu fais comment ? une réinstallation complète de 0 ?



:fumer:


the_Grim_Reaper

Et tu le valide avec quel périphérique si c’est le périphérique de saisie qui est nouvellement détecté ?




Clavier HS, tu changes de clavier, l’ancien ne peut rien valider, tu fais comment ? une réinstallation complète de 0 ?



:fumer:


il va se calme hellokitty


the_Grim_Reaper

Et tu le valide avec quel périphérique si c’est le périphérique de saisie qui est nouvellement détecté ?




Clavier HS, tu changes de clavier, l’ancien ne peut rien valider, tu fais comment ? une réinstallation complète de 0 ?



:fumer:


Plutôt que de poser les questions ici, lis la doc :
https://github.com/USBGuard/usbguard



Avec un nouveau clavier, j’imagine que tu utilises l’astuce traditionnelle init=/bin/sh.


Sur Linux ça existe?
Je n’ai jamais vu cette fonctionnalités.



Après, ça me semble être la base, tous les PC ont une enclave sécurisés maintenant, tout est chiffré, mais il suffit de brancher une souris ou un clavier pour accéder à la machine.



C’est bête je trouve.
Alors qu’une popup qui demande si le périphérique est de confiance ou pas (un peu comme les iPhone avec iTunes), ça serait top.


J’ai l’impression qu’android demande mais que par défaut ça autorise l’accès au fichier à chaque fois.



ça se fait en entreprise via GPO pour windows : ça peut se faire de bloquer l’usage des ports usb et ensuite le pc portable a beaucoup moins de possibilité de se faire infecter via se vecteur.



Pour les pc plus normaux, il faut passer par la sensibilisation des utilisateurs : une clé inconnue = poubelle ou sandbox.



NextInpaxt a dit:


ou encore d’envoyer tous les mots de passe enregistrés dans le navigateur Chrome au serveur de l’attaquant.




Une preuve de plus que Firefox est au dessus :troll:


Il faut repasser aux ports PS2 pour les claviers et souris :fumer:



dylem29 a dit:


Pourquoi les OS ne “popppent” pas une demande d’accès à la machine en s’identifiant comme clavier ou souris? Excepté à l’initialisation du poste.




Parce que parfois il te faut le-dit clavier ou la souris pour valider la demande :D


Il y a beaucoup plus discret qu’une clé : une rallonge ou un câble de recharge USB maquillés, par exemple, qu’on vous offre gratuitement, et qui offrent exactement les mêmes possibilités pour quelques dizaines d’€ à peine - avec succès…


Corrigez-moi si je me trompe, mais la clé usb n’est juste là pour lancer une série d’exploit massive comme si un pirate était connecté en physique à la machine , non ?


Au début des années 2010, j’ai eu entre les mains une clé usb promotionnelle (sous forme de carte de crédit) donnée par le groupe La Poste.



Ça émulait le clavier, pour ouvrir un terminal, et lancer IE sur le site de la Poste sous Windows, et idem avec Safari sur Mac.



Par contre sur Linux, les raccourcis envoyés ne fonctionnaient pas. Si on était sur un document ça tapait les lignes destinées au terminal Windows mais c’est tout.



Une bien belle idée de leur part. :reflechis:



MisterDams a dit:


Parce que parfois il te faut le-dit clavier ou la souris pour valider la demande :D



the_Grim_Reaper a dit:


Et tu le valide avec quel périphérique si c’est le périphérique de saisie qui est nouvellement détecté ?




Avec lui-même, bien sûr.



La validation peut consister en un OTP que tu dois taper, ou un mouvement de souris que tu dois exécuter sur le device que tu viens de connecter. En attendant d’avoir fait ça, aucune autre interaction n’est autorisée via ce périphérique. Et ce n’est évidemment valable QUE s’il n’y a pas déjà un clavier ou une souris connectés par ailleurs.



Pour que la clé puisse lire l’écran, il faudrait qu’elle s’identifie initialement comme un screen grabber, attende que l’utilisateur valide cette connexion, puis ajoute un clavier et aille chercher l’OTP à l’écran. Dans tous les cas l’utilisateur est prévenu que ce n’est pas juste un disque flash.



(quote:2089642:33A20158-2813-4F0D-9D4A-FD05E2C42E48)
Avec lui-même, bien sûr.



La validation peut consister en un OTP que tu dois taper, ou un mouvement de souris que tu dois exécuter sur le device que tu viens de connecter. En attendant d’avoir fait ça, aucune autre interaction n’est autorisée via ce périphérique. Et ce n’est évidemment valable QUE s’il n’y a pas déjà un clavier ou une souris connectés par ailleurs.




C’est le genre de règle qui est dans les HIPS (Host Intrusion Prevention System) : un seul HID clavier et un seul HID mouse.



Si le HIPS en détecte deux cela bloque tous les HID et cela verrouille la session. Il faut alors débrancher tous les HID, puis rebrancher seulement un clavier et une souris pour déverrouiller la session.


D’ailleurs, cela devrait être par défaut dans l’OS, qui branche 2 claviers sur son PC sérieusement ? …


eglyn

D’ailleurs, cela devrait être par défaut dans l’OS, qui branche 2 claviers sur son PC sérieusement ? …


Perso j ‘ai deux souris.



Une ergonomique pour moi.
Et une normale pour les collègues qui viennent me montrer un truc sur mon pc. Ils perdent trop de temps a s’habituer a la souris ergonomique.



eglyn a dit:


D’ailleurs, cela devrait être par défaut dans l’OS, qui branche 2 claviers sur son PC sérieusement ? …




Énormément de gens dans les pays qui n’utilisent pas l’alphabet latin en fait et qui utilisent donc un clavier “local” + un clavier latin.



the_Grim_Reaper a dit:


C’est bien de ça qu’il s’agit, se faire passer pour un périphérique USB type clavier. Pas certain que les OS, tous autant qu’ils sont, avec un périphérique qui se dit clavier/souris pop un contrôle vu que c’est le dit périphérique qui t’aidera à la faire.




USBGuard bloque aussi les clavier/souris, à l’install le comportement du package (du moins sous Debian/Ubuntu) c’est de whitelister les périphériques présent mais si tu changes de clavier sans avoir sous la main l’ancien ou un accès SSH ça peut être un peux compliqué….




dylem29 a dit:


Sur Linux ça existe? Je n’ai jamais vu cette fonctionnalités.




USBGuard c’est une interface mais ça repose sur des fonctionnalités kernel donc on peut dire que c’est natif mais pas visible ou utilisé.


C’est pas à la portée de toute le monde, et plus orienté serveurs (ou équivalent) comme usage à mon sens du coup.



Avec le bon code, tu passe le whitlisting en plus avec cette clé au final. Ou alors c’est avec le numéro de série du matériel en plus où la c’est un poil plus relou, encore que quand t’en est là ?
On en revient a désactivé les ports USB quand c’est possible pour éviter ça, mais l’usage devient plus limité (port PS2 ou remote).


the_Grim_Reaper

C’est pas à la portée de toute le monde, et plus orienté serveurs (ou équivalent) comme usage à mon sens du coup.



Avec le bon code, tu passe le whitlisting en plus avec cette clé au final. Ou alors c’est avec le numéro de série du matériel en plus où la c’est un poil plus relou, encore que quand t’en est là ?
On en revient a désactivé les ports USB quand c’est possible pour éviter ça, mais l’usage devient plus limité (port PS2 ou remote).


Oui ça utilise le serial du matériel et d’autres informations à disposition (ça cré un hash avec le tout). Je ne doute pas que dans certains cas ça ne suffise pas a rendre un périphérique totalement unique (souvenir d’avoir vu des soucis d’ID usb sur des produits bas de gamme qui ne respectait pas certains exigence du protocole) ni que ce soit pas reproductible mais ça complique le contournement et dans le cas de cette clé ça la rend inopérante en l’état.
Franchement pour l’utiliser sur mes machines, il n’y a vraiment rien de compliqué à l’usage. Le seul moment ou je me gratte un peut la tête c’est quand après des mois j’ai oublié son existence et que j’arrive avec un nouveau matériel, une GUI avec une notif lors de la détection de matériel inconnue est détecté suffirait à rendre ça accessible.


cyp

Oui ça utilise le serial du matériel et d’autres informations à disposition (ça cré un hash avec le tout). Je ne doute pas que dans certains cas ça ne suffise pas a rendre un périphérique totalement unique (souvenir d’avoir vu des soucis d’ID usb sur des produits bas de gamme qui ne respectait pas certains exigence du protocole) ni que ce soit pas reproductible mais ça complique le contournement et dans le cas de cette clé ça la rend inopérante en l’état.
Franchement pour l’utiliser sur mes machines, il n’y a vraiment rien de compliqué à l’usage. Le seul moment ou je me gratte un peut la tête c’est quand après des mois j’ai oublié son existence et que j’arrive avec un nouveau matériel, une GUI avec une notif lors de la détection de matériel inconnue est détecté suffirait à rendre ça accessible.


Quand je dis c’est pas à la portée de tout le monde, il s’entend, pour les non technophiles.



Quand je vois les technophobes dans le cadre du travail et les réfractaires au moindre changement UX, c’est pas triviale pour de nombreuses personnes.



Pour ça que je dis plus dans un environnement de travail serveur ou “assimilé”.



[mylife] Après, pour les oublies, j’ai la même avec les règles de filtrages sur le routeur de mes parents quand je change de tel ou de laptop, ou quand quelqu’un passe chez eux et veut du Wi-Fi ^^ [/mylife]



eglyn a dit:


D’ailleurs, cela devrait être par défaut dans l’OS, qui branche 2 claviers sur son PC sérieusement ? …




Sur les PC portables, j’ai presque toujours 2 claviers ! Celui tout pourri fournit avec le pc, et le miens externe branché en sus.
Alors certes, le premier est branché en PS/2 et pas usb mais pour l’ordi, ce sont bien 2 périphériques clavier. Pareil pour la souris (touchpad et souris “normal”)


Ah oui effectivement les stations d’accueil en effet.



eglyn a dit:


D’ailleurs, cela devrait être par défaut dans l’OS, qui branche 2 claviers sur son PC sérieusement ? …




L’autre jour, j’ai dû brancher un clavier USB le temps de configurer le clavier bluetooth qui se comportait comme un pavé numérique après l’ouverture de session (mais pas avant pour la fenêtre d’ouverture de session).



darkweizer a dit:


Sur les PC portables, j’ai presque toujours 2 claviers ! Celui tout pourri fournit avec le pc, et le miens externe branché en sus. Alors certes, le premier est branché en PS/2 et pas usb mais pour l’ordi, ce sont bien 2 périphériques clavier. Pareil pour la souris (touchpad et souris “normal”)




Le clavier intégré des PC portables est connecté en PS/2 ?



Thorgalix_21 a dit:


Le clavier intégré des PC portables est connecté en PS/2 ?




C’est comme ça que c’est écrit dans le gestionnaire de périphérique de Windows en tout cas :transpi:



darkweizer a dit:


C’est comme ça que c’est écrit dans le gestionnaire de périphérique de Windows en tout cas :transpi:




Je n’avais pas pris la peine de vérifier sur le PC pro (il est dans un autre bureau). Effectivement, clavier et souris (pavé tactile) sous indiqués branchés sur le port PS/2.



Il me semble que sur les portables Apple, tout est en USB, le PS/2 n’ayant jamais existé sur cette plateforme. Avant l’USB, c’était l’ADB (Apple Desktop Bus), abandonné d’abord avec le premier iMac en 1998.


Il existe une troisième possibilité : I2C. Ce qui peut potentiellement amener
des Problèmes à l’installation de windows :D



eglyn a dit:


D’ailleurs, cela devrait être par défaut dans l’OS, qui branche 2 claviers sur son PC sérieusement ? …




J’ai un clavier Logitech qui a une molette de défilement, et s’identifie comme clavier et souris à la fois. J’ai bien évidemment une (deuxième) vraie souris à côté.



J’ai un clavier Logitech qui a une molette de défilement, et s’identifie comme clavier et souris à la fois. J’ai bien évidemment une (deuxième) vraie souris à côté.




Tu as aussi les lecteurs de barcode qui s’identifient comme des claviers.



Ca met bien le bazar dans windows quand il s’agit de gérer les layouts FR/EN/… :)


Il y aussi les lecteurs de code-barres qui sont vus comme des claviers.



(quote:2089674:alex.d.)
J’ai un clavier Logitech qui a une molette de défilement, et s’identifie comme clavier et souris à la fois.




Du coup.. on dit iel ? :D



BlackLightning a dit:


Corrigez-moi si je me trompe, mais la clé usb n’est juste là pour lancer une série d’exploit massive comme si un pirate était connecté en physique à la machine , non ?




Oui. Elle ne permet rien de plus que ce qu’on pourrait faire en ayant accès au clavier de la machine. L’intérêt c’est la rapidité et ne pas avoir à manipuler le clavier (= possibilité de brancher la clé pendant quelques secondes et de la débrancher sans avoir l’air suspect).


Quoique il y a un deuxième avantage, comme souligné par la news : vu que la clé s’identifie comme un clavier, elle n’est pas bloquée par la plupart des protections mises en place dans les entreprises (dans la plupart des banques, les périphériques de stockage USB sont automatiquement bloqués).



Le site explique que la clé utilise le canal de communication de l’interface clavier au départ prévu pour la lumière des touches num lock/caps lock. En utilisant, ça, des données peuvent être écrites sur la clé sans être visibles par l’antivirus ou le firewall.


Et ça s’achète où ?


“sur une machine Windows ou Mac”
J’aime.


Fermer