Stały klucz - stałe kłopoty

Obecnie większość urządzeń korzysta z administracyjnego interfejsu webowego, który zabezpieczany jest za pomocą SSL. Jeśli producent wpisze klucze szyfrujące na stałe w firmware, urządzenie będzie miało poważną lukę w bezpieczeństwie.

Stały klucz - stałe kłopoty

Przeglądanie bazy LittleBlackBox

Ochrona webowego interfejsu administracyjnego za pomocą SSL stała się dzisiaj standardem, umożliwiając bezpieczne zarządzanie urządzeniem przy transmisji danych przez niezaufaną sieć. Niektóre urządzenia, takie jak bramy SSL VPN, koncentrują o wiele więcej funkcji wokół szyfrowania SSL. Chociaż rozwiązanie to nie jest doskonałe, jest dzisiaj standardem w dziedzinie szyfrowania sesji webowych.

Problem z bezpieczeństwem SSL w urządzeniach wbudowanych może być spowodowany błędami implementacji algorytmów, lukami w aplikacjach po stronie serwera, a nawet zaszyciem kluczy prywatnych na stałe w firmware urządzenia. Jest to bardzo poważny błąd, gdyż umożliwi on przejęcie informacji przesyłanych w chronionej sesji SSL. Do niedawna pozyskanie kluczy prywatnych było problemem, gdyż intruz musiał stwierdzić dokładną wersję firmware danego urządzenia, pobrać obraz i wyciągnąć z niego klucze. Samo stwierdzenie wersji firmware bywa kłopotliwe, gdyż nie zawsze można to stwierdzić na podstawie skanowania z sieci z zewnątrz lub za pomocą analizy informacji wysyłanej przez urządzenie (na przykład przy ekranie logowania). Dobrym przykładem jest DD-WRT, gdzie występuje wiele wersji dla różnych routerów oraz wydania różniące się funkcjonalnością (micro, standard, VPN). Nawet jeśli wiadomo, że atakowane urządzenie posługuje się DD-WRT, trudno znaleźć właściwą wersję firmware'u. Zadanie jest jeszcze trudniejsze w przypadku niektórych dostawców, których firmware nie podlega standaryzacji między poszczególnymi wydaniami i wersjami.

Mała czarna skrzynka znajdzie klucze

Projekt o nazwie LittleBlackBox wypełnia właśnie tę lukę, umożliwiając intruzowi szybkie odnalezienie opublikowanych i wprowadzonych do bazy kluczy SSL. Niewielka aplikacja skompilowana statycznie ma własną bazę w formacie SQLite, zawierającą opublikowane domyślne klucze prywatne i odpowiadające im klucze publiczne. Właściwe klucze można znaleźć na podstawie kwerendy z nazwą producenta i modelu lub wersji fimware. Aby wyszukiwanie było jeszcze łatwiejsze, aplikacja potrafi analizować plik zawierający zapis pakietów związanych z sesją SSL (pozyskaną za pomocą narzędzi, takich jak tcpdump, Ethereal czy Wireshark), a nawet pozyskać te informacje w bezpośrednim połączeniu z atakowanym urządzeniem. W bazie znajduje się obecnie ponad 2000 kluczy SSL, w większości wykorzystywanych w routerach i bramach VPN. Chociaż większość z nich należy do różnych wersji firmware DD-WRT, można spotkać także klucze z urządzeń firm: Cisco, D-Link, Linksys i Netgear.

Zmień klucz!

Dobra praktyka administratorów zaleca zmianę kluczy prywatnych SSL serwera co pewien czas. Gdy z urządzenia korzysta ograniczona liczba użytkowników, nawet zmiana samodzielnie podpisanego certyfikatu nie stanowi problemu. Najważniejszym z zaleceń jest jednak dokonanie tych zmian zaraz po zakupie urządzenia. Jeśli router ma opcję utworzenia nowych kluczy SSL, należy to wykonać jeszcze przed oddaniem urządzenia do eksploatacji.

Podobnie przy testach penetracyjnych należy koniecznie sprawdzać obecność domyślnych kluczy prywatnych, gdyż pozostawienie takich domyślnych ustawień jest poważną luką w bezpieczeństwie systemu i stosunkowo prosto ją wykorzystać.

Apple Mac OS X też miał taki problem

Firmie Apple również zdarzyło się dostarczyć stały klucz prywatny SSL w jednym ze swych produktów - Mac OS X Server. Do bezpiecznej komunikacji z narzędziami do zdalnego zarządzania demon servermgrd domyślnie wykorzystywał podpisany samodzielnie certyfikat SSL. Mniej więcej pięć wersji wstecz certyfikat ten był identyczny we wszystkich sprawdzanych instalacjach, gdyż pochodził z pakietu instalacyjnego serwera. Dzięki temu każdy zainteresowany mógł skorzystać z pakietu sslsniff, któremu wystarczało dostarczyć własną kopię instalowanego klucza prywatnego. Ostatecznie wymuszono wygenerowanie nowych kluczy.

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200