IoSpy et IoAttack
Notes
IoSpy et IoAttack ne sont plus disponibles dans le WDK après Windows 10 version 1703.
En guise d’alternative à ces outils, envisagez d’utiliser les tests de fuzzing disponibles dans le HLK. Voici quelques-uns à prendre en compte.
DF - Test IOCTL aléatoire Fuzz (Fiabilité)
DF - Test de sous-ouverture fuzz (fiabilité)
DF - Test FSCTL fuzz zero length (Fiabilité)
DF - Test FSCTL aléatoire Fuzz (Fiabilité)
DF - Test de l’API Fuz Misc (Fiabilité)
Vous pouvez également utiliser le fuzzing du retard de synchronisation du noyau qui est inclus dans Driver Verifier.
IoSpy et IoAttack sont des outils qui effectuent des tests de fuzz IOCTL et WMI sur les pilotes en mode noyau. À l’aide de ces outils, vous pouvez vous assurer que le code IOCTL et WMI des pilotes valide correctement les mémoires tampons de données et les longueurs de mémoire tampon. Ce faisant, vous évitez les dépassements de mémoire tampon qui peuvent entraîner une instabilité du système.
Le test Fuzz présente un pilote avec des données aléatoires, appelées fuzz, afin de déterminer les défauts au sein du pilote. Le test de fuzz sur une interface IOCTL ou WMI n’est pas nouveau. Toutefois, la plupart des suites de tests sont soit des tests fuzz de boîte noire génériques, qui vérifient uniquement l’accès externe aux interfaces IOCTL ou WMI d’un pilote, soit sont écrits pour tester les chemins IOCTL et WMI spécifiques au sein d’un pilote.
IoSpy et IoAttack utilisent davantage une approche de boîte blanche pour le test de fuzz. Lorsqu’un appareil est activé pour le test de fuzz, IoSpy capture les requêtes IOCTL et WMI envoyées au pilote de l’appareil, et enregistre les attributs de ces demandes dans un fichier de données. IoAttack lit ensuite les attributs de ce fichier de données et utilise ces attributs pour fuzz, ou modifier de manière aléatoire, les requêtes IOCTL ou WMI de différentes manières avant de les envoyer au pilote. Cela permet d’entrer davantage dans le code de validation de la mémoire tampon du pilote sans écrire de tests spécifiques à IOCTL ou WMI.
IoSpy et IoAttack sont pris en charge sur les systèmes qui exécutent Windows Vista ou des versions ultérieures du système d’exploitation Windows. Ces outils sont inclus dans le WDK dans le cadre des tests de base de l’appareil. Consultez Tests d’intrusion (principes de base de l’appareil). Vous pouvez sélectionner ces tests dans la boîte de dialogue Ajouter ou supprimer des tests de pilote , sous Basic\Device Fundamentals\Penetration\IoSpy & Attack.
Important IoSpy et IoAttack doivent être exécutés sur des systèmes de test qui ont déjà été préparés pour le débogage en mode noyau.
Cette section comprend les rubriques suivantes :