Web-Sicherheit

Oktober 25, 2011

Durch Fehler in Flash lassen sich Computerbenutzer über die Webcam ausspionieren

Filed under: Allgemein — sebastiankuebeck @ 14:14
Tags: , , , , , , , ,

In Abschnitt 10.5 meines Buches beschreibe ich Clickjacking, eine Angriffstechnik, mit der Angreifer Teile einer Webseite auf ihrer eigenen einblenden, um Besucher dazu zu bringen, Aktivitäten auf der legitimen Webseite durchzuführen, die der Benutzer gar nicht beabsichtigt. Es ist also eine Variante von Cross-Site Request Forgery für die allerdings gar keine Schwachstelle in der Webanwendung notwendig ist. Damit der Benutzer nur jene Teile zu sehen bekommt, die ihm der Angreifer zeigen will, verwendet letzterer beispielsweise ein DIV-Element das er vor einem IFrame platziert.

„Klassischer“ Clickjaking-Angriff auf Facebook von 2010.

Da sich auch Flash-Inhalte durch ein DIV-Element abdecken lassen, war es bis vor einiger Zeit möglich, den arglosen Benutzer dazu zu bringen, die Webcam aufzudrehen. So konnte der Angreifer alles mitverfolgen, was die Webcam des Benutzers erfasste, wie folgendes Video demonstriert.

Clickjaking-Angriff auf Webcam des Seitenbesuchers 2008.

Inzwischen hat Adobe das Problem durch ein Update das Flash-Plugins behoben, indem das Plugin eine Technik namens Framebusting verwendet, die das Anzeigen des Plugins (genauer gesagt, das Anzeigen der Dialogbox, mit der der Benutzer das Aktivieren der Webcam genehmigt) innerhalb eines IFrames verhindert. Wie sich allerdings inzwischen herausstellt, lässt sich dieser Schutz umgehen. Feross Aboukhadijeh, Student der Stanford Universität, fand einen Weg, den Framebusting-Code des Plugins (Details dazu sind in meinem Buch und in diesem Paper zu finden) zu umgehen: Dazu platzierte er einfach die SWF-Datei für die Einstellungen in einem IFrame, was Clickjaking-Angriffe wieder möglich macht.

Feross Aboukhadijeh’s erweiterter Clickjaking-Angriff, der den Schutz des Flash-Plugins umgeht.

Laut Feross Aboukhadijeh funktioniert der Angriff mit allen Flash-Plugin-Versionen, die er getestet hat, für den Mozilla Firefox und den Safari-Browser auf dem Mac. Durch einen Fehler in der CSS-Implementierung funktioniert der Angriff weder auf dem Chrome-Browser für den Mac noch auf den meisten Windows und Linux-Brwosern. Aboukhadijeh veröffentlichte einen Proof-Of-Concept-Code (PoC) auf seinem Blog, nachdem Adobe nicht auf seinen Fehlerbericht reagiert hatte.
Wie es aussieht hat Adobe inzwischen eine Lösung für das Problem gefunden.

Auch wenn das Problem jetzt behoben zu sein scheint, sollte man die Webcam hardwareseitig (oder softwareseitig, wenn das hardwareseitig nicht möglich ist) deaktivieren, wenn man sie nicht benötigt. In der Vergangenheit wurden Webcams bereits dazu missbraucht, Kinder bei der Bedienung ihrer Notebooks zu beobachten.

Oktober 24, 2011

Facebook patentiert Verfahren zur Überwachung von Benutzern, die nicht bei Facebook angemeldet sind

Filed under: Allgemein — sebastiankuebeck @ 14:50
Tags: , , , , , ,

Das Patent Nummer 2,011,023,240 das am 22 September 2011 vom US-amerikanischen Patentamt USPTO genehmigt wurde, ermöglicht Facebook auch Benutzer zu überwachen, die nicht bei Facebook angemeldet sind.

Kommunizieren von Informationen in einem sozialen Netzwerk über Aktivitäten einer anderen Domain

In einem Abschnitt wird eine Methode zur Verfolgung von Informationen über die Aktivitäten von Benutzern eines sozialen Netzwerks während sich diese auf einer anderen Domäne befinden. Die Methode beinhaltet das erstellen eines Profils für jedes Mitglied eines oder mehrerer sozialen Netzwerke, wobei jedes Profil eine Verbindung zu einem oder mehreren anderen Benutzern identifiziert und Informationen über den Benutzer beinhaltet. Die Methode beinhaltet auch ein Verfahren das Informationen des Benutzers wobei für jedes Profil eine Verbindung zu einem anderem Benutzer Identifiziert wird. Darüber hinaus beinhaltet die Methode das entgegennehmen von Kommunikationsdaten von einer fremden Webseite die sich in einer anderen Domäne befindet, wie das Sozialen Netzwerk, wobei jede Nachricht eine Aktivität des Benutzers das sozialen Netzwerks auf der fremden Webseite beschreibt. Die Methode beinhaltet weiters das Loggen der Aktivitäten des Benutzers auf der fremden Webseite inklusive Details dieser Aktivitäten. Die Methode beinhaltet weiters das Abgleichen der geloggten Aktivitäten mit einem oder mehreren Inserenten, die den Benutzern auf der fremden Webseite präsentiert werden und das Abgleichen der geloggten Aktivitäten mit denen eines Benutzers des sozialen Netzwerks.

Facebook beteuert, dass dieses Patent nicht diesem Zweck dient. Obwohl Facebook Benutzer zu überwachen scheint, die nicht bei Facebook angemeldet sind, genauso wie Benutzer, die gar nicht auf Facebook sind. Letzteres hat Facebook inzwischen bestätigt – mit der Einschränkung, das Facebook diese Daten für ihr Profiling verwende.

Das klingt wohl nicht nur für Bruce Schneier nach Haarspalterei. Dieser behauptet, er bekommt E-Mails von Facebook mit Listen von Freunden, die sich bereits auf Facebook befinden, und das, obwohl er gar nicht auf Facebook ist.

Man kann also der Datenkrake Facebook nicht entkommen, auch wenn man gar nicht auf Facebook ist. Es genügt, dass Freunde oder Bekannte auf Facebook sind und schon schlingen sich Facebooks virtuelle Tentakel unbemerkt um einen…

Ja, auch die Bundesangie ist auf Facebook. Quelle: Desparada News

Oktober 18, 2011

Sony sperrt Benutzerkonten

Filed under: Allgemein — sebastiankuebeck @ 06:29
Tags: , , , , , , ,

Sony sperrte letzte Woche 93.000 Benutzerkonten des PlayStation Network und des Sony Entertainment Network. Das geschah nachdem das Unternehmen zahlreiche Benutzeraktivitäten mit dem Zweck, in die inzwischen gesperrten Benutzerkonten einzudringen, beobachtet hatte. Laut Sony konnten die Hacker Benutzernamen und Passwörter ermitteln, bevor die zugehörigen Benutzerkonten gesperrt wurden. Die betroffenen Kunden wurden via E-Mail verständigt.

Bereits Ende April konnten Hacker in Sonys PlayStation Network eindringen und Millionen von Kundendaten entwenden. Danach wurde das PlayStation Network einen Monat lang immer wieder vom Netz genommen, was zahlreiche Gamer verärgerte. Inzwischen versucht Sony, die Gamer mit Gratisspielen und einer Versicherung in Höhe von einer Million Dollar pro Benutzer wieder zurückzuholen. Diese Aktivitäten werden durch die jüngsten Angriffe sicher nicht erleichtert.

Bei den Angriffen handelte es sich also offenbar um Brute-Force-Angriffe. Als Benutzer eines der Sony-Netze kann man sich bis zu einem gewissen Grad dadurch schützen, dass man Passwörter verwendet, die schwer zu ermitteln sind. Es gibt mehrere Möglichkeiten, sichere Passwörter zu finden, die trotzdem leicht zu merken sind. Eine der bekannteren ist, Sätze statt Wörter zu verwenden, wie XKCD demonstriert (in Wahrheit ist XKCDs Berechnung nicht ganz korrekt, da er fälschlicherweise davon ausgeht, dass der Angreifer Informationen über den formalen Aufbau eines Passwortes hat, also ist das erste Passwort sicherer, als XKCD das berechnet hat). Eine zweite, besonders kreative Möglichkeit ist Steven Gibsons Methode, Passwörter mit beliebigen Zeichen zu verlängern.

Oktober 17, 2011

Microsoft-Sicherheitsbericht: IT-Sicherheit im Ländervergleich

Filed under: Allgemein — sebastiankuebeck @ 08:30
Tags: , , , , , , ,

Laut Microsofts jüngstem Sicherheitsbericht erfolgten im beobachteten Zeitraum nur 5,6 Prozent aller Infektionen mit Schadsoftware durch Sicherheitslücken. 45% der Nutzer infizierten sich hingegen selbst.

Von 1000 Computer sind so viele mit Schadsoftware infiziert.

Dabei sind 26 Prozent aller Angriffe sind durch infizierte USB-Speichermedien erfolgt. Hierfür ist die USB-Autorun-Funktion verantwortlich, die nur bis Vista in Windows enthalten war und von Microsoft im Februar dieses Jahres durch ein Update lahm gelegt wurde. Ganze 17,2 Prozent der Angriffe sind über verseuchte Netzwerkfreigaben erfolgt, in 4,4 Prozent der Fälle hat sich der Schädling verbreitet, indem er sich in harmlose Dateien eingenistet hat. Diese hat dann der Benutzer unwissentlich selbst weitergeleitet, wodurch weitere Rechner infiziert worden sind.

Im Ländervergleich liegen Deutschland, Österreich und die Schweiz bei mit Schadsoftware infizierten Computern weit unter dem weltweiten Durchschnitt. Das liegt vermutlich daran, dass in diesen Ländern weniger raubkopierte Betriebssysteme im Einsatz sind. Da diese von Microsoft automatisch gepatcht werden, kann sich Schadsoftware dort schwieriger Einnisten, als auf Computern, die mit ungepatchten Raubkopien (von meist Windows XP) betrieben werden.

Von 1000 Computer sind soviele mit Schadsoftware infiziert.

Bei der Schadsoftware dominiert in den genannten Ländern Adware, also Software, die den Benutzer mit unerwünschter Werbung nervt. Conficker hat es mit Ausnahme von Österreich nicht mehr in die Top 10 geschafft.

Die Anzahl der Phishing-Sites, also Webseiten, die zu dem Zweck geschaffen wurden, um Benutzer dahingehen zu täuschen, dass sie sensible Daten verraten, ist ebenfalls in den ausgewählten Ländern rückläufig, wobei sich in der Schweiz im zweiten Quartal 2011 eine Trendumkehr abzeichnet.

Von 1000 Webseiten (hosts) sind so viele Phishing-Sites

Die Anzahl der Webseiten, die freiwillig oder unfreiwillig Schadsoftware verbreiten, ist in Deutschland Anfang 2011 dramatisch eingebrochen. Lag die Infektionsrate 2011 noch deutlich über dem weltweiten Durchschnitt, nähern sich die Werte 2011 denen von Österreich und der Schweiz an. Offenbar haben also deutsche Webseitenbetreiber in deutlich größerem Umfang infizierte Seiten geflickt, als Betreiber in anderen Ländern.

Von 1000 Webseiten (Hosts) verbreiten so viele Schadsoftware.

Die niedrige Infektionsrate österreichischer Computer ist Microsoft übrigens schon im vorigen Jahr aufgefallen. Tim Rains von Microsoft versuchte im August in seinem Artikel Austria – Lessons from Some of the Least Malware Infected Countries in the World eine Erklärung für dieses Phänomen zu finden. Seiner Meinung nach sind die geringe Verbreitung von Raubkopien, die strikte Vorgehensweise österreichischer ISPs gegen infizierte Computer und die vergleichsweise hohe Verfügbarkeit von schnellen Internetverbindungen in Österreich, durch die Aktualisierungen schneller eingespielt werden als anderswo, die Hauptgründe für die niedrige Infektionsrate.

Oktober 12, 2011

RSA offenbar von zwei unterschiedlichen Hackergruppen gehackt

Filed under: Allgemein — sebastiankuebeck @ 13:15
Tags: , , , ,

Wie es aussieht, waren an dem Einbruch bei RSA Security im März zwei unabhängige Hackergruppen beteiligt, die bei diesem Angriff zusammengearbeitet haben. Das behauptete zumindest Thomas Heiser, seines Zeichens „RSA Security President“ in seiner Keynote auf der diesjährigen RSA Konferenz in London am Dienstag. Beide seien den Behörden bekannt, aber sie hätten noch nie zuvor zusammengearbeitet, so Heiser.

Art Coviello, Chairman von RSA Security ist der Ansicht, dass ein Staat hinter dem Angriff stehen müsse. Ziel dieses Angriffs sei es gewesen, bei Kunden von RSA Security (beispielsweise beim Rüstungskonzern Lockheed-Martin) im großen Stil Industriespionage zu betreiben.

Das RSA Security versucht, die Angreifer als Superhacker darzustellen, gegen deren Angriffe es nach dem gegenwärtigen Stand der Technik unmöglich gewesen sei, sich wirksam zu verteidigen, ist verständlich, denn es soll von der Frage abgelenkt werden, wie es den Einbrechern gelang, von einem infizierten PC aus an die Schlüssel der SecurID-Tokens zu kommen. Schließlich muss man kein Sicherheitsexperte sein, um zu wissen, dass man heutzutage immer damit rechnen muss, dass Computer von Schadsoftware befallen werden und dass man sich davor nie zu hundert Prozent schützen kann.

Sicherheitsbewusste Hersteller von Sicherheitslösungen verwahren daher ihre Schlüssel in speziell abgesicherten Systemen (HSMs), die nicht mit dem restlichen IT-Netzwerk verbunden sind. Das bietet zwar auch keinen hundertprozentigen Schutz, macht aber Einbrüche ungleich schwieriger (entsprechende physische und organisatorische Maßnahmen wie richtiges Schlüsselmanagement etc. etc. vorausgesetzt).

Hartnäckigen Gerüchten zufolge sollen die Schlüssel auf einem Rechner eines Entwicklers gefunden worden sein. Sollte dies zutreffen, deutet das auf äußerst laxe Sicherheitspraktiken bei RSA Security hin und es ist anzunehmen, dass „vorsichtigere“ Einbrecher bereits zuvor Zugang zu diese Schlüsseln bekommen haben – beispielsweise mithilfe von „traditionelle“ Spionagetechniken.

Was aber wirklich bedenklich ist, ist das Kunden wie Lockheed-Martin RSA Security offenbar blind vertrauten haben und niemand etwa darauf bestand, die Schlüssel selbst zu verwalten. Das ist irgendwie so, als würde das Pentagon die Codes für die Nuklearwaffen im Kaffeehaus um die Ecke hinterlegen. Hoffentlich machen die das nicht wirklich so…

Jenseits von SQL-Injection: Verschleiern und Umgehen

Filed under: Allgemein — sebastiankuebeck @ 08:29
Tags: , , , , , ,

Prathan „ZeQ3uL“ Phongthiproek und „Suphot Boonchamnan“ veröffentlichten kürzlich eine Umfangreiche Anleitung in der zahlreiche Techniken beschrieben werden, mit denen man Filtertechniken wie Web Application Firewalls (kurz WAFs) umgehen kann. Ich habe in der Vergangenheit bereits zahlreiche Techniken dieser Art vorgestellt und man möchte meinen, dass es zu diesem Thema nichts mehr fundamental Neues zu veröffentlichen gäbe, dennoch zeigt dieses Paper einige Tricks, die mir bisher noch nicht bekannt waren.

Da die WAF-Hersteller laufend versuchen, mit den Angreifern schrittzuhalten, konzentrieren sich letztere zusehends auf das Ausnützen von Eigenheiten (neudeutsch Idiosynkrasien) einzelner Datenbankprodukte, die von den meisten Filtertechniken nicht berücksichtigt werden. So kann man in MySQL-Abfragen && und || anstelle der logischen Operatoren and und or verwenden. Auch wird von den meisten Filtern das SQL-Schlüsselwort union blockiert, da dieses von Angreifern häufig dazu dazu verwendet wird, Datenbankinhalte von Tabellen anzuzeigen, die von der Webanwendung eigentlich nicht angezeigt werden sollten. Diese Einschränkung kann ein Angreifer teilweise jedoch wie folgt umgehen:

union select user, password from users // diese Abfrage wird blockiert 
1 || (select user from users where user_id = 1) = 'admin' // diese jedoch nicht

In der geänderten Version ist jetzt allerdings ein Blind-SQL-Injection-Angriff nötig, der deutlich Aufwändiger ist, als die Variante mit union, denn man muss jetzt Benutzernamen durch Versuch und Irrtum ermitteln, anstatt sie direkt auszugeben.

Das Filtern des einfachen Hochkomma (') und von Leerzeichen kann man durch Hexadezimalzahlen, die man von der MySQL in Zeichen umwandeln lässt, umgehen:

1 || substr(user,1,1) = 0x61 // oder...
1 || substr(user,1,1) = unhex(61)

Wird auch das gefiltert, hilft die Funktion CONV, Dezimalzahlen in Hexadezimalzahlen umzuwandeln, welche dann wiederum in Zeichen umgewandelt werden können:

1 || substr(user,1,1) = lower(conv(61,10,36))

Wird auch SUBSTR gefiltert, kann man sein Glück noch mit LPAD versuchen:

1 || lpad(user,7,1)

In weiteren Abschnitten werden die Techniken der „HTTP-Parameterverunreinigung“, die ich bereits in einer vorhergehenden Artikelserie beschrieben habe, übersichtlich zusammengefasst und es wird auf Schwächen einzelner WAF-Produkte eingegangen. Insgesamt ein guter, wenn auch keineswegs vollständiger Überblick über gängige WAF-Umgehungstechniken.

Bloggen auf WordPress.com.