[Generic/Apache] Schwachstelle in mod_ssl
(2004-05-28 22:06:01.292808+00)
Quelle:
http://www.securityfocus.com/advisories/6785
Bei der Verarbeitung von Benutzerzertifikaten durch das Krypto-Modul mod_ssl
kann ein Pufferüberlauf provoziert werden, wenn der Distinguished Name (DN) des Zertifikates länger als sechs Kilobyte ist.
Betroffene Systeme
mod_ssl
in den Versionen vor 2.8.18-1.3.31- Apache 2.0 bis einschließlich Version 2.0.49
Nicht betroffene Systeme
- Apache-Webserver ab Version 2.0.50
- Systeme, die mit entsprechenden Vendor-Patches zur Behebung der Schwachstelle versehen sind, die aber i.d.R. nicht die Versionsnummer ändern.
Einfallstor
X.509-Zertifikat eines Benutzers an den Server.
Auswirkung
- möglicherweise Ausführung beliebigen Programmcodes mit den Privilegien des verarbeitenden Prozesses über eine Netzwerkverbindung.
(remote user compromise)
Typ der Verwundbarkeit
- buffer overflow bug
Gefahrenpotential
- mittel bis hoch
(Hinweise zur Einstufung des Gefahrenpotentials.) Bitte beachten Sie den Abschnitt Einschränkung (s.u.).
Kontext
Das Apache-Modul mod_ssl
implementiert SSL/TLS-Funktionaliät für das verbreitete Webserversystem Apache wodurch der Webserver auch Inhalte über HTTPS anbieten kann. SSL/TLS verschlüsselt die Verbindung und authentifiziert den Server über ein X.509-Zertifikat. Wahlweise kann auch der Klient über ein Zertifikat authentifiziert werden.
Dabei werden Zertifikate verwendet, die von Certification Authorities (CA) ausgestellt werden. Eine CA agiert dabei als dritte Instanz, die die Zugehörigkeit einer Identität zu einem Schlüsselpaar kryptographisch nachprüfbar bestätigt. Je nach Zertifizierungspolicy der CA (eine Vorschrift, die den Prozess der Überprüfung der Identität des Zertifizierten und verschiedene technische Randbedingungen festlegt) kann von den beteiligten Parteien (Server und Klient, bzw. Benutzer) die Vertrauenswürdigkeit eines Zertifikates eingeschätzt werden.
In vielen Fällen wird mod_ssl
verwendet, um Benutzer durch die entsprechenden Server zu authentifizieren. In diesem Falle sendet ein Benutzer sein Zertifikat, das der Server im Rahmen des Authentifizierungsprozesses überprüft und insbesondere feststellt, ob es von einer bekannten und als vertrauenswürdig eingeschätzten CA ausgestellt wurde.
Seit Apache 2.0 ist die mod_ssl
-Funktionalität in den Webserver integriert.
Beschreibung
Bei der Verarbeitung von Zertifikaten durch die Implementierung der "SSLOptions +FakeBasicAuth
" Direktive durch das mod_ssl
-Modul für Apache, deren Distinguished Name (DN) größer als 6KB ist kann ein Pufferüberlauf auftreten. Ein solches Zertifikat muß dabei von einer CA ausgestellt sein, die der Server als vertrauenswürdig einstuft.
Ein solcher Umstand kann prinzipiell dazu ausgenutzt werden, bei entsprechend formuliertem DN beliebigen Programmcode mit den Privilegien der in diesem Zusammenhang aufgerufenen Prozesse auf einem betroffenen System auszuführen.
Einschränkung
Das Problem ist nur unter sehr speziellen Vorbedingungen prinzipiell ausnutzbar.
- In der Konfigurationsdatei
httpd.conf
muß die Direktive "SSLOptions +FakeBasicAuth
" aktiviert sein. - Nach dem derzeitigen Informationsstand des RUS-CERT kann dieses Problem nur dann von einem Angreifer ausgenutzt werden, wenn das Zertifikat von einer CA ausgestellt wurde, die serverseitig als Vertrauenswürdig eingestuft wird. In der Praxis bedeutet dies, daß ein Angreifer in der Lage sein muß, ein Zertifikat von einer solchen CA zu erhalten, das einen entsprechend formulierten DN enthält. Dies kann zum Beispiel dann erfolgen, wenn der Angreifer eine solche CA unter seiner Kontolle hat oder die Zertifizierungspolicy der CA die Ausstellung solcher Zertifikate erlaubt und dies auch praktiziert wird.
Gegenmaßnahmen
- Update auf
mod_ssl
2.8.18-1.3.31 für Apache 1.0. - Installation des Patches für Apache 2.0 bzw. Upgrade auf Apache 2.0.50.
Vulnerability ID
Weitere Information zu diesem Thema
- Apache homepage
mod_ssl
Homepage- Standards zu X.509:
- RFC2459 Internet X.509 Public Key Infrastructure Certificate and CRL Profile
- RFC2510 Internet X.509 Public Key Infrastructure Certificate Management Protocols
- RFC2511 Internet X.509 Certificate Request Message Format
- RFC2527 Internet X.509 Public Key Infrastructure Certificate Policy and Certification Practices Framework
- RFC2528 Internet X.509 Public Key Infrastructure
- RFC2559 Internet X.509 Public Key Infrastructure Operational Protocols - LDAPv2
- RFC2560 X.509 Internet Public Key Infrastructure Online Certificate Status Protocol - OCSP
- RFC2585 Internet X.509 Public Key Infrastructure Operational Protocols: FTP and HTTP
- RFC2587 Internet X.509 Public Key Infrastructure LDAPv2 Schema
- RFC3029 Internet X.509 Public Key Infrastructure Data Validation and Certification Server Protocols
- RFC3039 Internet X.509 Public Key Infrastructure Qualified Certificates Profile
- RFC3161 Internet X.509 Public Key Infrastructure Time-Stamp Protocol (TSP)
- RFC3279 Algorithms and Identifiers for the Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile
- RFC3280 Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile
- RFC3647 Internet X.509 Public Key Infrastructure Certificate Policy and Certification Practices Framework
- RFC3709 Internet X.509 Public Key Infrastructure: Logotypes in X.509 Certificates
- RFC3739 Internet X.509 Public Key Infrastructure: Qualified Certificates Profile
Revisionen dieser Meldung
- V 1.0 (2004-05-29)
- V 1.1 (2004-07-01) Apache 2.0.50 wurde veröffentlicht.
Hinweis
Die in diesem Text enthaltene Information wurde für die Mitglieder der Universität Stuttgart recherchiert und zusammengestellt. Die Universität Stuttgart übernimmt keinerlei Haftung für die Inhalte. Dieser Artikel darf ausschließlich in unveränderter Form und nur zusammen mit diesem Hinweis sowie dem folgenden Copyrightverweis veröffentlicht werden. Eine Veröffentlichung unter diesen Bedingungen an anderer Stelle ist ausdrücklich gestattet.
Copyright © 2022 RUS-CERT, Universität Stuttgart, https://cert.uni-stuttgart.de/
https://cert.uni-stuttgart.de/ticker/article.php?mid=1205