|
24. April 2018

Robustheitstests mit Fuzzing-Werkzeug

Bestorm von Hitex ist ein Werkzeug zur Durchführung von Robustheitstests. Bestorm bedient sich der Fuzzing-Testmethodik, bei der zufällig erzeugte Daten an das Testobjekt geschickt werden, um Fehlverhalten zu provozieren. Dazu muss Bestorm natürlich Kenntnisse über das Nachrichtenprotokoll besitzen. Von Haus aus unterstützt Bestorm hunderte von Protokollen aus den unterschiedlichsten Anwendungsbereichen und kann leicht für weitere Protokolle (auch proprietäre) erweitert werden. Natürlich kann durch einen solchen Robustheitstest nur grobes Fehlverhalten des Testobjekts aufgedeckt werden, bei Software beispielsweise eine Endlosschleife oder ein Absturz. Ob eine anscheinend vernünftige Reaktion auch korrekt ist, kann normalerweise nicht überprüft werden. Um Fehlverhalten zu entdecken, benötigt man einen Monitor. Dieser überwacht das Testobjekt und stellt fest, ob es noch ordnungsgemäß arbeitet oder nicht. Diese Überwachung ist natürlich individuell vom Testobjekt abhängig und kann auch unterschiedliche Aussagekraft haben (von ‚reagiert nicht mehr‘ bis zu ‚Buffer overflow at …‘). Meldet der Monitor ein abnormales Verhalten an Bestorm, kann Bestorm ein Python-Script erstellen, durch das dieses abnormale Verhalten reproduziert werden kann. Dies ist sehr nützlich, um den Fehler zu beheben. Dieser Robustheitstest ist ein Black-Box-Test; der Quellcode der Anwendung kann in jeder beliebigen Programmiersprache geschrieben sein und muss nicht bekannt sein. Diese Methode ist auch sehr gut geeignet, sog. ‚Zero-Day-Vulnerabilities‘ zu finden, also bis dato unbekannte Safety- oder Security-Schwachstellen.

 (Bild: Hitex GmbH)

(Bild: Hitex GmbH)

|
Ausgabe:
www.hitex.de

Das könnte Sie auch interessieren