[Generic/OpenSSL] Fehler im Server- und Client-Code für SSL 2 und 3
(2002-07-30 14:14:05.432708+00)
Quelle:
http://cert.uni-stuttgart.de/archive/bugtraq/2002/07/msg00380.html
In OpenSSL sind mehrere Schwachstellen im Programmcode zur Verarbeitung von SSL-Verbindungen (sowohl auf Client- als auch auf Server-Seite) entdeckt worden.
Betroffene Systeme
- OpenSSL-Versionen des 0.9.6-Astes bis einschließlich Version 0.9.6d
- OpenSSL-Versionen des 0.9.7-Astes bis einschließlich Version 0.9.7-beta2
- vermutlich auch frühere Versionen von OpenSSL (z.B. 0.9.5)
Nicht betroffene Systeme
- 32-Bit-Systeme, die OpenSSL 0.9.6d zur Implementierung eines SSL-Servers verwenden, aber nicht die Unterstützung für SSL-Version 2 aktivieren.
- Systeme, die OpenSSL nur als Bibliothek von Krypto-Algorithmen nutzen (wie dies z.B. bei OpenSSH der Fall ist).
Einfallstor
SSL-Verbindungen, z.B. HTTPS (TCP-Port 443), SMTP (TCP-Port 25), IMAPS (TCP-Port 993) oder POP3S (TCP-Port 995).
Auswirkung
Ein Angreifer kann beliebigen Code mit den Rechten des Prozesses ausführen, der die OpenSSL-Bibliothek verwendet. Das sind beispielsweise die Rechte das Accounts, unter dem der Web-Server läuft (z.B. www-data
) oder root
-Rechte bei einem typischen POP3S- oder IMAPS-Server.
Typ der Verwundbarkeit
buffer overflow bug
Gefahrenpotential
sehr hoch
(Hinweise zur Einstufung des Gefahrenpotentials.)
Beschreibung
Insgesamt sind vier Schwachstellen im SSL-Code entdeckt worden:
- Die erste Schwachstelle befindet sich im Server-Code für die SSL-Version 2. Ein Angreifer, der ein entsprechend manipuliertes Master Secret (von dem die diversen Sitzungsschlüssel abgeleitet werden) im Rahmen des Handshakes an den Server schickt, kann dort einen Pufferüberlauf auslösen. Es liegen Berichte vor, die besagen, daß über diese Schwachstelle eine Kompromittierung des Servers möglich ist. (Die Schwachstelle bezieht sich auf den Austausch des Master Secrets, sie ist also auch dann relevant, wenn keine Client-Zertifikate verwendet werden.)
- Eine weitere Schwachstelle befindet sich im Client-Code für die SSL-Version 3. Hier wird die Session-ID, die vom Server während des Handshakes geliefert wird, nicht korrekt verarbeitet, so daß es ebenfalls zu einem Pufferüberlauf kommt.
- Im SSL-3-Server-Code zwischen ist eine Schwachstelle enthalten, die der ersten ähnelt. Sie tritt jedoch nur auf, wenn Kerberos-Unterstützung in OpenSSL 0.9.7 (bis Version 0.9.7-beta2) aktiviert wurde.
- Auf 64-Bit-Systemen werden die Größen von einigen Zeichenketten, die Zahlen in dezimaler oder hexadezimaler Schreibweise aufnehmen, nicht korrekt berechnet. Dies führt ebenfalls zu Pufferüberläufen.
Workaround
- Auf 32-Bit-Systemen, die Version 0.9.6d zur Implementierung eines SSL-Servers verwenden, kann eventuell die Unterstützung für SSL-Version 2 in der entsprechenden Anwendung deaktiviert werden.
Gegenmaßnahmen
- Update auf OpenSSL 0.9.6e.
- Einspielen des Patches aus dem Advisory. Auch für ältere Versionen stehen Patches zur Verfügung.
- Einspielen eines Hersteller-Updates.
Um verwundbare Systeme aufzufinden und das erfolgreiche Einspielen von Patches zu verifizieren, stellt das RUS-CERT ein spezielles Werkzeug zur Verfügung.
Vulnerability ID
- CAN-2002-0656 (Schwachstelle 1 und 2)
- CAN-2002-0657 (Schwachstelle 3)
- CAN-2002-0655 (Schwachstelle 4)
Weitere Information zu diesem Thema
- Debian Security Advisory DSA-136-1
- EnGarde Secure Linux Security Advisory ESA-20020730-019
- OpenPKG Security Advisory OpenPKG-SA-2002.008
- Red Hat Advisory RHSA-2002:155-11
- SuSE Security Announcement SuSE-SA:2002:027
- Trustix Secure Linux Security Advisory #2002-0063
Revisionen dieser Mitteilung
- V.1.0 (2002-07-30)
- V.1.1 (2002-09-13) CAN-Nummern korrigiert
- V.1.1 (2002-09-17) Detektionswerkzeug erwähnt
Weitere Artikel zu diesem Thema:
- [Generic/OpenSSL] Mehrere Schwachstellen in OpenSSL (2003-10-03)
Eine Schwachstelle in den OpenSSL-Bibliotheken ermöglicht einem Angreifer die Ausführung beliebigen Programmcodes mit den Privilegien des benutzenden Prozesses, zwei weitere Schwachstellen können dazu führen, daß das SSL-System in einen unbenutzbaren Zustand gerät. - [Generic/OpenSSL] Korrektur für SSL-Schwachstellen fehlerhaft (2002-08-09)
Auch mit den Korrekturen für die SSL-Schwachstellen erlaubt OpenSSL 0.9.6e immer noch Denial of Service-Angriffe. - [Generic/OpenSSL] Fehler im ASN.1-Parser (Update) (2002-08-01)
Die OpenSSL-Bibliothek enthält einen ASN.1-Parser zur Verarbeitung von ASN.1-Daten. In diesem Parser wurde eine Schwachstelle entdeckt, die zumindest Denial-of-Service-Angriffe (DoS) ermöglicht. Auch ein Teil der Kryptofunktionen verwenden intern diesen Parser, so daß Programme wie OpenSSH betroffen sind.
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=904