07.05.2013

Zugriffschutz für Simatic S7

Im ersten Teil des Beitrags im SPS-MAGAZIN 4/2013 wurde aufgezeigt, welchen Gefahren eine Steuerung Simatic-S7 300/400 bei der Programmierung und Visualisierung ausgesetzt ist. In dieser Ausgabe wird die S7-Firewall als eine Lösung für dieses Problem vorgestellt.

Autor: Alois Träger, Traeger Industry Components GmbH.


Ziel ist es, beim Zugriff auf die Daten einer Simatic-S7 300/300/200 Sicherheit und Ordnung in das System zu bringen. Die S7 macht keinen Unterschied zwischen internen und externen Prozessdatenbereichen. Prozessdaten sind meist in Datenbausteinen (DB) abgelegt. Folgende einfache Anwendung soll die Problematik erläutern:

  • • DB110 soll die internen Prozessdaten des SPS-Programms speichern. Lesen und Schreiben von extern soll nicht möglich sein
  • • DB101 enthält Soll- und Istwerte für Scada-1
  • • DB102 speichert Soll- und Istwerte für Scada-2
  • • DB123 verwaltet gemeinsame Daten für Scada-1 und Scada-2

Im Standardzustand der S7 können beide Scada-Geräte den SPS-Datenbereich und den des jeweils anderen Partners ungehindert beschreiben. Wenn von außen interne SPS-Prozessdaten (hier DB110) verändert werden, ist das Chaos vorprogrammiert. Undefiniertes und gefährliches Verhalten der Maschine sind die Folge. Das erklärte Ziel ist nun:

  • • nur berechtigte Teilnehmer dürfen die SPS programmieren
  • • nur berechtigte Teilnehmer dürfen sich mit der SPS verbinden und Daten lesen bzw. beschreiben
  • • die Teilnehmer dürfen nur auf 'ihren' Datenbereich in der er SPS zugreifen

Diese Aufgaben kann die S7-Firewall leisten.

S7-Firewall intelligenter als herkömmliche Firewall

Die Firmen Process Informatik und Traeger Industry Components bringen mit der S7-Firewall Ordnung und Sicherheit ins System. Die Firewall erlaubt klare und einfache Zugriffsregeln für jeden Netzwerkteilnehmer. Einbau und Anwendung sind einfach. Die Konfiguration erfolgt über die Web-Oberfläche des Gerätes. Die S7-Firewall kann beliebig zwischen SPS- und Bedien-/Programmierebene eingebaut werden. Die Einbaurichtung wird automatisch erkannt. Ferner werden zur Erhöhung der Sicherheit nur konfigurierte Verbindungen zugelassen. Die Kommunikation zur SPS läuft auf Basis des RFC1006-Telegramms (siehe Beitrag SPS-MAGAZIN 4/2013, S.120). Diese Verbindung zur SPS wird über Absende-Mac und IP-Adresse, TCP-IP-Port sowie der IP-Adresse und SPS-Kanal in der Ziel-SPS identifiziert. S7-Firewall ist eine skalierbare 'SPS-Firewall', die im Gegensatz zu herkömmliche Firewall-Systemen nicht nur IP-, Mac-Adressen und Port filtert. Der Lese- und Schreibzugriff auf die SPS-Daten wird über die Quasi-Echtzeitprüfung der Protokollinhalte kontrolliert. Die Teilnehmer im Netzwerk werden in SPS-Station und PG/OP(Scada)-Stationen eingeteilt. Mac-, IP-Adresse und Verbindungskanal identifizieren die Station. Die Verbindungen werden aus der Kombination HMI/PG-Station und SPS-Station gebildet. Jede HMI/SPS-Station kann mehreren HMI/PG-Stationen zugeordnet werden. Es muss eingestellt werden, ob die HMI/PG-Station denn überhaupt Programmierfunktionen ausführen darf. Diese sind z.B.:

  • • System/Hardwarekonfiguration der SPS verändern
  • • SPS Start/Stop
  • • Programme in die SPS übertragen
  • • Programmdiagnose (Bausteinstatus)
  • • Variablendiagnose (Status Variable)

Für Verbindungen mit PG-Funktionalität kann bestimmt werden, welche Services erlaubt sind. So kann z.B. nur ein 'Read'-Modus aktiviert werden. Damit kann zwar eine Diagnose an der SPS durchgeführt werden. Programm und Daten der SPS bleiben dabei schreibgeschützt. Ferner kann festgelegt werden, welche Bausteine (Art und Nummer) überhaupt in der Ziel-SPS existieren dürfen. Ein Übertragen von Schadsoftware wie z.B. Stuxnet wird dadurch erschwert. Verbindungstypen ohne PG-Funktion dürfen nur auf die freigegebenen Datenbereiche der SPS lesen/schreiben. Jeder einzelnen Verbindung wird ein 'Regelscript' zugeordnet.

Anzeige

Einfache Scriptsprache regelt den Datenzugriff

Der Zugriff auf die Prozessdaten (DB, Merker etc.) wird über die eine einfache Scriptsprache geregelt. Im Handumdrehen wird der Datenzugriff auf die S7 bis auf das Bit genau kontrolliert. Beispiele:

  • • 'r:MB1-MB20' - erlaube nur Lesen des MB1bis MB20,
  • • 'rw:DB123.DBB0 - DBB24' - erlaube Lesen und Schreiben des DB 123 von Datenbyte 0 bis 24.

In Quasi-Echtzeit analysiert die S7-Firewall den Inhalt der Datentelegramme. Unerlaubte Zugriffe werden abgewehrt und in einem Logfile gespeichert. So lassen sich mögliche Angriffe oder Fehlzugriffe leicht erkennen. Mit der Funktion 'Lernmodus' lässt sich das Ergebnis des Log-Files einfach in ein Regelscript umwandeln. Das erlaubt eine schnelle Konfiguration des Systems.

Ideal für validierungspflichtige Anlagen

Ist die Firewall komplett parametriert, kann dieser Zustand 'eingefroren' werden. Das Gerät befindet sich dann im 'High-Security-Mode'. Änderung der Konfiguration ist nur durch komplettes 'Neuladen' möglich. Diese Option ist besonders für Anlagen, die einer Validierungspflicht unterliegen sinnvoll. Dies ist z.B. in der Pharmaindustrie der Fall.

Empfehlungen der Redaktion

Mit 'Schlüssel' zur sicheren Fernwartung

Ein Feature, welches besonders für eine sichere Fernwartung genutzt wird, ist die Option 'Schlüssel'. Mit einem eingebauten Schlüsselschalter können eine oder mehrere definierte Verbindungen mit Programmiererlaubnis aktiviert oder deaktiviert werden.

Fazit und Ausblick

Eine spezialisierte Firewall für Steuerungssysteme ist erforderlich, wenn man die S7-Steuerungen 300 und 400 zugriffssicher machen will. Ab dem nächsten Firmwarerelease der S7-Firewall steht ein intelligentes Meldesystem zur Verfügung. Damit werden Zugriffsverletzungen und Unregelmäßigkeiten per Email weitergeleitet.

Anzeige

 
190925_SPS_160x600_ID2080de
MTS Sensor Technologie GmbH
Heilind Electronics GmbH - Oktober