Zum Hauptinhalt springen

10. Security Considerations

Dieses Dokument definiert Mechanismen zur Konfiguration des Verhaltens von SNMP-Anwendungen. Diese Anwendungen können mit einer SNMP-Engine verbunden sein, die bei Verwendung von SNMPv3-Sicherheitsfunktionen sichere Kommunikation bereitstellt.

Es gibt jedoch mehrere Sicherheitsüberlegungen, die berücksichtigt werden müssen:

10.1. Konfigurationssicherheit

Die in diesem Dokument definierten MIB-Module (SNMP-TARGET-MIB, SNMP-NOTIFICATION-MIB und SNMP-PROXY-MIB) enthalten Konfigurationsinformationen, die direkt die Sicherheitslage von SNMP-Kommunikationen beeinflussen:

Sensible Objekte

Mehrere Objekte enthalten oder referenzieren sensible Sicherheitsinformationen:

  • snmpTargetParamsSecurityName: Enthält Sicherheits-Credentials (Community-Strings für SNMPv1/v2c, Benutzernamen für SNMPv3).
  • snmpTargetParamsSecurityModel und snmpTargetParamsSecurityLevel: Definieren die Sicherheitsmechanismen und Schutzstufen, die verwendet werden.
  • snmpProxyTargetParamsIn: Referenziert Sicherheitsparameter für eingehende Nachrichten an den Proxy.

Diese Objekte sollten mit geeigneten Zugriffskontrollen geschützt werden, um Folgendes zu verhindern:

  • Nicht autorisierte Offenlegung: Lesen von Security Names/Community-Strings.
  • Nicht autorisierte Modifikation: Ändern von Sicherheitsparametern zur Schwächung der Sicherheit oder Umleitung von Datenverkehr.

Empfohlene Zugriffskontrolle

Es wird EMPFOHLEN, dass SNMP-Entitäten, die die MIB-Module in diesem Dokument implementieren:

  1. SNMPv3-Sicherheitsfunktionen (USM) für alle Management-Zugriffe auf diese MIB-Objekte verwenden.
  2. VACM (View-based Access Control Model) konfigurieren, um den Zugriff auf diese Objekte nur auf autorisierte Sicherheitsadministratoren zu beschränken.
  3. Authentifizierung und Verschlüsselung (authPriv-Sicherheitslevel) beim Zugriff auf sicherheitssensible Objekte verwenden.

10.2. Benachrichtigungssicherheit

Informationsoffenlegung

Benachrichtigungen können sensible Informationen über das verwaltete System enthalten. Unsachgemäße Konfiguration von Benachrichtigungszielen kann zu Folgendem führen:

  • Senden von Benachrichtigungen an nicht autorisierte Empfänger.
  • Offenlegung sensibler Betriebsdaten oder Sicherheitsereignisse.
  • Preisgabe von Informationen über Netzwerktopologie oder Schwachstellen.

Mitigation:

  • Benachrichtigungsfilterung verwenden, um zu kontrollieren, welche Informationen an welche Ziele gesendet werden.
  • Benachrichtigungsziele so konfigurieren, dass sie SNMPv3 mit Authentifizierung und Verschlüsselung verwenden.
  • Regelmäßige Überprüfung der snmpTargetAddrTable, um sicherzustellen, dass Benachrichtigungen nur an autorisierte Management-Stationen gesendet werden.

Benachrichtigungs-Spoofing

Ohne ordnungsgemäße Sicherheit können Benachrichtigungen von Angreifern gefälscht werden:

  • Gefälschte Benachrichtigungen können Fehlalarme verursachen oder echte Sicherheitsvorfälle verschleiern.
  • Böswillige Akteure können Management-Systeme durch das Senden manipulierter Benachrichtigungen beeinflussen.

Mitigation:

  • Notification Receiver sollten SNMPv3-Sicherheitsfunktionen verwenden, um die Quelle von Benachrichtigungen zu authentifizieren.
  • Inform-Requests (anstelle von Traps) verwenden, um zuverlässige Zustellung und Authentifizierung zu ermöglichen.
  • Rate Limiting und Anomalieerkennung implementieren, um verdächtige Benachrichtigungsmuster zu identifizieren.

10.3. Proxy-Forwarding-Sicherheit

Proxy Forwarders führen zusätzliche Sicherheitsüberlegungen ein:

Sicherheitslevel-Herabstufung

Proxys können zwischen verschiedenen SNMP-Versionen übersetzen, was möglicherweise die Sicherheit herabstuft:

  • SNMPv3 (authPriv) zu SNMPv1 (keine Sicherheit): Legt authentifizierten und verschlüsselten Datenverkehr im Klartext offen.
  • Verlust der Authentifizierung: Das Ziel kann die wahre Quelle der Anfrage nicht verifizieren.

Mitigation:

  • Sicherheitsherabstufungen nach Möglichkeit vermeiden. SNMPv3 End-to-End bereitstellen.
  • Falls Herabstufung notwendig ist, kompensierende Kontrollen verwenden (z.B. IPsec, physische Sicherheit).
  • Alle Sicherheitsherabstufungen für Audit-Zwecke protokollieren.
  • Einschränken, welche Operationen unter Verwendung von Zugriffskontrolle herabgestuft werden können.

Man-in-the-Middle-Angriffe

Proxys befinden sich im Kommunikationspfad und könnten potenziell:

  • Sensible Informationen abfangen und lesen.
  • Anfragen oder Antworten modifizieren.
  • Entweder den Command Generator oder Command Responder imitieren.

Mitigation:

  • Proxys sollten in sicheren, kontrollierten Umgebungen bereitgestellt werden.
  • SNMPv3-Sicherheit auf beiden Seiten des Proxys verwenden (Command Generator zu Proxy, Proxy zu Command Responder).
  • Starke Zugriffskontrollen auf Proxy-Konfiguration implementieren.
  • Proxy-Aktivität überwachen und prüfen.

Kontextübersetzungs-Schwachstellen

Unsachgemäße Kontextübersetzung in Proxys kann zu Folgendem führen:

  • Zugriff auf unbeabsichtigte Management-Informationen.
  • Umgehung von Zugriffskontrollen, falls verschiedene Kontexte unterschiedliche Zugriffsrichtlinien haben.

Mitigation:

  • snmpProxyTable-Einträge sorgfältig konfigurieren, um korrekte Kontextzuordnung sicherzustellen.
  • Konsistente Zugriffskontrollrichtlinien über alle Kontexte hinweg durchsetzen.
  • Kontextübersetzungsregeln regelmäßig überprüfen und prüfen.

10.4. Denial-of-Service-Überlegungen

Die in diesem Dokument definierten Funktionen können missbraucht werden, um Denial of Service zu verursachen:

Ressourcenerschöpfung

  • Übermäßige Benachrichtigungen: Konfiguration vieler Benachrichtigungsziele kann den Notification Originator überlasten.
  • Komplexe Filterregeln: Rechenintensive Filter-Operationen können übermäßig CPU verbrauchen.
  • Proxy-Verstärkung: Eine einzelne Anfrage an einen Proxy, der mit Multiple-Target-Weiterleitung konfiguriert ist, kann viele ausgehende Anfragen erzeugen.

Mitigation:

  • Rate Limiting für Benachrichtigungserzeugung und Proxy-Weiterleitung implementieren.
  • Angemessene Grenzen für die Anzahl konfigurierter Ziele festlegen.
  • Filterverarbeitung optimieren und Erwägung, Filterkomplexität zu begrenzen.
  • Ressourcennutzung überwachen und bei Anomalien alarmieren.

Netzwerk-Flooding

  • Falsch konfigurierte Benachrichtigungsziele können das Netzwerk mit Datenverkehr überfluten.
  • Proxy-Schleifen (bei denen Proxys aneinander weiterleiten) können Nachrichtenstürme verursachen.

Mitigation:

  • Zieladressen während der Konfiguration validieren.
  • Schleifenerkennungsmechanismen in Proxy Forwarders implementieren.
  • TTL- oder Hop-Count-Mechanismen verwenden, um unendliche Weiterleitung zu verhindern.

10.5. SNMP-Versionsüberlegungen

SNMPv1- und SNMPv2c-Einschränkungen

SNMPv1 und SNMPv2c verwenden Community-Strings zur Authentifizierung:

  • Community-Strings werden im Klartext übertragen und sind anfällig für Abhören.
  • Community-basierte Authentifizierung ist schwach und leicht zu kompromittieren.
  • Kein Integritätsschutz: Nachrichten können während der Übertragung ohne Erkennung modifiziert werden.

Empfehlung:

Es wird DRINGEND EMPFOHLEN, dass Deployments SNMPv3 mit USM für alle SNMP-Kommunikationen verwenden. SNMPv1 und SNMPv2c sollten nur in kontrollierten Umgebungen verwendet werden, wo:

  • Das Netzwerk physisch sicher ist.
  • Datenverkehr durch andere Mittel geschützt ist (z.B. VPN, IPsec).
  • Legacy-Geräte nicht auf SNMPv3 aktualisiert werden können.

SNMPv3-Sicherheit

SNMPv3 mit USM bietet:

  • Authentifizierung: Verifiziert die Quelle von Nachrichten unter Verwendung von HMAC-MD5 oder HMAC-SHA.
  • Verschlüsselung: Schützt Nachrichtenvertraulichkeit unter Verwendung von DES oder AES.
  • Aktualität: Schützt vor Replay-Angriffen unter Verwendung von Zeitstempeln.

SNMPv3-Sicherheit hängt jedoch von ordnungsgemäßer Konfiguration ab:

  • Starke Authentifizierungsprotokolle verwenden (HMAC-SHA bevorzugt gegenüber HMAC-MD5).
  • Starke Verschlüsselung verwenden (AES bevorzugt gegenüber DES).
  • Kryptografische Schlüssel ordnungsgemäß verwalten (starke Schlüssel, regelmäßige Rotation).
  • Uhren synchronisieren, um Ausnutzung des Aktualitätsfensters zu verhindern.

10.6. Zusammenfassung der Sicherheitsempfehlungen

  1. SNMPv3 mit USM verwenden für alle SNMP-Kommunikationen, die die in diesem Dokument definierten MIB-Module betreffen.

  2. VACM konfigurieren, um den Zugriff auf sicherheitssensible Objekte nur auf autorisierte Administratoren zu beschränken.

  3. Authentifizierung und Verschlüsselung (authPriv) verwenden, wenn auf sensible Informationen zugegriffen oder diese übertragen werden.

  4. Benachrichtigungsziele sorgfältig konfigurieren und Benachrichtigungsfilterung verwenden, um Informationsoffenlegung zu verhindern.

  5. Sicherheitsherabstufungen in Proxy Forwarders vermeiden; falls unvermeidbar, kompensierende Kontrollen verwenden und alle Herabstufungen prüfen.

  6. Proxys in sicheren Umgebungen bereitstellen mit starken Zugriffskontrollen und Überwachung.

  7. Rate Limiting implementieren, um Denial-of-Service-Angriffe zu verhindern.

  8. Konfiguration regelmäßig prüfen von Targets, Benachrichtigungen, Filtern und Proxy-Regeln.

  9. Inform-Requests verwenden anstelle von Traps für kritische Benachrichtigungen, um zuverlässige und authentifizierte Zustellung sicherzustellen.

  10. Sicherheits-Best-Practices befolgen, wie in RFC 3410 (Applicability Statements for the Internet-Standard Management Framework) dargelegt.