Dela via


IoSpy och IoAttack

Anmärkning

IoAttack är inte längre tillgängligt i WDK efter Windows 10 Version 1703.

Som ett alternativ till det här verktyget bör du överväga att använda de fuzzing-tester som är tillgängliga i HLK. Här är några att tänka på.

Du kan också använda kernelets synkroniseringsfördröjningsfuzzing som ingår i drivrutinsverifieraren.

IoSpy och IoAttack är verktyg som utför IOCTL- och WMI fuzz-tester på drivrutiner i kernelläge. Genom att använda dessa verktyg kan du se till att drivrutinernas IOCTL- och WMI-kod verifierar databuffertar och buffertlängder korrekt. Genom att göra detta undviker du buffertöverskridningar som kan leda till systeminstabilitet.

Fuzz-testning presenterar en drivrutin med slumpmässiga data, som kallas fuzz, för att fastställa defekter i drivrutinen. Fuzz-testning över ett IOCTL- eller WMI-gränssnitt är inte nytt. De flesta testpaket är dock antingen generiska black box fuzz-tester, som endast verifierar den externa åtkomsten till en förares IOCTL- eller WMI-gränssnitt, eller skrivs för att testa de specifika IOCTL- och WMI-sökvägarna i en drivrutin.

IoSpy och IoAttack använder mer av en white box-metod för fuzz-testning. När en enhet är aktiverad för fuzz-testning samlar IoSpy in IOCTL- och WMI-begäranden som skickas till enhetens drivrutin och registrerar attributen för dessa begäranden i en datafil. IoAttack läser sedan attributen från den här datafilen och använder dessa attribut för att fuzz, eller slumpmässigt ändra, IOCTL- eller WMI-begäranden på olika sätt innan de skickas till drivrutinen. Detta möjliggör ytterligare inmatning i drivrutinens buffertvalideringskod utan att skriva IOCTL- eller WMI-specifika tester.

IoSpy och IoAttack stöds på system som kör Windows Vista eller senare versioner av Windows-operativsystemet. Dessa verktyg ingår i WDK:n som en del av de grundläggande enhetstesterna, se Penetrationstester (grunderna för enheter). Du kan välja dessa tester i dialogrutan Lägg till eller ta bort drivrutinstester under mappen Basic\Device Fundamentals\Penetration\IoSpy & Attack.

Viktigt!

IoSpy och IoAttack ska köras på testsystem som tidigare har förberetts för felsökning i kernelläge. Det här avsnittet innehåller följande avsnitt: