20/11/2019

Anforderungen an den Lebenszyklus von Industriesystemen #Teil 1 „Automatisierte Schwachstellen-Tests“

Im Bereich von 62443-4-1 (Anforderungen an den Lebenszyklus für eine sichere Produktentwicklung) sind sogenannte Schwachstellen-Tests unerlässlich. Im 4-1-Standard wird dies unter dem Punkt ‚Practice 5 – Security verification and validation testing’ in der Anforderung ‚SVV-3 Vulnerability Testing’ definiert.

Der Vorgang des „Vulnerability Testings“ verlangt, dass zumindest folgende Bereiche berücksichtigt werden:

  • Unerwarteter schädlicher Input: Es sollen Tests durchgeführt werden, die darauf abzielen, Sicherheitslücken zu identifizieren, die durch unerwarteten Input generiert werden. Dabei sollen alle externen Interfaces getestet werden. Hierfür werden Fuzzing-Tools eingesetzt.
  • Angriffsoberflächenanalyse: die Angriffsoberfläche sollte regelmäßig analysiert werden, um sämtliche eingehenden und ausgehenden Verbindungen zu identifizieren. Zusätzlich dazu soll festgestellt werden, ob ungeplante Services laufen, bzw. die aktiven Services die korrekten Rechte aufweisen.
  • Blackbox-Tests: Sogenannte Blackbox-Tests sollen bekannte Schwachstellen am System identifizieren und entfernen. Hierzu können automatisierte Schwachstellen-Scanner genutzt werden.
  • Kompilierte Software-Tests: Liegen kompilierte Programmteile vor, so müssen die ausführbaren Daten überprüft werden. Dabei muss zumindest auf bekannte Schwachstellen, bekannte anfällige Bibliotheken und Compiler-Einstellungen geprüft werden.
  • Dynamische Laufzeit-Tests: Dynamische Tests sind notwendig, um Schwachstellen zu identifizieren, die unter statischen Code-Analyse-Tests nicht identifiziert werden können. Dabei sollen unter anderem mögliche DoS-Attacken, Speicherlecks und ähnliche Schwachstellen identifiziert werden. Diese Tests sollen umgesetzt werden, falls es mittels Tools möglich ist.

Um dieses umfangreiche Portfolio abdecken zu können, reicht ein Tool nicht aus. Vielmehr bedarf es einer Kombination unterschiedlicher Tool-Arten.

  • Fuzzing Tools: Zum Testen des unerwarteten schädlichen Inputs ist die Nutzung einer Fuzzing-Software sinnvoll. Fuzzing-Software erzeugt semizufällige Daten, die als Eingabeparameter genutzt werden.
  • Service Scanner: Zur Analyse der Angriffsoberfläche ist die Nutzung eines Service Scanners empfohlen, der in der Lage ist, Services zu identifizieren und deren Aktualität zu bestätigen.
  • Schwachstellen Scanner: Für das Blackbox-Testing ist die Verwendung eines automatisierten Testing-Tools sinnvoll, um bekannte Schwachstellen zu identifizieren.

 

Limes Security empfiehlt

Unternehmen die Verwendung unterschiedlicher Analyse Tools, um dem ISO/IEC 62443-4-1 Standard in der Anforderung SVV-3 konform zu sein. Welche genau gibt es im Teil #2 in einem der nächsten Blogposts zum Nachlesen.

 



Sollten Sie in Ihrem Unternehmen auf Ungereimtheiten oder Anforderungen stoßen, die alleine nicht zu bewältigen sind, dann steht Ihnen das IT/OT-Spezialisten-Team der Limes Security zur Verfügung – rufen Sie noch heute an!