Napad z ničelno predpono na SSL/TLS certifikate že "v divjini"

Matej Kovačič

7. okt 2009 ob 12:40:24

Konec julija je Moxie Marlinspike na konferenci BlackHat 09 in Defconu 17 predstavil nov napad na SSL in TLS certifikate. Gre za tim. napad z ničelno predpono (ang. null prefix attack), ki izkorišča ranljivosti pri obravnavi SSL in TLS certifikatov. Marlinspike je namreč odkril, da je mogoče registrirati certifikate v obliki www.banka.si\0zlonamernastran.si. CA (Certificate Authority) bo vse znake pred "\0" ignoriral in brez težav podpisal certifikat za zlonamernastran.si, saj bo lastnik zlonamerne strani svojo identiteto in lastništvo strani seveda brez težav dokazal.

Izkaže pa se, da pri uporabi takega certifikata brskalnik certifikat prepozna kot veljaven tudi, če je uporabljen na domeni www.banka.si. Tako ustvarjen zlonamerni certifikat je torej mogoče uporabiti pri prestrezanju s posrednikom (ang. man-in-the-middle napad). Napadalec, ki uspe prestreči komunikacije žrtve (za ta namen je bilo (za okolje Linux) razvito posebno orodje SSLsniff), le-tej sedaj podtakne lažen certifikat z ničelno predpono, ki ga pred tem registrira oz. podpiše pri zaupanja vrednem CA-ju. Brskalnik bo certifikat sprejel in ne bo izpisal obvestila o potencialnem napadu.

Ob predstavitvi na BlackHat konferenci so bile ranljive implementacije SSL/TLS v Mozillini knjižnici NSS (ta knjižnica je bila pravzaprav še najbolj "polomljena", saj je bilo na njej mogoče uporabiti en sam splošen ponarejen certifikat za vse domene (tim. wildcart certifikat) ter knjižnicah Microsoft CryptoAPI in GnuTLS. Posledično je bilo mogoče izvajati učinkovit MITM napad na Firefox, Internet Explorer, Chrome, Thunderbird, Outlook, Evolution, Pidgin, AIM, irssi ter številne druge programe, ki uporabljajo ranljive knjižnice.

Vendar pa je Mozilla Foundation napako v dobri odprtokodni maniri že v nekaj dneh odpravila, Microsoft pa popravka še ni uspel izdati.

Kljub resnosti je bil napad očitno precej "teoretičen". Vsaj do pred nekaj dnevi, ko je bil na poštnem seznamu "full disclosure" objavljen certifikat z ničelno predpono za paypal.com. Če vse skušaj seštejemo, se izkaže, da sedaj zlonamerni napadalci lahko izvajajo neopazne MITM napade na uporabnike, ki v okolju Windows uporabljajo brskalnike Microsoft Internet Explorer, Chrome ali Safari za obiskovanje spletišča PayPal.

Dodatno težavo predstavlja dejstvo, da je Moxie Marlinspike odkril tudi resno ranljivost v protokolu OCSP (Online Certificate Status Protocol), zaradi katere je ponarejene certifikate z ničelno predpono izredno težko preklicati.

Če se torej želite zaščititi pred tem, da bi vam spletni zlikovci ukradli podatke vašega PayPal računa je v okolju Windows zaenkrat edina razumna možnost uporaba spletnega brskalnika Firefox, po možnosti z dodatkom PetName Tool. Druga možnost je, da spletišča PayPal zaenkrat ne uporabljate oziroma ne uporabljate SSL/TLS zaščitenih komunikacij, saj imajo morda zlikovci podobne zlonamerne certifikate tudi za druge domene. Tretja možnost je, da počakate, da bo - ko bo - Microsoft izdal popravek za CryptoAPI.