Web-Sicherheit

Februar 27, 2011

Der Einbruch bei der Sicherheitsfirma HBGary und seine Folgen

Filed under: Allgemein — sebastiankuebeck @ 11:12
Tags: , , , , , ,

Wie berichtet wurde die Sicherheitsfirma HBGary Opfer von Hackerangriffen, weil Sie die Hintermänner der Hackergruppe Anonymous aufdecken wollte. Inzwischen sind zahlreiche Informationen darüber aufgetaucht, wie genau dieser Angriff vor sich ging.

Hierzu ist zu sagen, dass das nicht das Werk von „Superhackern“ war, sondern es handelte sich um relativ einfache Angriffstechniken, die sehr geringe Hackerkenntnisse erfordern. Ausgangspunkt war wieder ein SQL-Injection-Angriff. Diesen nutzten die Hacker dazu aus, Zugangsdaten der Mitarbeiter von HBGary zu entwenden.

Gespeichert wurden diese Zugangsdaten als MD5-Hashes ohne Salt. Dadurch war es möglich, mithilfe von Regenbogentabellen die Zugangsdaten im Klartext zu ermitteln. Hier muss man ergänzen, dass der Angriff auch
mit Wörterbuchangriffen ans Ziel geführt hätte. Regenbogentabellen haben allerdings den Vorteil, dass man auf einen Schlag die Passwörter aller Benutzer ermitteln kann. Da der Systemadministrator von HBGary seine Zugangsdaten für die Webapplikation auch für die Fernwartung (Secure Shell) verwendete, konnten die Hacker so bequem auf alle internen Dokumente von HBGary zugreifen.

Schild auf HBGarys stand auf der RSA-Konferenz

Inzwischen hat HBGary den Auftritt auf der RSA-Konferenz abgesagt. Anstelle des Standes war lediglich ein Schild zu sehen (Bild links), mit einer kurzen Erklärung, das HBGary zum Schtz der Miratbeiter von der Konferenz fern bleiben wird.

In den Unterlagen von HBGary befanden sich auch Informationen zu einem Konzept, mit dem es Einzelpersonen möglich sein soll, Armeen von virtuellen Internetnutzern zu erstellen und zu dirigieren, um die öffentliche Meinung im Internet zu beeinflussen. Auf der Kundenliste standen Namen wie: Defense Intelligence Agency, die U.S. Armee, Marine und Luftstreitkräfte, weiters die gehemdienste Marine Corps (Geheimdienst der U.S. Marine), FBI und NSA.
Neben diesen Aktivitäten war HBGary offenbar auch damit beschäftigt, Spyware und Rootkits für die zuvor genannten Organsiationen zu erstellen.

Wie schon in meinem Buch angedeutet, dürfen sich Behörden nicht wundern, wenn so viel Schadsoftware im Umlauf ist, wenn sie auf der anderen Seite enorme Summen investieren, um Schadsoftware produzieren zu lassen.

Der Einbruch bei HBGary und die Vorfälle rund um Wikileaks veranlasste Paul Roberts zu einem Artikel, indem er die Rolle der Sicherheitsindustrie in diesem Zusammenhang hinterfragt:

Ich denke, die wirkliche Lektion aus diesem Vorfall und den Enthüllungen, die diesem folgten, ist dass die Sicherheitsindustrie ihre Seele verliert, wenn sie die vermehrte Aufmerksamkeit der Armee und des Pentagons genießt.
Wir haben die Welt davon überzeugt, dass die Gefahr real, allgegenwärtig und allmächtig sei, aber in unserem Streben sie zu bekämpfen, unterscheiden wir uns nicht mehr von den Angreifern selbst.

Das ganze kulminierte in einem Vorschlag einer großen U.S. Bank (angeblich Bank of America), offensive Angriffe auf Aufdeckungsseiten wie Wikileaks durchzuführen. HBGary war Teil eines Triumvirates von Firmen (die anderen sind Palantir Inc. and Berico Technologies), die in einer Arbeitsgruppe der amerikanischen Handelskammer waren. Ziel dieser Arbeitsgruppe war es, Angriffe auf Gewerkschaften und linke Gruppierungen zu planen.
Andere an die Öffentlichkeit gelangte E-Mails beinhalten die Zusammenarbeit mit dem Rüstungskonzern General Dynamics und anderen Firmen, mit dem Ziel, getarnte Schadsoftware nach Kundenwunsch zu produzieren. Weiterhin wurden Pläne geschmiedet, offensive Angriffswerkzeuge und noch unveröffentlichte Schwachstellen verberiteter Softwareprodukte profitabel zu vermarkten.

Hier stellt sich natürlich die Frage, ob wir uns in Zukunft nicht mehr vor den Hackerangriffen in- und ausländischer Behörden schützen müssen, als vor Angriffen von Kriminellen…

Update: Jürgen Schmidt liefert weitere Hintergrundinformationen in seinem c’t Artikel Ausgelacht – Anonymous kompromittiert US-Sicherheitsfirma.

Februar 25, 2011

Fernzugang durch SQL-Injection

Filed under: Allgemein — sebastiankuebeck @ 09:00
Tags: , , , , , ,

Zahlreiche Systemadministratoren und Programmierer sind immer noch der Meinung, dass man für einen Fernzugang einen Port in der Firewall für eingehende Verbindungen öffnen müsste. Die Zeiten, in denen das nötig war, sind leider lange vorbei. Auch denken diese Leute, dass fortgeschrittene technische Kenntnisse nötig wären, um Schwachstellen in Webanwendungen aufzudecken und auszunutzen und dass Angriffe auf Webserver beschränkt bleiben würden.

Dieses Demo-Video, dass die Funktionsweise des Werzeugs sqlninja demonstriert, zeigt, wie man mit wenigen Handgriffen eine SQL-Injection-Schwachstelle ausnützt, um einen Fernzugang mittels VNC zu erhalten.

Fernzugang mittels VNC auf den Datenbankserver.

Wie man sich leicht überzeugen kann, ist der Angriff alles andere als schwierig.

Hier ist eine etwas verkürzte Erklärung dessen, was passiert:

Im ersten Schritt wird automatisch eine SQL-Injection-Schwachstelle gesucht. Ist diese gefunden, ermittelt das Werkzeug das Datenbankprodukt (sqlninja funktioniert nur mit Microsofts SQL Server) und dessen Version.

Im zweiten Schritt wird untersucht, ob der von der Webapplikation verwendete Datenbankbenutzer Administratorrechte besitzt. Dies ist in der Praxis häufig der Fall, da Administratoren oft nicht die Zeit und/oder das Wissen haben, einen Datenbankbenutzer für die Webanwendung anzulegen und sicher, dass heißt mit minimalen Rechten, zu konfigurieren. Ist der aktuelle Benutzer kein Datenbankbenutzer,  der Administratorrechte besitzt, kann das Werkzeug mittels einer Brute-Force-Attacke diese Rechte erhalten, wie das zweite video demonstriert.

Danach wird das Kommandozeilenwerkzeug xp_cmdshell aktiviert, mit dessen Hilfe der Angreifer aus dem SQL Server „ausbrechen“ und direkt auf dem Datenbankserver Kommandos absetzten kann. Abschließend wird mittels Metasploit ein VNC-Server auf den Datenbankserver hochgeladen und aktiviert. Das funktioniert auch dann, wenn die Firewall keine eingehenden Verbindungen zulässt, da sich dann der VNC-Server über eine ausgehende Verbindung mit dem Client verbindet.
In der Praxis ist es äußerst selten, dass ausgehende Verbindungen von der Firewall beschränkt werden, da Windows ja seine Updates benötigt und um die Arbeit der Administratoren zu erleichtert, werden ausgehende Verbindungen zu allen Ports meist generell von der Firewall zugelassen.

Wenn man bedenkt, wie weit verbreitet SQL-Injection-Schwachstelle sind (wenn Sie nicht wissen, ob sie eine haben oder nicht, dann haben Sie mit an Sicherheit grenzender Wahrscheinlichkeit eine…), ist es kein Wunder, dass so viele Webapplikationen angegriffen werden.

Es ist die Verfügbarkeit und Bequemlichkeit, sie auszunutzen, die sie für Angreifer so attraktiv macht. Sollte je eine Penetrationstest gegen ihre Infrastruktur durchgeführt werden, werden sie feststellen, dass sich die Tester erst einmal auf die Webanwendungen stürzen werden, denn dort ist es am einfachsten, Schwachstellen zu finden. Schätzungsweise 80% aller Schwachstellen befinden sich genau dort…

Februar 20, 2011

Was passiert, wenn was passiert

Filed under: Allgemein — sebastiankuebeck @ 17:53
Tags: , , , , ,

Das zweite Kapitel meines Buches beschäftigt sich mit den Auswirkungen von Sicherheitsvorfällen auf Unternehmen und Organisationen. Dabei beschreibe ich die häufigsten Sicherheitsvorfälle, die im Zusammenhang mit Webapplikationen auftreten.

Natürlich weise ich in diesem Zusammenhang auch auf Angriffe hin, die durchgeführt werden, um Webseiten mit Schadcode zu infizieren. Dabei fängt sich nicht der Webserver den Virus ein, sondern dient lediglich als „Zwischenwirt“. Er verbreitet den Virus, indem er die Browser der Besucher infiziert, die Schadroutine – also jener Teil, der wirklich etwas böses macht, wie das Ausspähen von Passwörtern zum Beispiel – läuft allerdings nicht am Server.

Beispiele von Angriffen dieser Art gibt es zuhauf. Ein aktieller, prominenter Fall ist die Infektion der Webseite von ThoughWorks, von der ich bereits berichtete. Obwohl die Infektion der Webseite bereits seit dem Jahreswechsel bekannt ist, hat sich die Situation noch nicht gebessert, wie Martin Fowler (leitender Wissenschaftler bei ThoughtWorks) kürzlich berichtete. Inzwischen müssen die Kunden von ThoughtWorks mit einer stark eingeschränkten, statischen Version der Webseite Vorlieb nehmen.

Eine verkürzte Chronologie der Ereignisse:

  • Anfang Jänner: Googles Suchroboter meldet, dass er Schadsoftware auf ThoughtWorks.com gefunden hatte. Bei ThoughtWorks war man „besorgt“, man wusste aber nicht, was man jetzt machen sollte.
  • Ende Jänner: Googles Suchroboter meldet erneut, dass er Schadsoftware gefunden hat. Nun entschließt man sich bei ThoughtWorks, die Homepage durch eine stark eingeschränkten, statischen Version zu ersetzen.
  • Vorletzte Woche: Googles Suchroboter meldet, das nun die Seite von Martin Fowler selbst (martinfowler.com) infiziert sei. Da diese Seite nur aus statischen Seiten besteht und offenbar am selben Server beheimatet war, wie die Homepage von ThoughtWorks, schloss man bei ThoughtWorks, dass der Webserver wahrscheinlich selbst befallen war. Daher wurde diese Seite auf einen anderen Server verlegt.
  • 12., 13. Februar: Über das Wochenende wurde die Homepage von ThoughtWorks auf einem neuen Server aufgesetzt. Daraufhin fand sich wieder Schadsoftware auf diesem Server, also wurde wieder die statische Seite in Betrieb genommen. Nachträglich stellte sich heraus, dass sich offenbar doch keine Schadsoftware auf dem neuen Server befand.

Sie werden sich jetzt wahrscheinlich genauso wie ich fragen, warum die nicht gleich bei der ersten Warnung die Homepage aus den Quellen auf einem frisch aufgesetzten Server aufspielen und in Betrieb setzten.
Die Antwort hierzu laute wie folgt:

Wir müssen auch unsere dynamische Seite [von ThoughtWorks.com] neu aufspielen und in Betrieb setzten. Das ist allerdings schwierig, da Bibliotheken involviert sind, die wir erst überprüfen müssen. Unser letzter Versuch, die Seite in Betrieb zu setzten scheiterte, also müssen wir erst feststellen, was da wirklich passiert.

Mit anderen Worten: Die hatten überhaupt keinen Notfallplan und der Vorfall erwischte ThoughtWorks völlig unvorbereitet (es handelt sich hier immerhin um ein multinationales Technologieunternehmen)! Vor diesem Hintergrund scheinen meine Anmerkungen in Abschnitt 2.2 geradezu prophetisch:

Generell ist es ratsam, auf einen Sicherheitsvorfall vorbereitet zu sein. Es gibt
nämlich – wie wir noch sehen werden – keine hundertprozentige Möglichkeit,
Ihre Infrastruktur gegen alle möglichen Angriffe zu schützen. Deshalb ist es sinnvoll,
sich schon vorher mit der beschriebenen Situation vertraut zu machen und
einen Notfallplan zu erstellen, der alle Aktivitäten beim Eintreten eines Sicherheitsvorfalls
festlegt.

Dazu sollte natürlich auch gehören, dass man seine Homepage jederzeit auf einem neuen Server in Betrieb nehmen kann. Genau so verhält es sich mit jeder Art von Backup: Ist man nicht in der Lage, ein Backup auch wieder einzuspielen, ist es nutzlos. Weiterhin hat es sich gezeigt, dass man praktisch nie in der Lage ist, Backups einzuspielen, wenn man das nicht zuvor trainiert hat.

Abschließend empfehle ich Ihnen, sich regelmäßig selbst die Frage zu stellen, ob Sie in der Lage sind, Ihre Homepage, Ihre Webserver und andere IT-Infrastruktur jederzeit wieder in annehmbarer Zeit zum Laufen zu bringen, sollte ein ähnlicher Vorfall bei Ihnen eintreten…

Februar 8, 2011

Sicherheitsunternehmen gehackt, weil es mit dem FBI zusammenarbeitet

Filed under: Allgemein — sebastiankuebeck @ 17:41
Tags: , , , ,

Laut diesem Artikel griffen einige Mitglieder der Internet-Hackergruppe „Anonymous“ am Sonntag Abend das Sicherheitsunternehmen HBGary an. Angeblich um dem Unternehmen eine „Lektion zu erteilen, die Ihr niemals vergessen solltet“. Die Firma HBGary arbeitet mit dem FBI zusammen, um Mitglieder von „Anonymous“ aufzudecken. Nächste Woche wollte das Unternehmen auf einer Sicherheitskonferenz in San Francisco Namen nennen.

Mitglieder der „Anonymous“ reagierten auf diese Ankündignung nicht mit DDoS-Angriffen sondern manipulierten die Webseite des Unternehmens, veröffentlichten mehr als 60.000 E-Mails auf BitTorrent und verunstalteten die Twitter- und LinkedIn-Konten des Geschäftsführers mit unschönen Nachrichten und verbreiteten seine persönliche Daten (Sozialversicherungsnummer, Privatadresse, etc.) in der Öffentlichkeit.

„Wir haben Eure internen Dokumente gesehen. Alle. Und wisst Ihr, was unsere Reaktion war? Wir haben gelacht! Der Großteil Eurer ‚Unterlagen‘ ist nun öffentlich verfügbar!“, lautete eine Nachricht auf  HBGarys gehackter Webseite am Sonntag. „Warum Ihr diese Informationen über uns nicht an das FBI verkaufen könnt? Weil wir sie dem FBI gratis geben werden!“

Weiterhin merkte die Gruppe an: „Wie es aussieht sind Sicherheitsexperten nicht wirklich abgesichert…

Letzteres ist übrigens kein seltenes Phänomen. Die meisten Sicherheitsunternehmen spezialisieren sich darauf, die Sicherheit von Unternehmen zu testen. In den seltensten Fällen wenden sie diese Tests jedoch auf das eigene Unternehmen an. Auch besitzen die wenigsten Sicherheitsunternehmen das Know-How, ihre oder sonst eine IT-Infrastruktur wirksam abzusichern. Ein weiteres Paradoxon der Sicherheitsindustrie…

Februar 5, 2011

Schwarzmarkt für gestohlene Online-Banking-Daten

Filed under: Allgemein — sebastiankuebeck @ 16:21
Tags: , , ,

Im ersten Kapitel meines Buches versuche ich, einen Überblick über die Geschichte der Computerkriminalität zu vermitteln (dieses ist auch online frei verfügbar). Dabei gehe ich auch speziell auf die Professionalisierung der Hacker-Szene ein, die sich besonders in den letzten paar Jahren enorm beschleunigt hat. Dabei hat sich das Bild des Hackers deutlich verändert: Die Einzelkämpfermentalität der Hacker des vorigen Jahrhunderts ist inzwischen professionellem Teamwork gewichen. Dabei agieren diese Teams dezentral und verwenden das Internet als Handelsplatz für „Zwischenprodukte“ und Dienstleistungen.

Der folgende faszinierende Artikel THE CYBER-CRIME BLACK MARKET: UNCOVERED 2 beschreibt den aktuellen Stand der Dinge, nennt einschlägige Handelplätze und Preise für Onlinebanking-Zugänge, Kreditkartendaten und „Hackerzubehör“.

Malware-Warnung bei ThoughtWorks.com

Filed under: Allgemein — sebastiankuebeck @ 14:03

Auf der Webseite des bekannten Softwareunternehmens ThoughtWorks, bei der auch Martin Fowler arbeitet, hat Google kürzlich Schadsoftware entdeckt. Wie es aussieht, sind die Leute bei ThoughtWorks nicht wirklich auf solche Vorfälle vorbereitet und haben die Ursache des Problems immer noch nicht gefunden. Also bitten sie jetzt die Inernet-Community um Hilfe.
Daher habe ich auf meinem englischsprachigen Blog ein paar Tipps zusammengefasst, mit denen das Erkennen, Entfernen und Vermeiden solcher Probleme gelingen sollte.

Februar 3, 2011

Missbrauchen von HTTP-Statuscodes um an private Informationen zu gelangen

Filed under: Allgemein — sebastiankuebeck @ 11:05
Tags: , , , , ,

Ein Faszinierender Arikel von Mike Cardwell demonstriert, Seitenbetrieber HTTP-Status-Codes missbrauchen können, um festzustellen, ob sich Besucher bei einer Seite bei Facebook, Twitter, GMail oder Digg angemeldet hat.

Mit diesem Skript kann ein Seitenbetreiber beispielsweise erkennen, ob Sie bei GMail angemeldet sind:

<img style="display:none;"
     onload="logged_in_to_gmail()"
     onerror="not_logged_in_to_gmail()"
     src="https://mail.google.com/mail/photos/static/AD34hIhNx1pdsCxEpo6LavSR8dYSmSi0KTM1pGxAjRio47pofm
E9RH7bxPwelO8tlvpX3sbYkNfXT7HDAZJM_uf5qU2cvDJzlAWxu7
-jaBPbDXAjVL8YGpI"/>

Was hier passiert, ist folgendes: Mike Cardwell hat auf seinem GMail-Account ein Foto hochgelden und öffentlich zugänglich gemacht. Der Image-Tag läd nun das Foto und der Browser schickt dabei die Zugangsdaten des Benutzers an GMail, soferne Sie dort angemeldet sind (der Image-Tag ist von der Same Origin Policy ausgenommen, im Gegensatz beispielsweise zum XHR).

Ist dies der Fall, liefert der Server den HTTP-Statuscodes 200 (also OK) zurück. Sind Sie
nicht angemeldet, schickt er einen anderen Statuscode zurück. Diesen Statuscode kann der Seitenbetreiber natürlich nicht direkt auslesen, allerdings ist es eine Eigenheit von Browsern, dass sie den JavaScript-Code in der Eigenschaft onload ausführen, wenn sie den HTTP-Statuscodes 200 erhalten.

Der Browser prüft den Inhalt der Antwort des Servers weiter nicht. So ist es beispielsweise unerheblich, mit welchem Content-Type der Server antwortet. der Inhalt muss also nicht zwangsläufig ein Bild sein. So kann der Seitenbetreiber sicher sein, dass die Funktion logged_in_to_gmail zuverlässig ausgeführt wird, wenn der Browser den Statuscodes 200 erhalten hat und dass ist nur dann der Fall, wenn der Benutzer bereits bei GMail eingeloggt ist.

Die Technik ist vergleichbar mit Cross-Site Request Forgery, allerdings bekommt der Angreifer mit dieser Technik keine Informationen vom Server zurück. Mit der Erweiterung des Ausnützens der onload ist es zumindest also möglich, Informationen über den Status-Code zu erhalten. Ganz abgesehen von den Implikationen, die das auf die Sicherheit von Surfern hat, ergeben sich hier neue Möglichkeiten für Cross-Site-Request-Forgery-Angriffe.

Im Fall von GMail kann man das Spiel noch weitertreiben, so kann man automatisch die GMail-Adresse des Benutzers mithilfe von jQuery in ein Formular einfügen.

$('').hide()
   .attr('src','https://mail.google.com/mail/photos/static/AD34hIhNx1pdsCxEpo6LavSR8dYSmSi0KTM1pGxAjRio47pofm
E9RH7bxPwelO8tlvpX3sbYkNfXT7HDAZJM_uf5qU2cvDJzlAWxu7
-jaBPbDXAjVL8YGpI')
   .load(function(){
      $('a[href^="mailto:"]').each(function(){
         var email = $(this).attr('href').replace(/^mailto:/,'');
         $(this).attr('href','https://mail.google.com/mail/?view=cm&fs=1&tf=0&to='+escape(email));
      });
   })
   .appendTo('body');

Da dieses möglich ist, ist es auch kein Problem, dass der Webseitenbetreiber alle E-Mail Adresse der eingeloggten GMail-Benutzer an seinen Server verschickt. Somit ist der Seitenbetreiber automatisch im Besitz ihrer E-Mail Adresse, wenn Sie seine Seite besuchen!

Bloggen auf WordPress.com.