Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
vUSBf — Un framework de fuzzing USB basé sur QEMU/KVM qui détecte les bugs de pilotes de périphériques grâce à une exécution de VM reproductible, au multiprocessing et à la génération de cas de test XML. | Kitploit
Outils/GitHubGitHub/schumilo/vusbf
Analyse Dynamique (Sandboxing)Analyse des VulnérabilitésVirtualisation de SécuritéFuzzingSécurité Matérielle
GitHubschumilo/vusbf

vUSBf

Un framework de fuzzing USB basé sur QEMU/KVM qui détecte les bugs de pilotes de périphériques grâce à une exécution de VM reproductible, au multiprocessing et à la génération de cas de test XML.

Voir le dépôt
17031il y a 9 ansVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

vusbf-Framework

root@kitploit:~
        _      __              __   __  _______ ____
 _   __(_)____/ /___  ______ _/ /  / / / / ___// __ )
| | / / / ___/ __/ / / / __ `/ /  / / / /\__ \/ __  |
| |/ / / /  / /_/ /_/ / /_/ / /  / /_/ /___/ / /_/ /
|_______/   \__/\__,_/\__,_/_/   \____//____/_____/
   / __/_  __________  ___  _____
  / /_/ / / /_  /_  / / _ \/ ___/
 / __/ /_/ / / /_/ /_/  __/ /
/_/  \__,_/ /___/___/\___/_/

Un framework de fuzzing USB basé sur KVM/QEMU.
Sergej Schumilo, OpenSource Security Spenneberg 2015
Version : 0.2

GÉNÉRAL

Un fuzzer USB qui tire parti d'une utilisation massive de machines virtuelles et offre également une haute reproductibilité. Ce framework a été initialement présenté à la Black Hat Europe 2014.

https://www.blackhat.com/docs/eu-14/materials/eu-14-Schumilo-Dont-Trust-Your-USB-How-To-Find-Bugs-In-USB-Device-Drivers-wp.pdf

Ce logiciel est en développement actif. Obtenez une copie de la version actuelle sur github :

www.github.com/schumilo

Ce logiciel est sous licence GPLv2.

Ce framework fournit :

  • Fuzzing USB dans des délais raisonnables
  • multiprocessing et clustering
  • export de séquences de payloads et rejeu de celles-ci pour le débogage ou l'analyse
  • génération dynamique de cas de test basée sur XML
  • extensible en écrivant de nouveaux cas de test, émulateurs USB ou modules de surveillance

vUSBf a été écrit en python2 et nécessite le framework Scapy.

PRÉPARATIFS

Tout d'abord, il faut compiler une version compatible de QEMU ! Récupérez la dernière version de QEMU et d'usbredir :

QEMU : http://www.qemu.org usbredir : https://github.com/SPICE/usbredir

Assurez-vous de compiler QEMU avec l'option « usb_redir » et de patcher également le fichier /hw/usb/redirection.c. Si vous utilisez la version 2.1.1 de QEMU, vous pouvez appliquer notre patch (qemu-2.1.1.patch). QEMU 2.2.x n'est actuellement pas pris en charge par vUSBf !

vUSBf nécessite des images QCOW2 préparées pour le fuzzing ! Vous devez d'abord créer une image QCOW2 pour votre machine virtuelle. Pour cela, utilisez la commande suivante :

root@kitploit:~
qemu-img create -f qcow2 vm.qcow2 10G

Installez le système d'exploitation de votre choix sur cette image. Vous devez configurer un TTY disponible sur le port série (virtuel).

L'étape suivante consiste à créer un backing-file (un overlay qui contiendra tous les futurs écarts) et une image qui contiendra un instantané de la VM (sa taille doit être supérieure à votre mémoire virtuelle configurée) :

root@kitploit:~
qemu-img create -b vm.img -f qcow2 overlay.qcow2
qemu-img create -f qcow2 ram.qcow2 1G

Démarrez votre VM avec la commande suivante, attendez que le noyau soit chargé, connectez-vous et modifiez la verbosité de printk en exécutant « echo '7' > /proc/sys/kernel/printk ». Vous pouvez alors prendre un instantané en ouvrant la console QEMU (appuyez sur ctrl+a puis c) et en tapant savevm . Vous devriez démarrer la VM avec la commande suivante :

root@kitploit:~
qemu-system-x86_64 --enable-kvm -m 1024 -hdb ram.qcow2 -hda overlay.qcow2 -serial mon:stdio -device nec-usb-xhci -device usb-redir,chardev=usbchardev,debug=0 -chardev socket,server,id=usbchardev,nowait,host=127.0.0.1,port=1336

Créez une configuration personnalisée dans le dossier « vusbf/configurations/ ». Vous y trouverez quelques exemples. Modifiez les informations suivantes :

root@kitploit:~
    - localisation du binaire QEMU que vous souhaitez utiliser
    - support KVM (écrivez yes ou no)
    - taille de votre mémoire (l'unité est le Mo)
    - localisation de votre fichier ram
    - localisation de votre fichier overlay
    - localisation où doivent être stockées les copies de votre overlay
    - contrôleur hôte USB configuré (si vous n'en avez aucune idée, écrivez simplement nec-usb-xhci)
    - quelques paramètres supplémentaires pour QEMU (si vous en avez besoin)
    - le nom de l'instantané

Voilà tout. Votre VM est maintenant prête pour un peu de fuzzing.

EXÉCUTER VUSBF

Consultez help.txt ou lancez vusbf avec le paramètre -h pour obtenir de l'aide :-)

BUGS

Il existe quelques bugs connus, comme le support approximatif des systèmes Windows. Nous travaillons sur ces problèmes, alors assurez-vous d'utiliser la version la plus récente. De plus, le manque d'émulateurs USB est un autre point sur lequel nous travaillons.

Par ailleurs, certains commentaires en ligne ont été écrits dans ma langue maternelle (l'allemand). Ils seront traduits plus tard ;-) et le code sera mieux documenté !

Les compagnons d'armes sont les bienvenus :-) ! Il y a beaucoup de travail à faire !

CONTACT

N'hésitez pas à nous envoyer un e-mail : [email protected] [email protected]

Télécharger l’outil