
Do redakcji Dziennika Internautów trafiło zgłoszenie dotyczące
eksperymentu, który umożliwił manipulowanie kontami użytkowników
zarejestrowanych w serwisie społecznościowym Nasza-klasa.pl. Czytelnik
podpisujący się jako Silent Traveller 007 przedstawił nam szczegółowy
opis ataku z użyciem ciasteczek (ang. cookies). Zwróciliśmy się do
kilku ekspertów od bezpieczeństwa z prośbą o komentarz.
Do
eksperymentu użyto kilku komputerów wyposażonych w Windows XP, Windows
Vistę, Ubuntu 7.04, Ubuntu 8.04 oraz środowisko wirtualne VirtualBox.
Ze względu na uproszczoną procedurę obsługi ciasteczek Czytelnik
posłużył się przeglądarką internetową Opera. Pomocny okazał się też
analizator sieciowy Wireshark (nie jest niezbędny do przeprowadzenia
ataku).
Po konsultacji z firmą G DATA, producentem
oprogramowania zabezpieczającego, zdecydowaliśmy się nie podawać zbyt
wielu technicznych szczegółów wykorzystania luki. Zanim wysłaliśmy
zapytanie do ekspertów, przeprowadziliśmy w redakcji kilka testów,
które potwierdziły podatność strony na opisywany błąd.
"Mam ciacho i nie zawaham się go użyć"
Silent
Traveller 007 tłumaczy: Jak wchodzisz na Nasza-klasa.pl to tworzone
jest ciasteczko sesji. Wciśnięcie opcji SSL jedynie przełącza na
bezpieczną funkcję logowania, jednakże autoryzacja dotyczy pierwotnego
ciasteczka uzyskanego bez szyfrowania (uwierzytelnione zostanie
ciasteczko z sesji początkowej!). Testy przeprowadzane były z użyciem
bezpośredniego połączenia https://ssl.nasza-klasa.pl/login
Co
można zrobić po przejęciu cudzego ciasteczka? W pliku, który
otrzymaliśmy od naszego informatora, czytamy: Ciasteczko kopiujemy do
drugiego komputera (technika dowolna), czasem trzeba użyć "pośredniej"
aplikacji - jak edit czy notepad. (...) podmieniamy ciasteczko dla
Nasza-klasa.pl i reload ;) - "jak nie spartolisz, to masz dostęp".
TADA... i teraz możesz: poczytać pocztę, zmieniać opisy, kopiować
zdjęcia, pisać na forach. Nie możesz usunąć konta, bo trzeba znać hasło!
Zapytaliśmy
Czytelnika, czy poinformował o swoim odkryciu twórców serwisu
Nasza-klasa.pl. Silent Traveller 007 odpisał: Tak. Informacja
oficjalnie przekazana została na początku sierpnia 2008 z
wykorzystaniem formularza kontaktowego "Pomysły, Sugestie i Uwagi" -
bez żadnego odzewu :( Niejednokrotnie informacja na temat ciasteczek i
SSL pojawiała się na Forum. Niestety bez reakcji portalu.
Administracja portalu wie o luce, ale...
Dziennik
Internautów zwrócił się do Naszej-klasy.pl z prośbą o skomentowanie
zaistniałej sytuacji. Dostaliśmy potwierdzenie, że opisywany wyżej błąd
jest znany administracji serwisu. Nasi programiści pracują nad
załataniem tej luki. Nie jest to jednak krytyczny błąd systemu -
odpowiedział Bartek Szambelan, Dyrektor Działu PR. - Proszę pamiętać,
że jesteśmy obecnie jedynym serwisem społecznościowym, w którym
logowanie może odbywać się za pośrednictwem szyfrowanego połączenia SSL.
W
dalszej części listu czytamy: Aby przejąć sesję Użytkownika, musi
wystąpić kilka niezależnych od siebie okoliczności. Przede wszystkim
"podsłuchać" naszą sesję może osoba będąca między naszym komputerem a
NK, czyli administrator naszej sieci bądź dostawca internetowy. Oprócz
tego przejęcie sesji sposobem opisanym przez Panią jest możliwe tylko i
wyłącznie w czasie rzeczywistym (Użytkownik zalogowany do NK), po
wylogowaniu Użytkownika nawet przejęta sesja traci swoją ważność.
W
naszych zabezpieczeniach stawiamy przede wszystkim nacisk na ochronę
hasła - poinformował Bartek Szambelan, podkreślając, że podczas
logowania do serwisu hasła użytkowników przesyłane są za pomocą
zaszyfrowanego protokołu SSL. - Obecnie żaden z serwisów
społecznościowych czy to portali horyzontalnych nie daje nawet takiego
zabezpieczenia jak NK.
Co na to ekspert?
Swoją opinią na
temat opisywanej luki podzielił się z nami Michał Piszczek, Kierownik
Działu Programistów w firmie ESC S.A. Kraków: Zaprezentowana podatność
nie jest niczym nowym. Nie określiłbym jej jako krytyczną, a raczej
jako powszechną, zwłaszcza w kontekście dopuszczania przez portale
automatycznego logowania z dynamicznych adresów IP. Znamy ten atak w
różnych odmianach pod nazwą przejęcie sesji. Uszczegóławiając opisywany
przypadek, jest to przejęcie sesji przez przechwycenie ciasteczka
sesyjnego.
Podczas logowania serwer generuje w ciasteczku losowy
identyfikator sesji. Jeśli logowanie się powiedzie, ID sesji jest
uznawany przez serwer za "wiarygodny" - uzyskujemy dostęp do konta.
Stan zalogowania trwa, dopóki identyfikujemy się witrynie właśnie
wygenerowanym ciasteczkiem. W pewnych szczególnych okolicznościach
przejęcie takiego "wiarygodnego" ciastka oznacza przejęcie tożsamości
osoby, która je wygenerowała - tłumaczy ekspert.
Dlaczego
Nasza-klasa.pl godzi się na taką podatność? Michał Piszczek podaje dwie
najbardziej prawdopodobne przyczyny: Po pierwsze opisany atak łamie
polskie prawo (Art. 267. kk). Aby przejąć czyjeś ciasteczko, musimy
albo je wykraść fizycznie z komputera, albo przechwycić transmisję
między klientem a serwerem (sniffing). Po drugie. Dobrą metodą
zabezpieczenia mogło by być przechowywanie i kontrolowanie w sesji
informacji dokładniej identyfikujących użytkownika (adres IP, ciąg
identyfikujący przeglądarkę etc.).
Takie zabezpieczenie
zdecydowanie zwiększyłoby bezpieczeństwo. Jednak stwarza ono kilka
niedogodności. W przypadku dynamicznych adresów IP (np. Neostrada) lub
źle skonfigurowanego load balancingu użytkownik byłby co kilka kliknięć
wylogowywany z serwera. Z całą pewnością programiści NK wiedzą od dawna
o tym błędzie. Dlaczego więc wskazana przez Silent Travellera 007
podatność dalej funkcjonuje? Jest to niestety decyzją biznesową portalu
Nasza-klasa. Kompromis między bezpieczeństwem a ........... .
Kolejna możliwość ataku
Kończąc
swoją wypowiedź, Michał Piszczek dodaje: Podczas analizy zgłoszenia na
prośbę redakcji Dziennika Internautów natrafiłem na pewną przeoczoną
prze Silent Travellera 007 bardzo groźną lukę bezpieczeństwa. Jest to
pewna odmiana ataku zaproponowanego przez Silent Travellera 007. Co
ciekawe, atak ten nie wymaga łamania prawa ze względu na odwrócenie ról
ofiary i intruza! Jest to pewna odmiana Cookie Session Fixation.
Dlatego bezwzględnie zalecam usuwanie ciastek ZARÓWNO PRZED, jak i po
pracy w miejscach typu kawiarenka internetowa.
G DATA zaleca najwyższą ostrożność
O
wypowiedź poprosiliśmy też ekspertów firmy G DATA - prezentują oni
trochę inne podejście do opisywanego przez nas problemu. Problem wynika
z błędnej implementacji procesu logowania SSL. Nie jest tak, że
protokół SSL, czyli popularna żółta kłódeczka, zabezpiecza nas przez
kradzieżą tożsamości. Analiza przeprowadzona przez specjalistów G DATA
Software wykazała poważne luki w procesie implementacji bezpiecznego
logowania - poinformował nas Tomasz Zamarlik.
- Ciasteczko sesji
uwierzytelniającej jest przesyłane połączeniem niezaszyfrowanym, mimo
że przechodzimy na stronę SSL, na której podajemy login i hasło. W
momencie gdy ktoś o złych zamiarach przechwyci nasze ciasteczko sesji
uwierzytelniającej, to uzyskuje tym samym dostęp do wszystkich naszych
danych, może czytać naszą pocztę, komentować, zmieniać ustawienia,
słowem robić wszystko poza zmianą hasła.
Okazało się, że
zamykanie przeglądarki za pomocą przycisku x bez wylogowywania się z
portalu powoduje, że niezaszyfrowana sesja jest dalej dostępna i
umożliwia nieautoryzowany dostęp do danych. Podsumowując, używanie
bezpiecznego połączenia SSL w chwili obecnej nie chroni naszych danych.
G DATA Software sugeruje nie logowanie się na profil użytkownika do
czasu usunięcia problemu - napisał Tomasz Zamarlik.
Źródło informacji: Dziennik Internautów