Apple iOS und Sicherheitslücken

In den letzten Tagen hat sich gezeigt, dass auch Apple mit iOS keine Garantie für eine hundertprozentige Sicherheit bieten kann. Zwar ist das Betriebssystem aufgrund seiner Architektur deutlich sicherer als die der bekannten Mitbewerber, dennoch sorgen aktuell Fehler im Quellcode für enorme Sicherheitslücken.

 

SSL Sicherheitslücke *

Zunächst sorgte die SSL Sicherheitslücke für großes Aufsehen. Durch sie ist ein s.g. Man-In-The-Middle Angriff möglich, bei dem sichere Internetverbindungen, wie sie zum Beispiel beim Online-Banking und in Online-Shops zum Einsatz kommt, einfach belauscht wird.

Der „Mann in der Mitte“ hängt sich zum Beispiel zwischen Ihren Rechner und den Rechner der Bank. Er kann nicht nur Belauschen, sondern auch die Kommunikation beliebig manipulieren. Inzwischen ist diese Lücke mit dem Update auf iOS 7.0.6 behoben. MAC Besitzer spielen mit OSX 10.9.2 den Fix ein. Betroffen sind alle Programme, die Apple’s eigene Verschlüsselungsbibliothek verwenden. Der Safari Browser ist also auf jeden Fall betroffen. Sie sollten umgehend die Updates einspielen!

Einschub für Interessierte:

Der „Fehler“ wurde im September 2012 eingeschleppt. Und zwar in iOS 6. Dann wurde er mit in die aktuelle Version 7 und in MAC OSX 10.9 übernommen. Gefunden wurde der Fehler angeblich im Rahmen eines internen Code Reviews, welches nach den Edward Snowden Enthüllungen rund um das Thema SSL initiiert wurde.

static OSStatus

SSLVerifySignedServerKeyExchange(SSLContext *ctx, bool isRsa, SSLBuffer signedParams,

uint8_t *signature, UInt16 signatureLen)

{

OSStatus err;


if ((err = SSLHashSHA1.update(&hashCtx, &serverRandom)) != 0)

goto fail;

if ((err = SSLHashSHA1.update(&hashCtx, &signedParams)) != 0)

goto fail;

goto fail; //dieser Anteil wird immer ausgeführt. Von hier wird zu fail: gesprungen. Die nachfolgenden Prüfungen werden also NIE ausgeführt. Die Funktion gibt immer den letzte err Wert als Ergebnis zurück.

if ((err = SSLHashSHA1.final(&hashCtx, &hashOut)) != 0)

goto fail;


fail:

SSLFreeBuffer(&signedHashes);

SSLFreeBuffer(&hashCtx);

return err;

}

Sie können auf der Seite gotofail.com prüfen, ob Ihr Browser von dieser SSL Lücke betroffen ist.

Das Beispiel zeigt nur allzu deutlich, dass Open Source keinesfalls sicherer ist, als Closed Source. Jeder Laie, der sich den Quellcode von oben ansieht, entdeckt ohne tiefere Kenntnisse im Bereich der Kryptowissenschaften den schwerwiegenden Fehler sofort. Es dürfte sich um eine Einstiegsfrage in einem Grundkurs für Programmierung handeln. Wo ist der Fehler? Eine Warmmachfrage sozusagen. Einmal mehr wird klar, dass Experten eben meist Besseres zu tun haben, als sich unbezahlt Quellen von Open Source Projekten anzusehen und Fehler zu melden. Experten im Dienste des Bösen suchen und sehen zwar solche Fehler, melden sie aber nicht, sondern ziehen daraus ihre Gewinne. Der Umstand, dass die Quellen einsehbar sind, macht das Auffinden der Lücken zudem besonders einfach. Das recht aufwendige Reverse Engineering entfällt. Ich möchte an dieser Stelle nicht den Behauptungen Vorschub leisten, die da sagen, der Code sei gezielt eingeschleust worden. Seit den Enthüllungen wissen wir zwar, dass nichts unmöglich ist, aber für wahrscheinlich halte ich es nicht. Oder vielleicht doch?

KeyLogger liest Zugangsdaten mit *

Eine weitere Lücke in iOS macht es möglich, so genannte KeyLogger zu entwickeln. Diese Programme schneiden Tastatureingaben und gegebenfalls andere Aktivitäten des Nutzers im Hintergrund auf und senden diese dann an spezielle Server. Klar, dass man es auf Zugangsdaten und Passwörter absieht. Selbst Touch-ID Aktivitäten können mitgeschnitten werden. Betroffen davon sind laut Entdecker FireEye die Versionen 6.1.x, 7.0.4, 7.0.5 und 7.0.6. Es ist nicht bekannt, ob es tatsächlich bereits Apps gibt, die diese Schwachstelle ausnutzen. Dennoch sollten Sie zur Sicherheit und bis zu einer Stellungnahme durch Apple Apps mit fragwürdigem Nutzwert beenden, bevor Sie zur nächsten Anwendung wechseln.

Das könnte Dich auch interessieren...

Zum Angang...