8
KNX Sicherheit Positionspapier

KNX Security Position Paper DE V2 · 2019. 7. 3. · KNX Data Security stellt sicher, dass ausgewählte durch KNX Geräte ausgesendete Meldun‐ gen authentifiziert und/oder verschlüsselt

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

  •  

     

     

     

    KNX Sicherheit 

    Positionspapier

  •   Positionspapier KNX Sicherheit 

    © Copyright 2014, KNX Association  ‐ 2 ‐  Version 2, Oktober 2014 

    ContentsContents ......................................................................................................................................... 2 1  Einführung ............................................................................................................................. 3 2  Zugang zu dem Netzwerk über die KNX physikalischen Medien verhindern ................ 3 

    2.1.1  Twisted Pair ........................................................................................................ 3 2.1.2  Powerline ............................................................................................................ 3 2.1.3  Funk .................................................................................................................... 3 2.1.4  IP ......................................................................................................................... 3 2.1.5  Internet ................................................................................................................ 3 

    3  Ungewollte Kommunikation im Netzwerk reduzieren ....................................................... 4 4  Konfigurationskommunikation schützen ............................................................................ 4 5  Laufzeitkommunikation schützen ........................................................................................ 5 6  Unautorisierte Buszugriff detektieren ................................................................................. 8 7  Literatur ................................................................................................................................. 8 

     

  •   Positionspapier KNX Sicherheit 

    © Copyright 2014, KNX Association  ‐ 3 ‐  Version 2, Oktober 2014 

    1 EinführungDieses Papier  ist als  Leitfaden  sowohl  für den  Installateur als die KNX Hersteller gedacht und be‐schreibt Mechanismen, die verwendet werden können um die Sicherheit von KNX Anlagen zu ver‐bessern.  

    2 Zugang zu dem Netzwerk über die KNX physikalischen Medienverhindern

    2.1.1 TwistedPair

    Die Leitungsende des KNX Twisted Pair Kabels sollte nicht sichtbar sein, aus der Wand her‐ausstehen, weder im noch außerhalb des Gebäudes.  

    Anwendungen sollten fest installiert werden, um zu verhindern, dass sie entfernt werden und dadurch Personen Zugang zum Kabel haben.  

    Wenn möglich, sollten die Diebstahlschutzeinrichtungen bestimmter Applikationsmodule verwendet werden. 

    2.1.2 Powerline

    Elektronische Bandsperrfilter sollten zur Abgrenzung eintreffender und ausgehender Signale eingesetzt werden.  

    2.1.3 Funk

    Da Funk ein offenes Medium ist, können physische Schutzmechanismen den Zugang zum Medium nicht verhindern. Aus diesem Grund müssen die Maßnahmen ergriffen werden, die in den Paragraphen 3 bis 6 (und dann im Besonderen die des Paragraphen 5) dieses Doku‐mentes aufgeführt sind.  

    2.1.4 IP

    Die IP Infrastruktur sollte verhindern, dass unbekannte MAC Adressen Zugang zum Kommu‐nikationsmedium haben. Auch wenn dies keine wasserdichte Maßnahme ist, verhindert dies schon mal einfachere Angriffe auf das KNX Netzwerk.  

    Wenn möglich, sollte für Gebäudeautomation ein getrenntes LAN oder WLAN Netzwerk verwendet werden.  

    IP Passwörter sollten nicht an Dritte weitergegeben werden.   Wenn möglich, sollte die KNX IP Multicast‐Adresse von der voreingestellten Adresse abwei‐

    chen, die von IANA festgelegt wurde. Auch wenn dies keine wasserdichte Maßnahme ist, wird dies schon mal die Kommunikation verschleiern, so dass es nicht unmittelbar als KNXnet/IP Kommunikation erkannt werden kann.  

    2.1.5 Internet

    KNXnet/IP Routing und KNXnet/IP Tunneling sind nicht für Verwendung im Internet vorge‐sehen. Aus diesem Grund dürfen keine Ports von Routern Richtung Internet geöffnet wer‐den: dies verhindert, dass die KNX Kommunikation im Internet sichtbar wird.  

    Dies kann auf folgender Weise verhindert werden:  o Zugang zu KNX Installationen über VPN Verbindungen: dies setzt jedoch einen Rou‐

    ter mit VPN Server Funktionalität voraus oder einen Server. o Verwendung einer von mehreren verfügbaren herstellerspezifischen Lösungen oder 

    Visualisierungen (z.B. mit Zugang über http). o KNX spezifiziert zurzeit eine Ergänzung zum KNX Standard zur Festlegung eines stan‐

    dardisierten Zugang zu KNX Installationen über Internet und via Web Services.  

  •   Positionspapier KNX Sicherheit 

    © Copyright 2014, KNX Association  ‐ 4 ‐  Version 2, Oktober 2014 

     Bild 1: Zugang zu KNX Netzwerken über Internet 

    3 UngewollteKommunikationimNetzwerkreduzieren Die individuelle Adresse sollte korrekt zugewiesen werden und die Router sollten so konfigu‐

    riert werden, dass keine Meldungen mit inkorrekter Quelladresse weitergeleitet werden. Auf dieser Weise kann ungewollte Kommunikation auf eine einzige Linie begrenzt werden.  

    Punkt‐zu‐Punkt und wenn möglich Broadcast Kommunikation über Router hinweg sollte blo‐ckiert werden. Auf dieser Weise wird Re‐Konfiguration auf eine einzige Linie begrenzt.  

    Die Koppler sollten so konfiguriert werden, dass Filtertabellen verwendet werden und somit keine Gruppenadressen in eine Linie weitergeleitet werden, die in dieser Linie nicht verwen‐det werden. Wenn dies nicht sichergestellt ist, kann Kommunikation, die aus einer Linie her‐aus gestartet wird sich unkontrolliert über die ganze KNX Anlage ausbreiten. 

    4 Konfigurationskommunikationschützen ETS lässt zu, ein projektspezifisches Passwort festzulegen, über das Geräte gegen unerlaub‐

    ten Zugang gesperrt werden. Dies verhindert, dass die Konfigurationsdaten durch unautori‐sierte Personen gelesen oder geändert werden.  

     Bild 2: Konfigurationskommunikation in der ETS schützen 

  •   Positionspapier KNX Sicherheit 

    © Copyright 2014, KNX Association  ‐ 5 ‐  Version 2, Oktober 2014 

    5 Laufzeitkommunikationschützen KNX Laufzeitkommunikation kann über die folgenden spezifizierten Mechanismen geschützt 

    werden:  o KNX Data Security und  o KNX IP Secure 

    KNX Data Security stellt sicher, dass ausgewählte durch KNX Geräte ausgesendete Meldun‐gen authentifiziert und/oder verschlüsselt werden können. Für KNX Anlagen mit ungeschützter Kommunikation aber Verbunden mit IP wurden die KNXnet/IP Mechanismen neben den KNX Data Security Mechanismen definiert.  Auf dieser Weise ist es sichergestellt, dass KNX Tunneling oder Routing Meldungen auf IP nicht interpretiert werden können. Die KNX IP Secure Mechanismen sind sozusagen eine zu‐sätzliche Sicherheitshülle, um den kompletten KNXnet/IP Verkehr herum.  

     Bild 3: Schutzen von KNX Laufzeitkommunikation in einem IP Netzwerk mittels KNXnet/IP Secure 

    Die KNX Data Security und KNXnet IP Secure Mechanismen stellen sicher dass Geräte ein ge‐sicherten Kommunikationskanal aufbauen können, wobei folgendes sichergestellt wird: 

    o Datenintegrität,  d.h.  verhindern,  dass  ein Angreifer  Kontrolle  über  die Anlage  be‐kommt,  indem  er manipulierte Meldungen  einspeist.  Bei  KNX wird  dies  sicherge‐stellt,  indem ein Authentifikationskode  jeder Meldung angehängt wird: dieser Kode lässt zu, zu verifizieren, dass eine Meldung nicht verändert wurde und sie auch von dem richtigen Kommunikationspartner stammt.  

    o Freshness, d.h. verhindern, dass Meldungen aufgezeichnet werden und dann zu ei‐nem späteren Zeitpunkt wieder abgespielt werden, ohne den Inhalt zu manipulieren. Bei KNX Data Security wird dies über eine Sequenznummer und bei KNXnet IP Secure über eine Sequenzidentifikation sichergestellt.  

    o Vertraulichkeit,  d.h.  der  Netzwerkverkehr wird  verschlüsselt,  sodass  ein  Angreifer den  geringstmöglichen  Einblick  in die  versendeten Daten hat.  Zur Verschlüsselung von KNX Netzwerkverkehr lassen KNX Geräte zumindest eine Verschlüsselung gemäß AES‐128 CCM Algorithmen zu und dies mittels eines symmetrischen Schlüssels. 

  •   Positionspapier KNX Sicherheit 

    © Copyright 2014, KNX Association  ‐ 6 ‐  Version 2, Oktober 2014 

    Ein symmetrischer Schlüssel bedeutet, dass der gleiche Schlüssel sowohl durch den Sender zum Schutz ausgehender Meldungen (Authentifizierung und Vertraulichkeit!) als  durch  den  Empfänger/die  Empfänger  zur  Verifikation  der  empfangenen Meldungen verwendet wird.  

     Bild 3: Übersicht der KNX Data Security Mechanismen 

    Bei KNX Data Security werden Geräte auf folgender Art und Weise geschützt: 

    ‐ Ein Gerät wird mit einer gerätespezifischen „Factory Device Set up Key (FDSK)“ aus‐geliefert.  

    ‐ Der Installateur gibt diesen Schlüssel  in das Konfigurationswerkzeug ein (diese Akti‐on erfolgt keinesfalls über den Bus). 

    ‐ Das Konfigurationswerkzeug erzeugt einen projektspezifischen Werkzeugschlüssel.  

    ‐ Über  den  Bus  sendet  das  Tool  zum  Gerät,  das  konfiguriert werden  sollte,  seinen Werkzeugschlüssel, jedoch verschlüsselt und authentifiziert mit dem ursprünglichen und  vorher  eingegebenen  FDSK‐Schlüssel.  Weder  der  Werkzeug‐  noch  der  FDSK Schlüssel werden im Klartext über den Bus gesendet.  

    ‐ Das Gerät akzeptiert nach der vorherigen Aktion nur noch den Werkzeugschlüssel für weitere Kommunikation mit ETS. Der FDSK‐Schlüssel wird nicht mehr verwendet.  

    ‐ Das Konfigurationswerkzeug erzeugt so viele Laufzeitschlüssel wie für die Gruppen‐kommunikation, die man schützen möchte, benötigt werden.  

    ‐ Über den Bus sendet das Werkzeug zum Gerät, das konfiguriert werden sollte, die Laufzeitschlüssel,  jedoch  indem diese Meldungen über den Werkzeugschlüssel ver‐schlüsselt und authentifiziert werden. Die  Laufzeitschlüssel werden nie  im Klartext über den Bus vermittelt.  

       

  •   Positionspapier KNX Sicherheit 

    © Copyright 2014, KNX Association  ‐ 7 ‐  Version 2, Oktober 2014 

     

     Bild 4: Verfahren zur Verschlüsselung von KNX Geräten 

    Bei KNX  IP Security, wird eine gesicherte Verbindung  (Tunneling oder Gerätemanagement) auf folgende Art und Weise aufgebaut:  

    ‐ Sowohl Client als auch Server erzeugen eine Kombination eines individuellen öffent‐lichen/privaten Schlüssels. Dies wird als asymmetrische Verschlüsselung bezeichnet.  

    ‐ Der Client sendet dem Server seinen öffentlichen Schlüssel im Klartext.  

    ‐ Der  Server antwortet mit  seinem öffentlichen  Schlüssel  im Klartext und hängt das Ergebnis der  folgenden Kalkulation an: er berechnet den XOR Wert seines öffentli‐chen Schlüssels, verschlüsselt dies mit dem Gerätekode um sich gegenüber dem Cli‐ent zu authentifizieren und verschlüsselt dies ein zweites Mail mit dem berechneten Session‐Schlüssel.  Der  Geräte‐Authentifikationsschlüssel  wird  entweder  durch  die  ETS  während  der Konfiguration  zugewiesen  oder  ist  der  Werkzeugschlüssel.  Der  Geräte‐Authentifikationsschlüssel muss dem Betreiber der Visualisierung zur Verfügung ge‐stellt werden, der eine gesicherte Verbindung mit dem  jeweiligen Server herstellen möchte.  

    ‐ Der Client führt die gleiche XOR Operation durch aber autorisiert sich indem erstens mit  dem  Passwort  des  Servers  verschlüsselt wird  und  zweitens mit  dem  Session‐Schlüssel.  Bei dem Vorgang ist zu beachten, dass der verwendete Verschlüsselungsalgorithmus (Diffie  Hellmann)  sicherstellt,  dass  der  Session‐Schlüssel  des  Clients  und  Servers identisch sind.  

    Die Passwörter des Servers müssen dem Betreiber der Visualisierung zur Verfügung gestellt werden, der eine gesicherte Verbindung mit dem  jeweiligen Server herstel‐len möchte.  

  •   Positionspapier KNX Sicherheit 

    © Copyright 2014, KNX Association  ‐ 8 ‐  Version 2, Oktober 2014 

     Bild 5: Aufbau einer KNXnet/IP Secure Verbindung 

    6 UnautorisierteBuszugriffdetektieren Selbstverständlich kann der Bus jederzeit überwacht werden und ungewöhnlichen Verkehr 

    aufgezeichnet werden.   Manche Geräte können feststellen, wenn andere Geräte Telegramme mit der eigenen physi‐

    kalischen Adresse senden. Dies wird nicht mehr spontan ins Netzwerk kommuniziert, aber kann über den PID_Device_Control ausgelesen werden.  

    Neue Implementierungen verfügen möglicherweise über den PID_Download_Counter. Wenn der Wert (zyklisch) ausgelesen und mit einem Referenzwert verglichen wird, kann aus dieser Information Änderungen in der Gerätekonfiguration abgeleitet werden.  

    7 Literatur[1] AN 158 v02 KNX Data Security DP Version

    [2] AN 159 v04 KNX IP Secure DP Version

    [3] Volume 3/8/x KNXnet/IP Specifications – KNX Standard Version 2.1