Fuzz testing

Fuzz testing
Technika testowania oprogramowania metodą fuzz to automatyczne lub półautomatyczne dostarczenie niepoprawnych, nieoczekiwanych, lub po prostu przypadkowych danych na wejściu komputera.

 Identyfikacja defektów spowodowanych takim atakiem wymaga monitorowania zachowania aplikacji w poszukiwaniu wycieków pamięci, wyjątków oraz przerwania działania oprogramowania. Ataki przeprowadza się w oparciu o formaty plików, protokoły sieciowe, zmienne środowiskowe, zdarzenia na peryferiach w tym w myszce i klawiaturze, czy wywołania w API.

Fuzzing często mylony jest z testowaniem losowym (random testing), ale jest jego systematycznym rozwinięciem. Technika używana jest na wszystkich poziomach testów, od poziomu kodu do czarnej skrzynki i w następujących typach testów: bezpieczeństwa, niezawodoności oraz w testach odporności.

 

Dzięki tej technice udało się znaleźć kilka krytycznych defektów w Adobe Reader [EN]: http://j00ru.vexillium.org/?p=1175

 

Ciekawe źródła:

http://msdn.microsoft.com/en-us/library/cc162782.aspx

 

To powinno Cię zainteresować