WPS prawie tak słaby jak WEP.

Wygląda, że WPS (włączony domyślnie w wielu routerach) jest w tej chwili porównywalnie słaby, jak WEP. Niezależnie od użytego WPA/WPA2 możliwe jest – przy włączonym WPS – stosunkowo szybkie poznanie hasła do sieci WiFi ofiary, dodatkowo są gotowe narzędzia do tego celu (np. reaver-wps spaczkowany niedawno dla Debiana). Spodziewać się można niebawem aktualizacji firmware’ów dla routerów z dodaniem/wydłużeniem czasu dla funkcji lock down, ale to nie jest rozwiązanie, tylko drobne utrudnienie. Do szczegółów, w tym czasu brute force na WPS odsyłam do krótkiego, ale treściwego pdf ze strony.

Jak sprawdzić, czy sieć obsługuje WPS (czyli czy dana sieć jest podatna)? Najprościej (na Linuksie) przy pomocy wpa_supplicantPrzemek w komentarzach na tej stronie opisał jak, a wygląda, że da się prościej i wystarczy (Debian Squeeze z wicd jako helperem do WiFi):

wpa_cli scan
wpa_cli scan_results | grep WPS

Jeśli okaże się, że mamy włączonego WPS, a go nie potrzebujemy, to wypadałoby zmienić hasło do sieci WiFi oraz poszukać, czy WPS nie da się wyłączyć. Często (zwykle?) się da, przynajmniej na Linksysach.

Recenzja testu ultrabooka.

Test ultrabooka i konkurs to jedno, teraz pora na recenzję testu, czyli co mi się podobało w teście i konkursie, a co nie.

Przede wszystkim, fajnie, że konkurs w ogóle miał miejsce – jest szansa na pomacanie sprzętu przed zakupem, zapoznania się na żywo, sprawdzenia, jak sobie Linux radzi (tylko teoretycznie niestety, patrz niżej) itp. I żadna recenzja czy parę minut klikania w sklepie tego nie zastąpią, niestety. Dowiedziałem się, że nadal nie lubię ekranów glare, że klawiatura przy 13,3″ to pełen wymiar i może być zupełnie wygodna i że touchpad może być nie tylko używalny, ale nawet wygodny. Co prawda mysz jest wygodniejsza i pewnie na biurku podłączę, ale przy dobrym touchpadzie mogę ją sobie darować przy korzystaniu mobilnym.

Sprawa druga to to, co było podkreślane od początku przez wiele osób – jeden dzień to stanowczo za mało na test. Zwyczajnie mało czasu, żeby dokładnie przeklikać wszystko i poużywać, jeśli pojawią się problemy, żeby je rozwiązać itd. Do tego dochodzi kwestia konieczności poświęcenia jednorazowo sporej ilości czasu, wypadających niespodziewanych rzeczy niezwiązanych z testem itp. Jakby do tego dodać czas na synchronizację danych (żeby móc używać komputera w takich samych warunkach, jak dotychczasowy), to robi się dramat.

Kolejna sprawa – zakres grzebania w sprzęcie i odpowiedzialności. Jak pisałem w komentarzu pod wpisem konkursowym, istnieje coś takiego jak ubezpieczenie od zepsucia sprzętu, poczynając od jego zrzucenia, zalania, aż po naprawę po np. nieudanej aktualizacji BIOSu (to ostatnie kumpel niedawno sprawdzał w praktyce). Zdecydowanie warto wydać parę zł i skorzystać, dając testującym więcej komfortu. Tak samo zmiana systemu operacyjnego w urządzeniu – to tylko komputer, komputery pracują pod różnymi OS. W przypadku tak krótkiego testu co prawda zmiana OS średnio ma sens, ale przy dłuższym teście na pewno warto zezwolić na taką zmianę, a grzebanie w partycjach to wręcz konieczność.

Kolejna kwestia, czyli bezpieczeństwo. Czyli główny powód, dla którego zrezygnowałem z testu smartphone’a. Miałem opory przed podaniem haseł do serwisów na „niepewnym” (czytaj: nie moim) systemie, który na dodatek za moment ode mnie wyjeżdża nie wiadomo dokąd (a weź tu wyczyść dokładnie Windowsa…). Ostatecznie jedynym hasłem, które podałem było to do wifi. Zakładanie testowych kont jest pracochłonne i nadal nie korzystamy z systemu identycznie, jak normalnie. A jeszcze jakbym miał swoje dane skopiować na taki system? W żadnym razie. Możliwość postawienia swojego systemu, wyczyszczenia (wyzerowania) partycji to minimum. Jak rozwiązać sprawę przywrócenia oryginalnego systemu? Prosto: pendrive przywracający domyślny system i bootowanie z USB załatwią sprawę, niezależnie co się stanie z oryginalnym systemem na dysku. Proste, wygodne, bezpieczne i działa.

Organizacyjnie: trochę do życzenia pozostawiała komunikacja dotycząca konkursu. Papiery, które miały przyjechać przed przekazaniem sprzętu, a nie przyjechały (z tego co czytam, nie tylko ja nie dostałem umowy wypożyczenia przed otrzymaniem sprzętu), trochę zamieszania z terminami. Fajnie by było, jakby w przypadku przybycia kuriera ze sprzętem, a bez umowy można się dodzwonić do kogoś i wyjaśnić (no ale ostatecznie nie mój problem, że dostaję komputer bez umowy, prawda?). Fajnie też, żeby kurier przywożąc „upominki na otarcie łez” (dziękuję, zgrabny pendrive o słusznym rozmiarze, przyda się pod linuksowe live’y) i papiery do podpisania (umowa wypożyczenia po oddaniu sprzętu? po co?) zapowiedział wcześniej, co wiezie. Albo ktoś, kto wysyła, żeby zapowiedział. Bo osoba zdatna do odbioru przesyłki może być dostępna, ale nie musi być jednocześnie osobą mogącą podpisać umowę.

Pewnie jakby konkursy tego typu się powtarzały, to się warunki dotrą i będzie lepiej. Na co – w nadchodzącym roku – liczę. 😉

Walka z Tor – blokowanie i atak.

Każdy medal ma dwie strony. To, że popieram prawo do anonimowości i wolności wypowiedzi nie znaczy, że nie rozumiem osób, które z różnych względów chciałyby ograniczyć dostępu do swojej sieci czy swojego serwisu użytkownikom sieci Tor. Poza tym, w znacznej mierze bawię się Torem, żeby lepiej poznać z czym wiążą się różne, zwłaszcza administracyjne aspekty sieci na sieci.

Sieć Tor z założenia ma sprzyjać anonimowości i omijaniu cenzury, a jak to wygląda w praktyce? Moim zdaniem, ma wiele słabości, chwilami sprawia po prostu broken by design. Ostatnio słychać było, o skompromitowaniu sieci Tor. Na blogu projektu Tor pojawiło się sprostowanie, wytykające błędy ale nie znaczy to, że różne słabości zupełnie nie istnieją.

Podstawową, znaną i opisaną w FAQ, słabością projektu, wynikającą z założeń projektowych jest, moim zdaniem, fakt, że publicznie dostępna, a przynajmniej trywialna do uzyskania jest lista wszystkich węzłów wyjściowych (exit node) i pośredniczących (relay node) Tora. Znacznie trudniej uzyskać listę bridge nodes, czyli węzłów służących wyłącznie do przyjęcia pierwszego połączenia od użytkownika, ale nie jest ona tak naprawdę potrzebna, by któryś duży gracz przeciwko Torowi mógł zaszkodzić sieci.

Niejawność bridge nodes wynikała z założeń projektu i z założenia miała służyć do tego, aby żaden ISP/kraj nie mógł w prosty sposób pozbawić swoich użytkowników możliwości połączenia z siecią Tor. I to zadanie spełnia przyzwoicie. Użytkownicy nadal mają możliwość uzyskania częściowych danych o bridge nodes z listy i podania ich ręcznie w swoim kliencie Tor, co w połączeniu ze zmiennymi IP bridge nodes bardzo utrudnia (o ile nie eliminuje) możliwości całkowitego zablokowania łączności z siecią Tor. Przynajmniej zablokowania opartego tylko o blokadę IP, nie analizę ruchu, ale to jakby zupełnie inny temat i skala trudności.

Natomiast mając listę węzłów końcowych, można je zablokować na wejściu do sieci czy dostępie do serwisu. Istnieją nawet serwisy, które zapewniają – mniej lub bardziej aktualne – gotowce. Ten serwis na przykład udostępnia aktualizowaną co godzinę blacklistę opartą na DNS z podziałem na węzły wychodzące i zwykłe.

Ale nie jest to jedyna metoda walki serwisów czy ISP z Torem. W praktyce mało kto, przynajmniej w naszym kraju, udostępnia węzeł wychodzący. Przyczyna jest prosta – dość szybko może skończyć się to (i kończy, nie mówię z własnego doświadczenia, ale słyszałem z pierwszej ręki o takich przypadkach) wizytą policji z powodu nadużyć z danego IP. Węzeł pośredniczący, o ile nie ma uruchomionej tzw. ukrytej usługi (hidden service) nie przechowuje ani nie udostępnia żadnych danych, więc jego uruchomienie w domu nie pociąga za sobą żadnych problemów (poza zużyciem części pasma).

Przynajmniej teoretycznie. W praktyce bowiem serwery serwisów nie lubiących Tora mogą sprawdzać nie tylko, czy użytkownik nie łączy się z IP na którym uruchomiony jest węzeł wychodzący, ale także czy połączenie nie jest z IP na którym uruchomiony jest węzeł pośredniczący i… także odmawiać dostępu. Przykładem jest choćby powyższy serwis z listami. Łącząc się z IP, na którym uruchomiony jest relay node zobaczymy:

Forbidden – TOR Node / Anonymous Proxy I’m sorry, but I really don’t see why anyone would need to use a TOR node or Anonymous Proxy server to look at my site. So i’m afraid you can’t look. Stop running TOR / using an anonymous proxy and you can view my site.

Przy względnie częstej aktualizacji listy węzłów (choćby wspomniana godzina), rozwiązanie takie praktycznie nie generuje skutków ubocznych dla serwisu, który ją wykorzystuje i minimalizuje ryzyko false positives, nawet przy zmiennym IP węzłów. Zakładając oczywiście, że lista jest prawidłowa i kompletna.

Zresztą, sami twórcy projektu Tor dają o to, żeby administratorzy którzy muszą blokować węzły wyjściowe Tora, mogli robić to w prosty sposób. Banowanie użytkowników sieci Tor także ma swój wpis w FAQ. Uprzykrzanie życia właścicielom relay nodes to już raczej otwarta wojna, której chcą uniknąć.

Skoro o otwartej wojnie mowa, gdyby jakieś państwo chciało unieruchomić sieć Tor, to obok blokowania bridge nodes może sięgnąć po (D)DoS (w sumie wystarczy zwykły flood) na – niekoniecznie szybkie – węzły pośredniczące. Węzły wyjściowe często są na dedykowanych maszynach i łączach, pośredniczące (tylko pośredniczące, każdy wyjściowy jest jednocześnie pośredniczącym) – niekoniecznie. Zresztą ponownie – istnieje strona podająca status sieci Tor, a na niej szczegółowe informacje o węzłach – rola, tzw. flagi, system, ilość przesyłanego ruchu… Zapewne można na jej podstawie szacować, jakie zasoby potrzebne są do przeprowadzenia ataku.

Przy okazji takie spostrzeżenie – ludzie z projektu Tor naprawdę wydają się skupieni na etyczny zastosowaniach i zapewnieniu anonimowości i wolności ludziom, którzy naprawdę tego potrzebują. I mocno liczą, że administratorzy serwisów to zrozumieją i nie będą w Torze widzieć wyłącznie narzędzia abuserów. W ciągu kilkudziesięciominutowej rozmowy, która się wywiązała na IRC przy okazji wspomnienia na temat tworzenia tego wpisu zostałem odesłany do paru prac naukowych (nie czytałem jeszcze, bo niezupełnie ten temat, podlinkowane poniżej). Atak totalny na tak szczytne przedsięwzięcie chyba nie bardzo mieści im się w głowie, natomiast zaprzątnięci są zapewnieniem anonimowości użytkownikom i pracują nad ulepszeniem możliwości łatwego i pewnego rozdzielenia węzłów wyjściowych od pośredniczących dla tych, którzy muszą blokować dostęp z sieci Tor.

Stąd moje wrażenie o broken by design może być przesadzone lub zwyczajnie mylne – zwyczajnie nie do tego i nie przy takich zastosowaniach było to projektowane… Generalnie Tor ma warstwy – z pozoru wygląda na bardzo prosty twór, ale im dalej się wgłębiać, tym ciekawsze nowe rzeczy się pojawiają. Przyznam, że sam nie grokuję Tora w pełni, stąd ten wpis, będący poniekąd próbą uporządkowania paru faktów.

Linki (które kiedyś mam nadzieję przeczytam, niekoniecznie o Torze):