Praktischer Angriff auf MD5 in SSL-Zertifikaten

Auf dem 25. Chaos Com­mu­ni­ca­ti­on Con­gress stell­te der Vor­trag "MD5 con­side­red harm­ful today" (zu­nächst unter dem kryp­ti­schen Titel "Ma­king the theo­re­ti­cal pos­si­ble" an­ge­kün­digt) einen er­folg­rei­chen An­griff auf MD5-Has­hes in SSL-Zer­ti­fi­ka­ten vor (auf der Seite der Au­to­ren gibt es ein aus­führ­li­ches Vor­trags­skript, ein Vi­deo­mit­schnitt ist via Bit­tor­rent ver­füg­bar). Die Grup­pe ma­ni­pu­lier­te ein selbst er­stell­tes (und on einer Root-CA si­gnier­tes) Web­sei­ten-Zer­ti­fi­kat so, daß es als "in­ter­me­dia­te CA" ver­wend­bar war; die Kor­rekt­heit der Si­gna­tur der Root-CA be­hiel­ten sie mit Hilfe einer "Cho­sen Pre­fix At­tack" auf den MD5-Hash der Zer­ti­fi­kats­da­ten bei. Mit Hilfe die­ses Zer­ti­fi­kats war es mög­lich, be­lie­bi­ge (und von Brow­sern als gül­tig und ver­trau­ens­wür­dig ak­zep­tier­te) We­bei­ten-Zer­ti­fi­ka­te selbst zu er­stel­len.
Die CAs haben in­zwi­schen re­agiert, auch gibt es ein Fi­re­fox-Plu­gin, das vor sol­chen an­fäl­li­gen Zer­ti­fi­kats­ket­ten warnt.

MD5 gilt be­reits seit län­ge­rem als ge­bro­chen und soll­te des­halb nicht mehr ver­wen­det wer­den. Trotz­dem kam bei ei­ni­gen Root-CAs nach wie vor MD5 im Er­stel­lungs­pro­zeß der Si­gna­tur zum Ein­satz (die ent­spre­chen­den CAs haben in­zwi­schen Bes­se­rung ge­lobt).

Eine "In­ter­me­dia­te CA" ist eine CA, die noch nicht im Brow­ser als ver­trau­ens­wür­di­ge Root-CA in­te­griert ist, aber von einer sol­chen zer­ti­fi­ziert wurde - das heißt, sie wurde von die­ser si­gniert und mit dem Ver­merk ver­se­hen, daß die­ser Schlüs­sel dazu ver­wen­det wer­den darf, wie­der­um wei­te­re Zer­ti­fi­ka­te zu be­lau­bi­gen. Ein An­grei­fer kann sich so bei­spiels­wei­se ein Zer­ti­fi­kat für eine On­line­bank er­stel­len, eine der (be­rühmt-be­rüch­tig­ten) ge­spoof­ten On­line­bank-Sei­ten er­stel­len, auf die er seine Opfer mit ge­eig­ne­ten Tricks (DNS-Spoo­fing, Ma­ni­pu­la­ti­on der Hosts-Da­tei oder gar einem ei­ge­nen DNS-Ser­ver, den er sei­nen Op­fern mit­tels eines tro­ja­ni­schen Pferds, wel­ches als DHCP-Ser­ver agiert, un­ter­schiebt) lockt... und im Ge­gen­satz zu frü­her er­scheint nun keine War­nung des Brow­sers, daß mit dem SSL-Zer­ti­fi­kat der Web­sei­te etwas nicht in Ord­nung ist.

Bruce Schnei­er ar­gu­men­tiert, daß dies keine ernst­haf­te Ver­schlim­me­rung der Si­tua­ti­on sei, da die meis­ten Leute mit sol­chen War­nun­gen oh­ne­hin nichts an­fan­gen könn­ten und sie des­halb igno­rie­ren wür­den. Ich finde, daß das die Si­tua­ti­on ver­harm­lost; es gibt doch viele Leute (wie mich ;-), die sol­che War­nun­gen ernst­neh­men - und die Warn­mel­dung von Fi­re­fox 3 ist so pe­ne­trant, daß man sie nicht ein­fach we­gi­gno­rie­ren kann.

Die Fi­re­fox-Ex­ten­si­on SSL Black­list wurde von den Au­to­ren prompt er­wei­tert: Ur­sprüng­lich dien­te sie dazu, vor Zer­ti­fi­ka­ten zu war­nen, die mit der von De­bi­an ver­kack­ten OpenS­SL-Ver­si­on er­stellt wur­den. Nun warnt das Plu­gin auch vor Web­site-Zer­ti­fi­ka­ten, in deren Zer­ti­fi­kat­ket­te MD5-Si­gna­tu­ren zum Ein­satz kom­men. Die In­stal­la­ti­on des Plug­ins würde ich durch­aus emp­feh­len (Leute, die mit der Ma­te­rie nicht ver­traut sind, muß man na­tür­lich brie­fen, was die Warn­mel­dun­gen be­deu­ten).