Schlagwort Archiv: Sicherheitslücke

SSL Zertifikat von SuperFish gestohlen

Das auf Lenovo Rechnern vorinstallierte Superfish ist nur sehr unzureichend geschützt.

Das auf Lenovo Rechnern vorinstallierte Superfish ist nur sehr unzureichend geschützt.

Mit einfachsten Mitteln konnte der Hacker Robert Graham von Errata Security das SSL Zertifikat aus Superfish extrahieren und so zur Entschlüsselung von Datenströmen diverser Lenovo Rechnern nutzen. Dabei brauchte er keine Voodoo-Technik und auch nicht sonderlich lange um das passwortgeschützte Zertifikat zu entwenden und zu entschlüsseln.

Entwenden des Schlüssels

Graham musste zunächst das Zertifikat, welches verschlüsselt und passwortgeschützt ist aus Superfish extrahieren. Dazu hat er einfach einen Debugger benutzt und einen Haltepunkt (BreakPoint) direkt nach dem entschlüsseln des eigenen Programms (wie es bei Malware typisch ist) gesetzt.

Da nun das Programm entschlüsselt im Speicher lag, konnte er es mit dem Programm procdump da raus holen. Das Ergebnis war jedoch eine Binärdatei, das heißt da waren diverse binäre Zeichen mit enthalten.
Mit dem Programm strings kann man jedoch alles binäre wegschmeißen und erhält eine Datei mit lesbarem Text. Der Schlüssel war dann in dieser Datei enthalten.

Den Schlüssel jetzt zu finden ist nicht schwer: Einfach nach Private Key suchen und fertig. Tatsächlich lag der Schlüssel mehrfach in der Datei.

Schlüssel entschlüsseln

Mit dem Schlüssel kann man nun im Grunde SSL Verbindungen (z.B. HTTPS) entschlüsseln und dem entsprechend den Datenfluss mitlesen. Da es so keinen Passwort-Cracker für SSL PEM Dateien gibt, hat Graham sich einen eigenen geschrieben.

Da die Brute-Force Methode (alle denkbaren Kombinationen an Zeichen durchgehen) Jahre dauert, fiel die Wahl auf ein Wörterbuch-Verfahren. Dabei benutzte er ein Wörterbuch mit Standardwörtern, wurde jedoch nicht fündig. Im memory-Dump (der Output vom Debugger von vorhin) muss eigentlich der Schlüssel auf drin enthalten sein. Aus der Datei, die strings lieferte, nahm er dann alle Wörter mit Kleinbuchstaben (da sonst 150.000 Wörter vorhanden wären) und wurde mit dem Wort „komodia“ nach 10 Sekunden fündig.

Mit dem OpenSSL tool kann man nun die Schlüssel entschlüsseln und so nun benutzen.

Reaktion von Lenovo

Da Superfish unter Lenovo vorinstalliert ist, hat Lenovo direkt ein Deinstallationstool mit Tipps zum entfernen aller Superfish Zertifikate und Einträge.

Mit Scrollbar Windows hacken

Eine Sicherheitslücke in den Scrollbalken von Windows erlaubt Adminrechte. Quelle: http://breakingmalware.com/wp-content/uploads/2014/11/fig5.jpg

Klingt komisch und irgendwie Zusammenhangslos, aber es geht: Mit einem Bug im Win32k.sys Modul von Windows kann man Windows hacken … zumindest, wenn man der Man-in-the-middle (z.B. ein Arbeitskollege) ist.

Die Lücke erlaubt einem Angreife eine Privilege Escalation, also die Aneignung von höheren Rechten.

Funktionsweise der Lücke

(dieser Abschnitt ist sehr technisch und ich garantiere für keinerlei Richtigkeit)
Der Fehler lag in der Funktion xxxEnableWndSBArrows, die eine Windows-Scrollbar aktiviert oder deaktiviert. Diese Funktion ruft unter anderem die Funktion xxxDrawScrollbar, in der das Assembler Unterprogramm redraw_the_scrollbar existiert. Dieses Unterprogramm ist im Prinzip ein Dead-Code, denn er wird normalerweise nie ausgeführt. Wenn man jedoch im Integer Wert WSBflags aus der typedef struct tagSBINFO die Bits 3 und 4 auf 0 setzt (also ...1110011b), dann wird dieser Dead-Code doch ausgeführt. Dies allein ist nicht schlimm, doch wenn man z.B. die Größe eines Buffers erhöhen würde, würde das anders aussehen.
Dies ist mit der Struktur struct typedef tagPROPLIST möglich. Sowohl die tagPROPLIST als auch die tagSBINFO sind dem Desktop-Head zugeordnet, dies ist für später wichtig. Auch wichtig: Immer, wenn man einen Eintrag in die properties hinzufügt, wird der Speicher neu zugeordnet. Wenn man nun durch das erhöhen des ersten DWORDS (cEntries) in der tagPROPLIST die Größe des Buffers erhöht, bis dieser an den Speicherbereich von tagSBINFO heranreicht, kann man einen Buffer-Overflow erzeugen, was im Prinzip die Sicherheitslücke aus macht.

Alle Windows Versionen betroffen

Der oben beschriebene dead-code existiert seit ca. 15 Jahren, diese Lücke existiert also auch schon 15 Jahre.

Neben dem technical preview von Windows 10 sind also alle Windows Versionen ab XP betroffen. Für Versionen, die noch unterstützt werden (Vista und neuer) wurde die Lücke im Februar-Patch behoben. Für XP bleibt diese Lücke jedoch bestehen.

Vorsicht vor fehlerhaftem Windows Update

Wiedermal wurde ein fehlerhaftes Windows Update verteilt.

Neben zahlreichen Updates für den Internet Explorer, gab es – mal wieder – ein fehlerhaftes Windows Update. Quelle: https://c1.staticflickr.com/1/51/163468567_2414956872_z.jpg%3Fzz%3D1

Kaum ist der Februar Patchday da, schon gibt es ein fehlerhaftes Windows Update, das verteilt wird. Es wurden bei diesem Patchday 9 Updates für insgesamt 56 Sicherheitslücken (allein 41 davon im Internet-Explorer) veröffentlicht.

Welches Windows Update sind fehlerhaft?

Neben diversen Sicherheitslücken im Internet Explorer (s.u.), wurde auch eine Fehler in Visual Studio 2010 gepatcht. Das Problem war nun, dass man zur Installation des Updates einen EULA-Dialog sehen und den Vertrag bestätigen sollte, jedoch wurde dieser Dialog nicht angezeigt, weswegen die Installation stehen blieb.

Betroffen ist jeder, der Visual Studio 2010 selbst oder eine Software installiert hat, die Teile von Visual Studio 2010 benutzt.

Lösen des Problems

(mehr …)

ADAC: BMWs per Smartphone hacken

Viele BMW-Modelle hatten eine Sicherheitslücke.

Viele Modelle von BMW waren von der Sicherheitslücke betroffen. Quelle: http://upload.wikimedia.org/wikipedia/commons/e/ea/BMW_E93_325i_Saphirschwarz_offen_Interieur.JPG

Der ADAC hat nach einer Untersuchung des „ConnectedDrive“ Systems eine Sicherheitslücke entdeckt und BMWs per Smartphone hacken können. Hintergrund war, dass der ADAC bei der besagten Untersuchung eine Sicherheitslücke entdeckt hat, mit der man Fahrzeuge z.B. öffnen, deren Heizung oder Klimaanlage regeln und vieles mehr steuern kann.

Weltweit sind rund 2,2 Millionen Fahrzeuge betroffen, rund 432.000 allein in Deutschland.

Was ist ConnectedDrive?

ConnectedDrive ist ein System von BMW, welches z.B. ermöglicht über das Mobilfunknetz und einer passenden App für das Smartphone, Funktionen des Fahrzeugs (z.B. Heizung oder Klimaanlage) zu steuern. Ein Fehler in diesem System hat es Dritten erlaubt eben diese Funktionen zu steuern und es so ermöglicht, dass z.B. die Verriegelung der Türen entsperrt werden konnte.

Sind Sie betroffen?

(mehr …)