SSTIC 2013 - Attaques USB

par Benoît Badrignans

L’orateur à développé pas mal de devices USB, et à crashé pas mal de PC avec des clefs usb buggués.

Bon, clairement USB, ça craint. Les recommandations pour les systèmes critiques vont de je coule de la résine dans le port à la mise en place de capots verrouillés par un cadenas pour que seul l’admin y ai accès (sauf que le cadenas, il se crochette facilement…).

L’orateur nous fait ensuite un tour du propriétaire du monde USB, du device à la stack USB en passant par la couche physique, le hub, et le driver. Au dessus de cette stack, on a des fichiers (potentiellement infectés), et divers devices (clavier/souris).

Mais, si on à un périphérique USB modifié, on peut venir altérer les device ID et autre chaines servant à identifier le périphérique et contrôlant donc quel chargeur est employé, etc… Bref, plein de possibilités de Fuzzing et donc de failles potentielles.

Faire un fuzzer UBb, c’est pas si compliqué finalement, vu que les constructeurs fournissent les SDK USB, que les téléphone Android peuvent émuler de l’USB, et que Travis Goodspeed à mis au point le facedancer pour venir s’interfacer avec un port USB et faire du fuzzing dessus.

Ainsi, on peut par exemple extraire des fichiers de la machine, afficher des fichiers après N branchements pour esquiver le SAS anti-virus, etc…

L’orateur propose donc un device matériel pour permettre le filtrage des fonctions USB au niveau hardware.