16. Juni 2007

Reverse Engineering von Patches

Category: Hacking — Christian @ 01:58

Auf der DailyDave Mailingliste gefunden:

Nach der Veröffentlichung eines Patches dauert es in der Regel heute weniger als eine Woche bis die ersten Exploits und oft sogar direkt Viren oder Würmer verbreitet werden, die diese Sicherheitslücke ausnutzen. Wie ich das letzte mal geschaut habe, hat Symantec den Wert auf 6,9 Tage geschätzt (leider keine Quelle).

Wie einfach das geht haben die Jungs von Sabre Security gerade eben wieder vorgeführt. Der Flash-Film (Achtung, groß), zeigt die Analyse der MS07-031 Sicherheitslücke (SChannel Off-By-One Heap Corruption, gefunden von Thomas Lim von Coseinc) mittels BinDiff. Die Jungs um Halvar Flake sind gut, das ist nichts neues und wurde durch den Gewinn des deutschen IT-Sicherheitspreises eindrucksvoll bestätigt.

Der Flash-Film zeigt, wie die beiden Binaries automatisch deassembliert und verglichen werden. Unterschiedliche Code-Segmente werden gelb eingefärbt, komplett neue Code-Segmente erscheinen rot. So kann innerhalb kurzer Zeit analysiert werden, welche Veränderungen am Code vorgenommen wurden und oft lässt sich daraus bereits auf einen möglichen Exploit schließen.

Kuckt es Euch an …

15. Juni 2007

NATO will kritische IT-Infrastruktur sichern

Category: Hacking,Work — Christian @ 19:58

Nach einem Bericht auf SecurityFocus will die NATO sich zukünftig auch darum kümmern, kritische IT-Infrastruktur abzusichern.

Ich habe ja schon ein paar mal angemeckert, dass in Europa zu wenig passiert. Aber ob ausgerechnet die NATO dafür geeignet ist … ich habe meine Zweifel. Das erinnert mich ein wenig an das Überfliegen von Demonstranten mit Kampffliegern.

Advanced Social Engineering

Category: Hacking — Christian @ 14:23

Ich sterbe gleich vor lachen … das ist die schönste Form, Passwörter zu sammeln, die ich je gesehen habe … aber dazu gleich mehr.

Social Engineering ist bekanntlich die beste und erfolgreichste Hacking Technik die es gibt und jemals geben wird. Und wenn man so zu sensiblen Daten und Passwörtern kommt, umso besser. In der Theorie unterscheidet man drei verschiedene Begriffe:

  1. Computer-based Social Engineering: Das sind alle Betrugsversuche, die Computertechnik beinhalten. Angefangen von der E-Mail vom BKA mit dem wichtigen Attachment (die unser ach so kompetenter bayrischer Innenminister Beckstein beinahe angeklickt hätte, weil er dachte es handelt sich um eine dienstliche Mail. Seine Frau hat ihn davor bewahrt, die gäbe vermutlich auch einen kompetenteren Innenminister ab) über die gängigen Phishing-Webseiten bis hin zu allen möglichen Tricks im Internet.
  2. Human-based Social Engineering: Also alle Betrugsversuche, die keinen Computer benötigen. Angefangen von den Cold Call Techniken am Telefon zum Wechsel des Anbieters über die Tricks in die Disko zu kommen bis hin zum genialen Diamantendiebstahl neulich in Antwerpen.
  3. Reverse Social Engineering: Die beste Technik überhaupt. Da muss ich nicht etwa den Benutzer dazu bringen, mit etwas zu geben sondern der Benutzer kommt mit einem Problem bereits zu mir und benötigt eine Lösung.

Computer-based Social Engineering ist dabei in der Regel das einfachste, man erstellt eine clever gestaltete E-Mail oder Webseite und schon ist man dabei.

So wie diese hier von Mark Burnett auf xato.net. Die Idee ist so trivial wie einfach: Ein Eingabefeld und dazu der Text:

    Online Password Checker – How Common is Your Password? Just enter your password in the text box and click on the […] button.

Köstlich. Den muss ich gleich mal ausprobieren. Am besten mit unserem Root-Passwort. Da wollte ich schon lange mal wissen, wie gut das ist. Und kluger Weise schreibt er dann auch sofort dazu: „no this isn’t a way to collect your passwords“. Ich bin echt beeindruckt.

Gut, bei Mark ist das vermutlich kein Phishing-Versuch, die Suche geht wirklich zu Google. Ok, Google speichert das Passwort dann die nächsten 24 Monate. Aber die Datenkrake weiß ja sowieso schon alles, oder?

14. Juni 2007

Es gibt keine sicheren Dateiformate mehr

Category: Allgemein,Hacking — Christian @ 01:19

Heute auf Heise.de: OpenOffice führt Code aus rtf-Dokumenten aus

Manchmal könnte ich schon depressiv werden. PDFs sind seit geraumer Zeit nicht mehr sicher, z.B. das integrierte Javascript und XSS und das Catalog Dictionary. JPGs waren schon mal dran, wir erinnern uns an JPEG-of-Death. HTML bietet immer das Problem integrierten Javascripts und Browser sind sowieso ein ganz eigenes Problem. Microsoft Formate wie DOC, XLS, PPT waren ja noch nie sicher und jetzt kann man nicht einmal mehr gefahrlos RTF austauschen.

Was haben wir als nächstes zu erwarten? Buffer Overflows in notepad.exe beim Öffnen von ASCII-Dateien?

Apple und die Security Safari

Category: Hacking,Produkte — Christian @ 01:06

Hach ja, das muss man sich auf der Zunge zergehen lassen:

Apple hat Safari, den tollen MacOS X Browser, jetzt auch für Windows veröffentlicht. Und die Backen sehr voll genommen: „Apple engineers designed Safari to be secure from day one“.

Nunja …

… innerhalb von zwei Stunden war der erste Remote Code Execution Exploit veröffentlicht. Und Thor Larholm ist nicht irgendwer, der hat auch schon einen Haufen Löcher im Internet Explorer gefunden.

jedenfalls, zur Zeit enthält die Liste:

  1. Thor Larholm: URL Protocol Handler Command Injection Vulnerability (für unerlaubte Programmausführung)
  2. David Manor: zwei Remote Code Execution Bugs (einer davon funktioniert auch auf MacOS X) und vier Denial of Service Bugs, alle durch Fuzzer gefunden
  3. Aviv Raff: ein weiterer potentiell ausnutzbarer Memory Corruption Bug

Für „Apple engineers designed Safari to be secure from day one“ ist das ein gutes Ergebnis. Erinnert mich irgendwie an „Unbreakable Oracle“ 🙂

11. Juni 2007

Merkel hacked

Category: Hacking,Offtopic — Christian @ 22:19

Die Webseite von Bundeskanzlerin Frau Merkel wurde gehackt. Soviel zur IT-Kompetenz der Bundesregierung.

Wahrscheinlich war’s der Schäuble mit dem Bundestrojaner.

Wenigstens bin ich dabei auf folgende Satire gestoßen: „Kann es Politik ohne Lüge geben?
Meine Überzeugung ist: NEIN !“ 🙂

Das ist nicht so gut wie whitehouse.org aber immerhin.

10. Juni 2007

Top 10 Virenliste

Category: Hacking — Christian @ 17:05

Kaspersky gehört jetzt nicht gerade zu meinen bevorzugten Virenscannern, ich könnte aber noch nicht einmal genau sagen, warum. Ich bin halt mit F-Secure schon sehr zufrieden und F-Secure funktioniert schön effizient und ressourcenschonend auch auf unseren Terminalservern.

Trotzdem darf man ja mal über den Tellerrand hinausblicken und weil wir gerade beim Thema sind, Kaspersky hat auch ein Blog und kürt jeden Monat die Top 10 der Schadprogramme nach folgenden Kategorien:

  • Greediest Trojan targeting banks
  • Greediest Trojan targeting payment cards
  • Greediest Trojan targeting e-payment systems
  • Stealthiest malicious program
  • Smallest malicious program
  • Biggest malicious program
  • Most malicious program
  • Most common malicious program in email traffic
  • Most common Trojan family
  • Most common virus\worm family

Das klingt doch mal nach einer Herausforderung, oder? Aber Achtung, die Hürden sind hoch. Im April verwendete das versteckteste Programm 11 verschiedene EXE-Packer und das größte Schadprogramm umfasste 220 MB. 220 MB? Lässig 🙂

Viren in ein Windows-System einklinken

Category: Hacking — Christian @ 16:22

Ich habe mich ja schon ein paar mal gefragt, wo kann man Schadcode am besten in einem Windows System unterbringen, damit er beim Booten automatisch gestartet wird aber nicht zu sehr auffällt.

F-Secure hat uns jetzt freundlicherweise die Arbeit abgenommen und eine Liste der wichtigsten 10 Startpunkte für Schadprogramme zusammengestellt. Die Liste ist an sich wenig überraschend, an erster Stelle steht der berüchtigte „Run“-Schlüssel unter HKLM\Software\Microsoft\Windows\CurrentVersion. Aber die Idee mit dem SharedTaskSheduler oder Winlogon ist auch nicht schlecht.

Ich muss mal ein paar Erweiterungen für meine Schadprogramme schreiben 🙂

8. Juni 2007

Sicherheitslücke in WordPress 2.2 und mehr

Category: Allgemein,Hacking — Christian @ 22:06

Huch, in WordPress 2.2 ist eine Sicherheitslücke bekannt geworden. SQL-Injection. Und einen Exploit gibt es auch schon! OMG, ich habe doch hier auch WP 2.2 im Einsatz … ach naja, betrifft ja nur angemeldete Benutzer und so viele gibt es hier gar nicht. Also egal. Das Update habe ich trotzdem kurz eingespielt.

Sicherheitslücken bei PHP-Programmen lohnt es sich eigentlich gar nicht zu kommentieren. Da gibt es jeden Tag nicht nur eine Sau, die durch das virtuelle Dorf getrieben wird. Securityfocus dokumentiert das ja ganz schön. Interessant finde ich eigentlich was ganz anderes, was typisch ist für viele Sicherheitslücken.

Die Lücke ist schon vor über einer Woche von den WordPress-Entwicklern entdeckt und behoben worden, der Patch ist auch im Trac dokumentiert. Nur haben die Entwickler nicht erkannt, dass es sich hier um eine Lücke handelt, mit der ein Angreifer die Datenbank manipulieren kann. Das sah wie ein ganz einfacher Programmierfehler aus und wird folglich behoben. Irgendjemand (in diesem Fall mit dem Pseudonym Slappter) mit einem Blick für solche Fehler hat vermutlich das Update im Trac gesehen, erkannt, dass die Lücke angreifbar ist und einen Exploit programmiert. Und da die Entwickler die Lücke für irrelevant gehalten haben, wurde niemand benachrichtigt.

Dieses Problem tritt öfter auf, vor einiger Zeit gab es einen spektakulären Fall im Linux-Kernel, potentiell sind aber natürlich alle Open Source Programme davon betroffen. Microsoft nutzt solche Argumente deshalb gerne, um für ihren angeblich so „responsible disclosure“ Prozess zu werben. Leider ist das reine Augenwischerei, wie die Advisories von eEye (eine Lücke in Microsoft Windows ist seit 227 Tagen ohne Patch, aber solange kein Exploit frei verfügbar ist, interessiert das den Hersteller offensichtlich einen Dreck) oder die Geschichte von HD Moore (im Patch für Microsoft RRAS ist nicht nur der angegebene Fehler sondern stillschweigend ein viel kritischerer Fehler behoben worden, über den der Hersteller im Advisory leider gar nichts gesagt hat, weshalb viele Firmen den Patch erst sehr spät einspielten) beweisen.

Womit wir wieder beim Thema wären. Auch wenn in diesem Fall theoretisch sogar mein eigenes Blog gefährdet gewesen ist, gefällt mir die offene Veröffentlichungspraxis von WordPress, Linux, Metasploit, Milw0rm und Co. besser als die unverantwortliche Geheimhaltungspraxis von Microsoft. Oder noch schlimmer von HP, die Sicherheitsforscher sogar verklagen wollten.

Vulnerability Scanner und Assessment Tools

Category: Hacking,Produkte — Christian @ 14:19

Eine kurze Übersicht der gängigen Vulnerability Scanner (alphabetische Reihenfolge, keine Wertung):

  • ATK von Marc Ruef – Einziger verbliebener Open Source Scanner
  • Internet Scanner von IBM/ISS – Internet Scans
  • IP360 von nCircle – LAN Scans / PCI Compliance
  • LANguard NSS von GFI – LAN Scans / Patchmanagement
  • Nessus von Tenable Security – Internet/LAN Scans
  • QualysGuard von Qualys – Internet/LAN Scans, PCI Compliance
  • Retina von eEye – Internet Scans

Wen hab ich in dieser Aufstellung vergessen?