Suchen

Archiv des Jahres 2006

Das neunte Türchen – freie Musik english

m.schmidt 9. December, 2006

Es ist Wochenende, Freizeit, Zeit für was anderes als IT und Securitry Material. Deshalb möchte ich heute die Gelegenheit nutzen, um auf Jamendo hinzuweisen. Den Hinweis auf diese Seite gab kawazu vor geraumer Zeit, und seitdem bin ich Anhänger und regelmäßiger Besucher dieses Portals.
Auf Jamendo gibt es freie Musik, soll heißen das selbige nicht nur kostenlos ist, sondern darüber hinaus unter der Creative Commons Licence, oder ähnlichen Lizenzen angeboten wird, das heißt jeder darf sich diese Musik beschaffen, verändern, und weitergeben. Eine feine Sache, zumal sich unter den angebotenen Werk einige echte Perlen verstecken.

Das achte Türchen - RFID Firewall english

m.schmidt 8. December, 2006

Viel wurde, landauf landab, schon über RFID Diskutiert, ist es Segen oder Fluch, wie Sicher ist das ganze, was passiert mit unserer Privatsphäre u.s.w. Sicher, der Komfort ist nicht von der Hand zu weisen. Ich kann mich in Gebäuden frei bewegen, Türen die ich passieren darf öffnen sich magisch, ich muss nicht mehr an der Kasse anstehen, und meine Mikrowelle weiß wie das Fertiggericht zuzubereiten ist. Ebenso vielfältig sind die Nachteile. Sollten Geldscheine mit RFID ausgestattet werden, weiß jeder Mensch mit zweifelhafter Gesinnung, ob ich ein lohnendes Opfer bin, mein Tagesablauf, wann ich mich wo aufhalte, ist auch sauber Nachvollziehbar, ebenso wie mein sozialer Status (RFID in Kleidung, auf Kreditkarten u.s.w.) Und schließlich merkt auch der Müllmann sofort, ob die Verpackung des bequemen Fertiggerichtes in der richtigen Tonne gelandet ist.
Nun, jedoch ist keiner dieser Technik schutzlos ausgeliefert. Seien es kleine Faradaysche Käfige, in welche die Chips gesperrt werden, oder deren komplette Zerstörung, doch diese Verfahren ist zweifelhaft, da umständlich und teilweise irreversibel.
Einer der heftigsten, aber auch angesehensten Kritiker dieser Technik ist Andres S. Tanenbaum, und von ihm kommt ein sehr interessanter Ansatz. Der RFID Guardian würde ursprünglich entwickelt, um den Träger von RFID Chips zu informieren, wenn dessen Informationen ausgelesen werden sollen. Inzwischen entwickelt sich der Guardian zu einer Art ‘personal Firewall’ (nie war diese Bezeichnung passender) für RFID, welche dem Benutzer Kontrolle darüber gibt, wer wann welche Informationen erhalten darf.

Ich finde diesen Ansatz durchaus bemerkenswert, schafft er es doch vielleicht den Komfort von RFID zu erhalten, und die Gefahren/Missbrauchsmöglichkeiten einzudämmen. Für weitere Informationen sei die Homepage des Projektes empfohlen.

Heute geht’s um die Gruppenrichtlinien von Vista. Da ich leider noch auf meinen Key warte, habe ich mich schonmal etwas nach Material umgeschaut, und hier etwas recht hilfreiches gefunden. Man beachte auch den zweiten Teil.

Das sechste Türchen – RedHat absichern english

m.schmidt 6. December, 2006

Heute mal wieder ein sehr nützlicher Beitrag zum Thema Server Hardening. Da ich mich hin und wieder mit RedHat auseinander zusetzen habe (muss), bin ich auf diesen Artikel von Werner Puschitz aufmerksam geworden. Eine sehr nützliche Liste, mit einigen geschickten Tricks, die ich so bisher noch nicht kannte. Zum Beispiel scp ermöglichen, ohne Logins zu gewähren.

Das fünfte Türchen – nette ebook Sammlung english

m.schmidt 5. December, 2006

Aus Zeitgründen heute nur ein kurzer Beitrag, welcher den Ein oder Anderen aber trotzdem länger beschäftigen könnte. Bei FreeTechBooks gibt’s eine ganze Menge Lesestoff, doch auch hier offenbart sich das dauerhafte, leidige Problem: Zu viel zu lesen, zu wenig Zeit.

Update zu md5 english

m.schmidt 5. December, 2006

Update zum gestrigen Artikel

Nach einer Rechenzeit von 11 Stunden (naja, nur 900 Mhz) sind auch meine eigenen Binarys erzeugt. Gleiche Größe, gleiche md5 Summe, unterschiedliches verhalten. Während die good einen Vers in Englisch ausgibt, spricht evil in der dunklen Sprache von Mordor.

Viertes Türchen - die Sicherheit von md5 english

m.schmidt 4. December, 2006

Am Wochenende habe ich endlich mal Zeit gefunden, mich näher mit md5 zu beschäftigen, genauer gesagt mit den Angriffen auf diesen Algorithmus. Einer dieser Angriffe von Xiaoyun Wang beschäftigt sich mit der Berechenbarkeit von Kollisionen. Demnach benötigt man zwei Initiale Vektoren mit gleichem md5 Hash, an welche dann beliebige Daten angehängt werden können, die Hashwerte jedoch gleich bleiben. (dies ist ein inhärentes Problem Blockbasierender (Hash)verfahren: hat man einmal zwei Blöcke mit gleichem Hash, ensteht durch Konkatenation beliebiger Daten an diese Blöcke wieder ein gleicher Hash) Mathematisch ausgedrückt:

if md5(x)==md5(y) then md5(x+z)=md5(y+z)

Die initialen Vektoren unterscheiden sich in Wangs Beispiel nur um 6 Bit, hängt man jedoch mehrere solcher Blöcke aneinander, lassen sich mehrere Bytes an frei belegbaren Nutzdaten gewinnen. Eine genauere, mathematische Beschreibung würde den Rahmen dieses Artikels sprengen, deshalb sei neben dem eingangs genannten Paper noch auf die Quelle von Peter Selinger verwiesen, in welcher die Funktionsweise der Kollisionsermittlung näher erläutert wird. Hier soll ein kleines Beispiel verdeutlichen, was sich mit zwei initialen Vektoren anstellen lässt. Die beiden Dateien vec1 und vec2 besitzen den gleichen md5 Hash, sind jedoch verschieden, wie der sha1 Hash zeigt.

ftp:/md5coll# md5sum vec*; sha1sum vec*
da5c61e1edc0f18337e46418e48c1290 vec1
da5c61e1edc0f18337e46418e48c1290 vec2
8f42c29f6ac45423d2a7dd614d666a26e39f29ee vec1
dfce366c23c88044ad57a5eaa7d5420024a7fd14 vec2

Selbst das Anhängen eines zufälligen 32K Blocks ändert nichts an diesem Zustand.

ftp:/md5coll# dd if=/dev/urandom of=foo bs=32460 count=1
1+0 Datensätze ein
1+0 Datensätze aus
32460 Bytes (32 kB) kopiert, 0,044771 Sekunden, 725 kB/s
ftp:/md5coll# cat foo >> vec1
ftp:/md5coll# cat foo >> vec2
ftp:/md5coll# md5sum vec*; sha1sum vec*
64dbc8e1f2cc1855f09f37528181484b vec1
64dbc8e1f2cc1855f09f37528181484b vec2
b73dde6a98b46c53fd32fb709330dad835a9d116 vec1
e60795346ab6041ff1a315e8ca745c854ffe6ae2 vec2

Obwohl der Angriff noch nicht vollständig veröffentlicht ist (es gibt nur initiale Vektoren, theoretisch wäre es aber denkbar, Doppelgängerblöcke auch in der Mitte von zu hashenden Daten zu haben) lassen sich damit schon eine nette Anzahl Spielereien betreiben.

Zum Beispiel ein Binary, welches auf seinem Weg durch Filesharingbörsen Informationen sammelt. Kazaa hasht Dateien nicht komplett, sondern tut dies jeweils mit 32K großen Blöcken. Es ist also möglich, alle 32K ein Bit für die eigenen Zwecke zu nutzen. Bei einem 60MB großen Binary sind das demnach 1920 Bit Payload, ohne das sich der Hash ändert (würde er dies tun, so würde das Binary x-mal in den Filesharingbörsen auftauchen, was ziemlich auffällig ist). Nun braucht das Binary nicht mehr „nach Hause telefonieren“, man kann es sich von Zeit zu Zeit aus den Filesharingbörsen ziehen und den Payload auswerten. (zu sammelnde Daten wären etwa MAC Adressen, Rechnernamen, email Daten u.s.w.)

Auch Security Audit Tools, welche die md5 Summen von Dateien auf der Platte überwachen, bekommen davon nichts mit. Peter Selinger hält auf seiner Seite ein nettes Tool bereit, mit dem sich Paare von ausführbaren Dateien erzeugen lassen, welche den gleichen md5 Hash besitzen, sich aber unterschiedlich verhalten.

Da mein PC noch an einem eigenen Beispiel rechnet verwende ich die vorbereiteten Dateien.

mschmidt@ftp:~$ md5sum erase; md5sum hello; sha1sum erase; sha1sum hello
da5c61e1edc0f18337e46418e48c1290 erase
da5c61e1edc0f18337e46418e48c1290 hello
dfce366c23c88044ad57a5eaa7d5420024a7fd14 erase
8f42c29f6ac45423d2a7dd614d666a26e39f29ee hello
mschmidt@ftp:~$ ./erase This program is evil!!!
Erasing hard drive…1Gb…2Gb… just kidding! Nothing was erased.
(press enter to quit)
mschmidt@ftp:~$ ./hello
Hello, world! (press enter to quit)

Irgendwie beängstigend, das

if md5(binA)==md5(binB)thenbehaviour(binA)==behaviour(binB)

nicht mehr wirklich gillt.

Nun, ist md5 damit am Ende? Sicher nicht, denn die Einsatzszenarien der (bisher veröffentlichten) Angriffe sind doch noch sehr begrenzt. (Der genaue Algorithus zur Kollisionsfindung, und dessen Möglichkeiten, sind noch nicht vollständig bekannt) Es sollte jedoch klar sein, das zumindest der Anfang des Endes von md5 begonnen hat, und ein Umstieg auf Alternativen (sha1) nicht früh genug erfolgen kann.

Wer tiefer gehendes Interesse an der Materie hat, dem sei darüber hinaus dieses Buch ans Herz gelegt, besonders die Kapitel 3 und 11 zeigen die Möglichkeiten und Gefahren der md5 Kollision

Update 

Wer nicht ständig mit Algorithmen zu tun hat, der ist von der Fülle der Begrifflichkeiten schnell erschlagen. Während Quicksort, Bubblesort oder Rekursion quasi zum Standardvokabular gehören, sieht das mit der Cocktailshaker Sortierung oder dem ‘postman sort’ schon anders aus. Das NIST bietet ein wirklich umfangreiches Wörterbuch, welches nahezu jeden (englischen) Begriff aus der Welt der Algorithmen und Datenstrukturen abdecken dürfte.

Das zweite Türchen – Apache absichern english

m.schmidt 2. December, 2006

Heute geht es um den beliebtesten Webserver. Wie Server abgesichert werden sollte prinzipiell klar sein. Zugriffsberechtigungen beachten, nicht benötigte Module/Dienste deaktivieren, aktuelle Versionen verwenden u.s.w.

Pete Freitag hat all dies, auf den Apache konkretisiert, in einer übersichtlichen Liste zusammengetragen, welche für mich eine liebgewordene Checkliste darstellt, besonders wenn mal “schnell” ein Server gestrickt werden soll, oder eine fremde Installation zu prüfen ist.
Wer sich näher mit dem Thema auseinander zusetzen gedenkt, dem sei dieses Buch von O’Reilly wärmstes empfohlen.

Das erste Türchen english

m.schmidt 1. December, 2006

Weihnachten steht vor der Tür, und traditionsgemäß ist das auch die Zeit der Adventskalender. Dieser Tradition möchte ich mich anschließen, und täglich für meine Leser ein Türchen öffnen (ich hoffe ich schaffe das).
Da Schokolade ungesund und nicht praktikabel via IP zu übertragen ist, gibt’s digitale Kleinigkeiten. Ich werde versuchen bis zum Heilig Abend jeden Tag ein kleines Tool, einen Link oder etwas anderes, hoffentlich nützliches, interessantes oder kurzweiliges zu präsentieren.

Den Anfang macht eine sehr nützliche Sammlung von Kurzreferenzen. Und kurz heißt auch kurz, das meiste passt auf eine beidseitig bedruckbare A4 Seite. Mag das bei UML sehr eigenartig anmuten, so ist beispielsweise über die Bedienung des vi nicht mehr zu sagen. Ich hoffe das sich diese Sammlung für den ein oder anderen als nützlich erweist.