Fuzzing: Fuzz-Testing erklärt + die besten Fuzzing Tools


Fuzzing bzw. Fuzz-Testing ist eine vom Wissenschaftler Barton Miller entwickelte Methode, um Software systematisch auf Schwachstellen zu testen. Dabei wird nicht versucht, den Quellcode des Programms zu interpretieren – vielmehr wird die Software als Blackbox und ihr Inhalt als gegeben betrachtet. Alle möglichen Schnittstellen der Dateneingabe werden automatisiert aufgerufen und mit Zufallsdaten gespeist. Dieser Prozess kann sich je nach Größe des untersuchten Software-Projekts über Stunden oder sogar Tage hinziehen.

Ziel des Fuzz-Testing ist es, festzustellen, ob für alle möglichen Eingabevarianten die notwendigen Reaktionen im Programm hinterlegt sind. Sinnlose oder fehlerhafte Eingaben sollten möglichst durch Fehlerbehandlungsroutinen aufgefangen werden. Sind diese nämlich für bestimmte Eingaben nicht vorhanden oder funktionieren nicht richtig, kann ein Programmabsturz die Folge sein. Das technische Vorgehen, Software auf alle Eventualitäten zu prüfen, ist im Bereich der Webentwicklung seit Langem fester Bestandteil von Entwicklungsumgebungen. Viele Webanwendungen werden beispielsweise schon seit Jahren per Cross-Browser-Testing auf ihre Funktionsfähigkeit in verschiedenen Webclients bzw. Browserversionen getestet.



Source link

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.