Building a safe and secure embedded world

Black Box Test

Schwachstellen im Code entdecken

Black Box Tests - Robustheitstest

Robustheit eines Testobjekts

Robustheit eines Testobjekts ist die (graduelle) Eigenschaft eines Testobjekts, auf außergewöhnliche Eingaben sinnvoll zu reagieren. Außergewöhnliche Eingaben sind solche, bei denen das Verhalten des Testobjekts nicht durch die Spezifikation vorgegeben ist. Deshalb kann die Robustheit nicht durch anforderungsbasierte Tests geprüft werden. Um den Grad der Robustheit zu ermitteln, können jedoch mehr oder weniger zufällig erzeugte Testeingangsdaten verwendet werden. Dieses dynamische Testverfahren bezeichnet man auch als Fuzzing.

beSTORM

Das Werkzeug beSTORM des Hersteller Beyond Security generiert automatisch auf intelligente Weise Testdaten und lässt sie durch das Testobjekt ausführen. Die Testdaten sind konform zu einem Protokoll, welches das Testobjekt versteht und über welches die Testdaten zum Testobjekt übertragen werden. beSTORM unterstützt eine große Zahl von Protokollen, beispielsweise CAN, USB, Bluetooth-Protokolle, Internet-Protokolle wie HTTP, aber auch Dateiformate wie Word oder JPEG. beSTORM kann auch auf proprietäre Protokolle erweitert werden. Ein Monitor zeigt beSTORM an, ob das Testobjekt auf eine Eingabe mit einer Verhaltens-Anomalie reagiert, beispielsweise durch Eintritt in eine Endlosschleife oder einen Absturz. Dadurch werden Safety- und Security-Schwachstellen des Testobjekts reproduzierbar offengelegt und eine Aussage über die Robustheit ermöglicht.

Das Testobjekt ist für beSTORM eine „black box“. Deshalb kann das Testobjekt auch in einer beliebigen Programmiersprache geschrieben sein und es kann beliebig komplex sein.

Manuelle Testfallerstellung ist für den Einsatz von beSTORM überflüssig, da beSTORM die Testfälle aufgrund seiner Protokollkenntnis erzeugt, und zwar so, dass wahrscheinlichere Schwachstellen zuerst angegangen werden.

Search form Contact Onlineshop