9/3/2010
Przez kilka ostatnich dni w miejscach poświęconych bezpieczeństwu huczało głównie na tematy związane z OpenSSL-em i łamaniem kluczy RSA. Ekipa Niebezpiecznika podchodzi do tych “rewelacji” z dużym dystansem, oto dlaczego:
O co kaman?
Mądre głowy z Uniwersytetu w Michigan wykombinowały sposób na domyślenie się fragmentów klucza prywatnego. Metoda polega na celowym zaburzaniu źródła prądu w trakcie operacji szyfrowania. Kontrolowane spadki napięć powodują zaburzenia przy wyliczaniu sygnatur RSA, które stara się łagodzić “podatny na atak” algorytm FWE. Jesteście jeszcze z nami? ;-) Krótko mówiąc, wywołanie błędu na jednym bicie podczas operacji mnożenia daje możliwość poznania 4 bitów klucza prywatnego. Po szczegóły odsyłam do PDF-a.
Spójrzmy na atak realnie
Zawsze twierdziłem, że strach przed (nie)bezpieczeństwem nie może zagłuszać zdrowego rozsądku… Nie ulega wątpliwości, że bład w znanej, szanowanej a przede wszystkim powszechnie stosowanej bibliotece kryptograficznej OpenSSL jest znaczący — nie zrozumcie mnie źle, doceniam zarówno pomysłowość atakujących jak i konsekwencje samego ataku. Jednakże, atak ten, mimo iż piękny, w praktyce jest jak na razie cholernie ciężki do zastosowania. Sytuacja jest podobna do niezmiernie błyskotliwego i równie trudnego do odtworzenia ataku na TPM.
Zauważcie, że do ataku na OpenSSL potrzeba:
- dostępu do źródła prądu, z którego korzysta atakowana maszyna.
Powodzenia przy atakach na serwery, moi kochani remote-hakerzy bez 0day’ów w SCADA :> - zebrania dużej ilości błednych danych.
Chłopaki pracowali na próbce 8,800 błędów (czyt. wywołali niesamowitą wręcz liczbę spadków napięć) - dużej mocy obliczeniowej.
Aby odtworzyć 1024-bitowy klucz, z podaną powyżej próbką danych musi zabawiać się przez 104 godzin aż 81 maszyn z procesorami Pentum 4 2.4GHz. Zarezerwowaliście już swój slot na klastrze w NSA? Czy może wolicie zainwestować w PlayStation 3? ;-)
No to dla kogo ten atak?
Wygląda więc na to, że atak znajdzie zastosowania głównie w społeczności “piratów“, arrrrr!!! Vivat wyciąganie kluczy z urządzeń z wbudowanym DRM-em, które posiadamy na własność (czyt. playery DVD, MP3, etc.) …ale tylko z tych starszych modeli, bo admirałowie wrogiego statku OpenSSL już płyną z poprawką po horyzoncie.
Zgadzam się, nie ma to jak atak polegający prawie że na własnoręcznie wygenerowanym kluczu – jak inaczej nazwać zabawy w skoki napięć, nie mówiąc że to bardzo mało możliwe w profesjonalnych serwerowniach…
“Starszych modeli” a modele z poprawką pewnie wejdą na rynek najwcześniej za rok, więc całkiem sporo rzeczy do atakowania… Tyle że wykradzenie filmu to o wiele mniejszy zysk niż “rozszyfrowanie” firmowego kompa.
Ale… w przypadku zaszyfrowanego lapka nawet gdy się ma dostęp do sieci zasilającej to niewiele można zdziałać, bateria działa jako bufor/UPS;]. Już nie mówiąc o tym że z ataku wynika że trzeba się bezpośrednio podpiąć pod zasilanie procka (strzelanie impulsami napięcia w płytę główną prędzej doprowadzi do zwiechy niż jakichś sensownych wyników)
Akurat co do mocy obliczeniowej bym sie nie martwił, wystarczy wykupić parę instancji EC2 ;]
Czyli ciekawa zabawa ale raczej jako “sztuka dla sztuki”. Fajnie to zrobić żeby pokazać że się da i dla czystej radości poznawania. Zaiste bardzo hackerska filozofia :)
Taniej i szybciej jest wziąć łom i wybrać się po serwer docelowy – choćby był po drugiej stronie globu.
Co do łamania DRM – też nie jest tak pięknie jakby mogło się wydawać. Podany sposób działa tylko na RSA. A teraz coraz częściej widujemy AES’a. Z resztą podobny trick wykorzystujący niektóre z błędnych implementacji sprzętowych AES’a jest znany od kilku lat.
W praktyce nie otwiera nam to wielu możliwości. Chce ktoś kawy? :)
Co to są 104h?
Pozatym P4 jest naprawdę marne, gdyby to łamać na C2D/C2Q, albo jeszcze lepiej i7, to można by było osiągnąć spokojnie 3-4 razy wyższą wydajność. Wystarczyłoby więc powiedzmy 20 takich komputerów przy zachowaniu czasu łamania. Ale przecież nawet mając tylko 2 takie (a więc 10x wolniejsze łamanie) – 10 x 104h – co daje ~43 dni… Nie ma więc tragedii, a nakład finansowy niewielki :)
Jest jeszcze PS3… nakład może i duży… ale ile radochy przy okazji.
Ja chce kawę!
Smuci mnie to podejście do mocy obliczeniowej…
81 razy P4 na 104h? Weźmy sobie 10 maszyn z Xeonami X5650(12 core-ów) – pewnie poradzą sobie w krótszym czasie. Takie zadania obliczeniowe to standard w PL. Natomiast w zagranicznych naukowych centrach obliczeniowych które świadczą usługi dla całej europy w ramach różnych projektów czasem można dowiedzieć się że jak bierzesz mniej niż 256 rdzeni to dostajesz mniejszy priorytet bo tak małymi zadaniami to oni się nie zajmują.
Jeśli w jakiś sposób jest się powiązanym z projektami naukowymi to dostęp do na prawdę potężnej mocy jest na wyciągnięcie ręki. Żeby nie być gołosłownym:
– http://kdm.wcss.pl/wiki/Jak_zosta%C4%87_u%C5%BCytkownikiem_KDM
– http://www.plgrid.pl/oferta