Dans de précédents articles, et dans le dernier sur le sujet des contrôleurs UDC intégrés aux SBC et à certains PC en particulier [1], nous avons vu qu'il était relativement aisé de créer arbitrairement des périphériques USB. Et même qu'il était possible de faire cela d'une façon qu'on pourrait qualifier de « logicielle » grâce au support USB Gadget de Linux. Mais lorsque le SBC en question ne dispose pas d'un contrôleur dédié, que peut-on faire ? La réponse est simple, il suffit de l'ajouter...
Avec une plateforme ne disposant pas d'un contrôleur USB adapté, dit UDC (pour USB Device Controller et par opposition à un USB Host Controller présent presque partout), on pourra se rabattre sur du matériel dédié, comme le Cynthion [2] ou le GreatFET One [3] de Great Scott Gadgets, qui couplé avec Facedancer [4] et quelques lignes de Python réglera le problème. Ceci, cependant, nécessitera un investissement relativement conséquent (entre 100 € et 250 € suivant le matériel choisi) et vous obligera à utiliser un framework et un langage qui ne sont pas nécessairement ceux qui vous enchantent le plus. De plus, cette approche a généralement un objectif sensiblement différent du nôtre, consistant à vouloir créer des périphériques parfaitement « normaux », en appuyant sur l'aspect sécurité et pentest (principalement par le
- Accédez à tous les contenus de Connect en illimité
- Découvrez des listes de lecture et des contenus Premium
- Consultez les nouveaux articles en avant-première