Kritische Sicherheitsschwachstellen in Samba veröffentlicht am 12. April 2016
Samba ist eine Open-Source Implementierung des Server Message Block (SMB) oder Common Internet File System (CIFS) Protokolls, welches PC-kompatiblen Rechnern ermöglicht Dateien, Drucker und andere Informationen freizugeben. Es wurden mehrere Fehler entdeckt und in allen aktuell unterstützten Versionen von Samba behoben. Weitere Informationen zum Badlock-Problem (CVE-2016-2118) finden Sie im Knowledgebase-Artikel 2253041.
Betroffene Versionen:
CVE | RHEL 5 samba | RHEL 5 samba3x | RHEL 6 samba | RHEL 6 samba4 | RHEL 7 | Gluster Storage | Betroffene Samba Rollen |
---|---|---|---|---|---|---|---|
CVE-2015-5370 | N | J | J | J | J | J | Alle möglichen Rollen, in denen Samba betrieben werden kann |
CVE-2016-2110 | J | J | J | J | J | J | Alle möglichen Rollen, in denen Samba betrieben werden kann |
CVE-2016-2111 | J | J | J | J | J | J | Classic Primary DC, Backup DC oder Active Directory DC |
CVE-2016-2112 | J | J | J | J | J | J | Alle möglichen Rollen, in denen Samba betrieben werden kann |
CVE-2016-2113 | N | N | N | J | J | J | Alle möglichen Rollen, in denen Samba betrieben werden kann |
CVE-2016-2114 | N | N | N | J | J | J | Alle möglichen Rollen, in denen Samba betrieben werden kann |
CVE-2016-2115 | J | J | J | J | J | J | Alle möglichen Rollen, in denen Samba betrieben werden kann |
CVE-2016-2118 | J | J | J | J | J | J | Alle möglichen Rollen, in denen Samba betrieben werden kann, außer den für Active Directory DC kritischen Rollen |
CVE-2015-5370: Mehrere Fehler in DCE/RPC Code
In der Implementierung von Sambas DCE/RPC Protokol wurden mehrere Fehler gefunden. Ein entfernter, authentifizierter Angreifer könnte diese Fehler ausnutzen um eine Dienstverweigerung gegen den Samba Server zu verursachen (hohe CPU-Belastung oder Absturz) oder möglicherweise einen willkürlichen Code auszuführen mit den Berechtigungen des Benutzers, der Samba betreibt (root). Durch diesen Fehler könnte eine sichere DCE/RPC Verbindung herabgestuft werden, indem ein Man-in-the-Middle Angreifer ein Active Directory (AD) Objekt kontrolliert und dadurch die Sicherheit eines Samba Active Directory Domain Controller (DC) gefährdet.
Hinweis: Obwohl in Red Hat Enterprise Linux gelieferte Samba Pakete nicht die Ausführung von Samba als AD DC unterstützen, betrifft dieser Fehler alle Rollen, die Samba implementiert .
CVE-2016-2118 (Badlock): SAMR und LSA Man-in-the-Middle Angriffe möglich
Details zu diesem Fehler finden Sie unter: Badlock Scherheitsschwachstelle in Samba- CVE-2016-2118
CVE-2016-2110: Man-in-the-Middle Angriffe möglich mit NTLMSSP
In Sambas Implementierung von NTLMSSP Authentifizierung wurden mehrere Fehler gefunden. Ein nicht authentifizierter Man-in-the-Middle Angreifer könnte diesen Fehler ausnutzen um die Verschlüsselung und Integrity-Flags einer Verbindung zu löschen und damit bewirken, dass Daten in einfachem Text übermittelt werden. Der Angreifer könnte auch den Client oder den Server zwingen Daten in einfachem Text zu senden, auch wenn für diese Verbindung ausdrücklich Verschlüsselung angefordert wurde.
LDAP (mit NTLMSSP Authentifizierung) wird von verschiedenen administrativen Samba Projekt-Tools als Client verwendet (beispielsweise "net", "samba-tool", "ldbsearch" oder "ldbedit").
Diese Fehler betreffen alle möglichen Rollen, in denen Samba betrieben werden kann, und gehören zu CVE-2016-2112 und CVE-2016-2113.
CVE-2016-2111: NETLOGON Spoofing-Schwachstelle
Es wurde festgestellt, dass Samba, wenn es als Domain-Controller konfiguriert ist, einen sicheren Kommunikationskanal mit einem Rechner mit gefälschtem Computernamen herstellen würde. Ein entfernter Angreifer, der Netzwerk-Datenverkehr überwachen kann, könnte diesen Fehler ausnutzen um sitzungsbezogene Informationen über den gefälschten Rechner zu beziehen.
Dieser Fehler betrifft Samba nur, wenn es als Classic Primary DC, als Backup DC oder als Active Directory DC betrieben wird.
Dieser Fehler wird bezeichnet als CVE-2015-0005 für Microsoft Windows Server.
Das Sicherheits-Advisory Patch für diesen Fehler führt eine neue smb.conf
Option ein:
raw NTLMv2 auth (G)
Dieser Parameter bestimmt, ob smbd(8) zulässt, dass SMB1 Clients
ohne erweiterte Sicherheit (ohne SPNEGO) NTLMv2 Authentifizierung verwenden.
Wenn sowohl diese Option, als auch lanman auth und ntlm auth deaktiviert ist,
dann sind nur Clients mit SPNEGO Support zugelassen. Das heißt, dass NTLMv2 nur
in NTLMSSP unterstützt wird.
Standard: raw NTLMv2 auth = no
CVE-2016-2112: LDAP Client und Server erzwingen keinen Integritätsschutz
Es wurde festgestellt, dass Sambas LDAP Implementierung keinen Integritätsschutz für LDAP Verbindungen erzwingt. Ein Man-in-the-Middle Angreifer könnte durch diesen Fehler LDAP Verbindungen herabstufen, sodass sie keinen Integritätsschutz verwenden, und dadurch Kontrolle über solche Verbindungen erlangen.
Dieser Fehler betrifft alle möglichen Rollen, in denen Samba betrieben werden kann.
Das Sicherheits-Advisory Patch für diesen Fehler führt eine neue smb.conf
Option ein:
ldap server require strong auth (G)
Die Option "ldap server require strong auth" legt fest, ob der
ldap Server erfordert, dass ldap Datenverkehr signiert oder
signiert und verschlüsselt sein muss (versiegelt). Mögliche Werte sind Nein,
allow_sasl_over_tls und Ja.
Der Wert Nein erlaubt einfache und sasl Binds für alle Transporte.
Der Wert allow_sasl_over_tls erlaubft einfache und sasl Binds (ohne signieren oder versiegeln)
für TLS-verschlüsselte Verbindungen. Unverschlüsselte Verbindungen
erlauben sasl Binds nur mit signieren oder versiegeln.
Der Wert Ja erlaubt nur einfache Binds für TLS-verschlüsselte Verbindungen.
Unverschlüsselte Verbindungen erlauben nur sasl Binds mit signieren oder versiegeln.
Standard: ldap server require strong auth = yes
Hinweis: Der LDAP Server enthält noch keine Option starke Authentifizierung zu erzwingen. Die Sicherheits-Patches führen eine neue Option namens ldap server require strong auth
ein, deren mögliche Werte no
, allow_sasl_over_tls
und yes
sind.
Da das standardmäßige Verhalten vorher auf no
gesetzt war, müssen Sie diese Option gegebenenfalls explizit ändern, bis alle Clients eingestellt wurden LDAP_STRONG_AUTH_REQUIRED Fehler zu verarbeiten. Windows Clients und Samba-Mitgliedsserver verwenden bereits Integritätsschutz.
CVE-2016-2113: Fehlende TLS/SSL Zertifikatsvalidierung ermöglicht Man-in-the-Middle Angriffe
Es wurde festgestellt, dass Samba in bestimmten Verbindungen SSL/TLS Zertifikate nicht validierte. Ein Man-in-the-Middle Angreifer könnte diesen Fehler ausnutzen, um unter Verwendung eines speziell hergestellten SSL/TLS Zertifikats einen Samba Server zu fälschen.
Dieser Fehler betrifft alle möglichen Rollen, in denen Samba betrieben werden kann.
Das Sicherheits-Advisory Patch für diesen Fehler führt eine neue smb.conf
Option ein:
tls verify peer (G)
Dies steuert, ob und wie streng der Client Zertifikat und Namen
des Peers überprüft. Mögliche Werte sind (in ansteigender Reihenfolge): no_check,
ca_only, ca_and_name_if_available, ca_and_name und as_strict_as_possible.
Bei der Einstellung no_check wird das Zertifikat überhaupt nicht überprüft,
was einfache Man-in-the-Middle Angriffe ermöglicht.
Bei der Einstellung ca_only wird überprüft, dass das Zertifikat von einer CA signiert ist,
die in der Option "tls ca file" bestimmt wurde. "tls ca file" muss auf eine gültige
Datei gestellt werden. Die Lebensdauer des Zertifikats ist auch verifiziert. Ist die Option
"tls crl file" konfiguriert, so ist das Zertifikat auch auf
die CA CRL hin überprüft.
Bei der Einstellung ca_and_name_if_available werden alle Kontrollen von ca_only durchgeführt.
Zusätzlich wird der Peer Hostname auf die Zertifikat-Namen hin überprüft,
sofern dieser von der Anwendungsschicht bereitgestellt und nicht als
IP-Adresse angegeben ist.
Bei der Einstellung ca_and_name werden alle Kontrollen von ca_and_name_if_available durchgeführt.
Zusätzlich muss der Peer Hostname angegeben werden und sogar eine
IP-Adresse wird auf den Zertifikatnamen hin überprüft.
Bei der Einstellung as_strict_as_possible werden alle Kontrollen von ca_and_name durchgeführt.
Zusätzlich muss die "tls crl file" konfiguriert werden. Zukünftige Versionen
von Samba werden gegebenenfalls weitere Kontrollen implementieren.
Standard: tls verify peer = as_strict_as_possible
CVE-2016-2114: "server signing = mandatory" nicht erzwungen
Es wurde festgestellt, dass Samba das Signieren von Server Message Block (SMB) für Clients, die das SMB1 Protokoll verwenden, nicht erzwungen hat. Ein Man-in-the-Middle Angreifer könnte diesen Fehler ausnutzen, um den Datenverkehr zwischen einem Client und einem Server zu modifizieren.
Dieser Fehler betrifft folgende Samba Rollen: Standalone Server, Mitgliedsserver, Classic Primary DC, Backup DC und Active Directory DC.
Vorbeugung:
Eine explizite Konfigurationsoption server signing = mandatory
im [global]
Abschnitt der smb.conf
Datei zusammen mit server min protocol = SMB2
soll Verbindungen ohne Signierschutz verhindern. Dies kann allerdings zur Folge haben, dass ältere Clients, die SMB2 (oder höher) nicht unterstützen, nicht verbinden können.
CVE-2016-2115: SMB Client-Verbindungen für IPC Datenverkehr haben keinen Integritätsschutz
Es wurde festgestellt, dass Samba Integritätsschutz für IPC Datenverkehr nicht standardmäßig aktiviert. Ein Man-in-the-Middle Angreifer könnte diesen Fahler ausnutzen um zwischen dem Samba Server und Client gesendete Daten zu sehen und zu modifizieren.
Das Sicherheits-Advisory Patch für diesen Fehler führt mehrere neue smb.conf
Optionen ein:
client ipc signing (G)
Dies steuert, ob der Client SMB Signierung für ICP$ Verbindungen
als DCE/RPC Transport verwenden darf oder muss. Mögliche Werte
sind auto, obligatorisch und deaktiviert.
Bei der Einstellung obligatorisch oder Standard ist das Signieren von SMB erforderlich.
Bei der Einstellung auto wird das Signieren von SMB angeboten, aber nicht erzwungen.
Und bei der Einstellung deaktiviert wird das Signieren von SMB nicht angeboten.
Verbindungen von winbindd zu Active Directory Domain-Controllern
erzwingen immer Signieren.
Standard: client ipc signing = default
client ipc max protocol (G)
Der Wert des Parameters (ein String) ist die höchste Protokollebene, die
für IPC$ Verbindungen als DCE/RPC Transport unterstützt wird.
Normalerweise sollte diese Option nicht als automatische Verhandlungsphase eingestellt sein,
wenn das SMB Protokoll für die Wahl des entsprechendem Protokolls zuständig ist.
Der standardmäßige Wert verweist auf das zuletzt unterstützte Protokoll, derzeit SMB3_11.
Eine vollständige Liste verfügbarer Protokolle finden Sie im Client Max Protokoll.
Upgrade der Werte CORE, COREPLUS, LANMAN1, LANMAN2 zu NT1 geschieht automatisch.
Standard: client ipc max protocol = default
Beispiel: client ipc max protocol = SMB2_10
client ipc min protocol (G)
Diese Einstellung steuert die Minimum Protokollversion, die
für IPC$ Verbindungen als DCE/RPC Transport verwendet werden soll.
Normalerweise muss diese Option nicht als automatische Verhandlungsphase eingestellt sein
wenn das SMB Protokoll für die Wahl des entsprechendem Protokolls zuständig ist.
Der Standardwert verweist auf den höheren Wert von NT1 und den
effektiven Wert von "client min protocol".
Eine vollständige Liste verfügbarer Protokolle finden Sie im Client Max Protokoll.
Upgrade der Werte CORE, COREPLUS, LANMAN1, LANMAN2 zu NT1 geschieht automatisch.
Standard: client ipc min protocol = default
Beispiel: client ipc min protocol = SMB3_11
Vorbeugung:
Eine explizite Konfigurationsoption client signing = mandatory
im[global]
Abschnitt der smb.conf
Datei.
Dieser Fehler betrifft alle möglichen Rollen, in denen Samba betrieben werden kann.
Comments