Aktywne Wpisy
MakaronowyStwor +103
Tak się zastanawiam czemu baby dużo rzadziej wpuszczają kogoś w #samochody .
Są nieuprzejme czy po prostu nie ogarniają co się dzieje?
#motoryzacja
Są nieuprzejme czy po prostu nie ogarniają co się dzieje?
#motoryzacja
Saddam_Husajn +243
Przypominam że to ten człowiek jest odpowiedzialny za wybuch wojny i jeżeli zostanie wprowadzony obowiązkowy pobór do wojska to ten człowiek jest za niego w 100% odpowiedzialny i to mu dziękujcie za to.
#obowiazkowecwiczeniawojskowe #wojna #rosja
#obowiazkowecwiczeniawojskowe #wojna #rosja
Ostatnio wrzucałem zagadki hakerskie, które polegały na wykorzystaniu błędów w implementacji strony. Tym razem skupimy się na pewnym problemie (w sumie dość powszechnym) od strony koncepcyjnej.
Mamy stronę, która działa zarówno w protokole HTTP jak i HTTPS. HTTPS jest postawiony na stronie tylko do realizacji procesu logowania, cała reszta jest wysyłana przez HTTP.
Na stronie głównej (tej w HTTP), w prawym górnym rogu znajduje się formularz do logowania wyglądający mniej więcej tak:
Jak widać, formularz odnosi się do strony logowania po HTTPS. Wszystko wygląda więc w porządku:
1. Użytkownik wchodzi na stronę w HTTP.
2. Wpisuje swoje dane do formularza logowania.
3. Dane logowania są przesyłane przez HTTPS (a więc nie ma możliwości by je podsłuchać w sieci).
4. Serwer zweryfikował poprawność danych, ustawia ciastka i przekierowuje użytkownika z powrotem do HTTP.
No... więc wszystko niby wygląda w porządku ale nie byłoby tej zagadki, gdyby faktycznie wszystko było ok :) Jaki jest problem w takim rozwiązaniu? W jaki sposób można tutaj przeprowadzić atak?
Albo sformułuję problem inaczej, żeby był bardziej obrazowy: dlaczego nie powinniście się logować na Wykop z niezaufanej sieci Wifi? ;)
Od razu powiem, że nie chodzi tutaj o keyloggery czy jakieś inne złośliwe oprogramowanie. Komputer ofiary nie jest niczym zainfekowany.
A co byłoby gdyby na stronie nie dało się zrobić XSS?
@Wozyack: Zaszyfrowanych danych nie wyciągniesz z dokumentu, bo nie masz jak :)
@staa: Nie jestem do końca pewien, o którym zapytaniu mówisz, więc wolałbym większą precyzję.
Mała podpowiedź:
Wyjaśnienie:
Pierwsze żądanie idzie w HTTP, ale zawiera formularz z odniesieniem do HTTPS. Ponieważ jednak jest w HTTP - złośliwy użytkownik może w nim podmienić atrybut
action
na taki, który nie będzie zawierał odniesienia do HTTPS tylko HTTP.
Istnieją gotowe skrypty, które coś takiego robią, jak np. sslstrip - on zamienia "https" na "http", dodatkowo może zmienić favikonę na taką samą, tylko zawierającą w sobie