niedziela, 11 września 2011

Ustawianie Access Point'ów i Router'ów (1)

Do napisania niniejszego postu sprowokowała mnie bezmyślność tzw. "informatyków".
(Oraz ludzi powierzających im swoje zasoby informatyczne)
Pytanie retoryczne: Jeśli kupicie Państwo nowoczesny samochód to czy oddacie go do naprawy/przegladu synowi kolegi tylko dlatego, że wyklepał komuś blachę po stłuczce ???
Teraz trochę podstaw:
do przesyłania informacji w obie strony (Wy-klient, Jakaś firma-serwer) służą odpowiednie protokoły.
Wybór protokołu to jakby wybór języka, w którym macie się porozumiewać.
"HTTP (ang. Hypertext Transfer Protocol – protokół przesyłania dokumentów hipertekstowych)
to protokół sieci WWW (ang. World Wide Web). Obecną definicję HTTP stanowi RFC 2616.
Za pomocą protokołu HTTP przesyła się żądania udostępnienia dokumentów WWW i informacje
o kliknięciu odnośnika oraz informacje z formularzy. Zadaniem stron WWW jest publikowanie informacji – natomiast protokół HTTP właśnie to umożliwia." (źródło: Wikipedia)
"HTTPS (ang. HyperText Transfer Protocol Secure) to szyfrowana wersja protokołu HTTP. Zamiast używać w komunikacji klient-serwer niezaszyfrowanego tekstu, szyfruje go za pomocą protokołu SSL. Zapobiega to przechwytywaniu i zmienianiu przesyłanych danych."
Pewną szczególną rolę odgrywa protokoł TCPIP (ang. Transmission Control Protocol/Internet Protocol), który stanowi swoistego rodzaju warstwę transportową dla innych protokołów.
Protokoły DNS, NTP wykorzystują tylko protokół UDP z warstwy transportowej. Protokoły FTP, SMTP, POP3, SSH, IRC posługują się tylko TCP. Natomiast SMB używa obu protokołów.
Protokół SSL ma szczególną rolę. Może zostać umieszczony pomiędzy każdym połączeniowym protokołem warstwy aplikacji, a TCP. Dzięki jego wykorzystaniu dane przesyłane przez aplikacje mogą zostać zaszyfrowane.
Ciekawym protokołem (który jest też usługą oraz pewnym systemem połączonych komputerów) jest DNS (Domain Name System). Poniżej opiszemy atak z wykorzystaniem DNS.
Posiadając powyższą wiedzę typu "co jest co" możemy już pokusić się o wskazanie Państwu jak połączyć to z wiedzą typu "jak to działa" aby ostrzec Was przed możliwością stania się ofiarą ataku - nawet nie wiedząc o tym.
KUPUJEMY ACCESS POINT'a
Przybył w naszym domu/firmie komputer przenośny. Oczywiście wiemy już, że może on korzystać z sieci Internet bezprzewodowo. Jak mamy kontakt z osobą wymienioną w pierwszym zdaniu tego posta (domorosłym informatykiem) to oczywiście powierzamy mu zakup urządzenia. Czasem udajemy się sami do sklepu, gdzie sprzedawca! (tak, tak - sprzedawca a nie informatyk) sprzedaje nam urządzenie i mówi: "wystarczy to podłączyć, wpisać to i to a potem klikać dalej, dalej i już zostanie "samo" skonfigurowane"
Czasem bierzemy sie za to sami (no bo co w tym może byc skomplikowanego ?!)
Czytamy instrukcję , wpisujemy dane zgodnie z instrukcją, i JAZDA !!! działa :D
Dobrze, dobrze - to po co w ogóle są informatycy ???
Postaramy się wskazać Państwu odpowiedź na to pytanie.
Punkt pierwszy:
Mało kto wpisuje/zmienia hasło administratora do urządzenia. Łatwo to sprawdzić wpisując adres naszej bramy sieciowej do naszej przeglądarki.
Adres bramy uzyskacie Państwo klikając odpowiednio: START->URUCHOM->wpisujemy CMD
i klikamy uruchom. Pojawia sie czarne okienko. Wpisujemy ipconfig - naciskamy ENTER i czytamy
brama domyślna: 192.168.1.1 (na przykład)
wpisujemy te cyferki oddzielone kropkami w pasku adresu naszej przegladarki (tak jak np.: google.pl )
i oto zgłasza się nam np.:


WOW - widzimy jakie urządzenie jest podłączone !!!
co dalej ?
no każdy widzi jakie. To teraz szukamy sobie np. w google.pl instrukcji do urządzenia WR740N...
na stronie 7 u góry widzimy :
login: admin
hasło: admin
wpisujemy więc admin,admin - klikamy "zaloguj się" i jesteśmy w jaskini lwa...
Jak się trochę znamy na sprzęcie to udajemy sie do sekcji DNS (o którym to protokole/usłudze pisaliśmy wcześniej) i wstawiamy tam adres IP naszego własnego serwera DNS, jaki może postawić każdy nastolatek, na linuksie za darmo, na darmowym serwerze wirtualnym...
Bliżej o DNS:
komputery nie używają nazw domen takich jak np. google.pl
używają tylko i wyłącznie adresów IP jak np: 74.125.39.106
to nam - ludziom potrzebne są nazwy domen, abyśmy łatwiej je zapamiętali.
Aby to umożliwić wprowadzono tzw. serwery nazw domen (DNS) czyli komputery, które mają wpisane nazwy domen i odpowiadające im adresy IP.
My, korzystając z Internetu, mamy wpisane te adresy serwerów DNS (tłumaczy) przeważnie w urządzeniach (bo domorośli informatycy nie przypisują adresów IP do naszych kart sieciowych i nie konfigurują naszych DNS na naszych kartach)
Wróćmy więc do naszego "włamania". Jako adresy serwerów DNS wpisujemy nasze własne serwery skonfigurowane tak, że odpowiedzą na żądanie, ale zapiszą nasz adres IP oraz domenę dla jakiej żądamy podania adresu IP poprzez DNS.
Niesamowicie prosty atak, a zbiera nam informacje:
1. w jakich godzinach korzystamy z Internetu.
2. jakie strony odwiedzamy
3. ile czasu oglądamy daną stronę
4. w jakie linki na niej klikamy
5. jakie pliki pobieramy na nasz komputer
MAŁO ?!?!
to jeszcze dodamy, że jesteśmy w stanie zmodyfikować strony, na jakie wejdzie taki właściciel źle skonfigurowanego urządzenia typu access point.
Jak ?
prosto:
otóż tworzymy stronę - dajmy na to banku (jest to tzw fishing) łudząco podobną do prawdziwej strony.
Wedle wiedzy atakujacego - korzysta on ze zwykłego protokołu (bo nasz użytkownik i tak nie zwraca uwagi na szczegół - czy jest on połączony z bankiem poprzez protokoł HTTPS czy tylko HTTP,
albo... korzysta nasz atakujący z protokołu HTTPS i certyfikatu fake'owego (nie bankowego) bo i tak nasz klient nie zwraca uwagi na szczegół czy certyfikat HTTPS jest z jego banku czy też nie.
Co się dalej dzieje ?
Nasz klient loguje się do banku. OCZYWIŚCIE podaje login i hasło/pin jednak nie jest on połączony
z bankiem ale podrobioną stroną banku przez atakujacego (co ciekawe: adres w pasku adresu jest oczywiście taki sam jak do prawdziwej strony banku).
Atakujący, w tym samym czasie, przesyła do prawdziwego banku login i hasło. (bo owym atakującym jest już zwykły program po stronie podrobionego serwera)
Klient może przeglądać swoje wyciągi, realizować zlecenia - bo oczywiście prawdziwa treść jest przesyłana przez atakującego pośrednika (czyli prosty program).
ALE! atakujący w każdej chwili może zmienić zarówno kwotę jak i numer konta na jaki chcemy przesłać pieniądze.
Dlaczego tak sie może zdarzyć ?
Bo powierzylismy opiekę nad naszym systemem informatycznym człowiekowi, który w dobrej wierze, nie zdając sobie sprawy z zagrożeń, umożliwił taki atak.
A może zrobiliśmy to sami ?
A może warto do takiej czynności poprosić INFORMATYKA o rozległej wiedzy i z dużym doświadczeniem?
a to już zależy od Państwa...

p.s. w dalszych artykułach tej serii opiszemy atak na słabe i nieużywane już zabezpieczenia sieci
WI-FI typu WEP (sprawdź, czy Twoje urządzenia czasem nie korzystają z tej przestarzałej technologii...)