czwartek, kwietnia 23, 2009

PPTA

Paskudna aura. Mokro po deszczu, zimno, a niebo szare. Odkąd wstałem chce mi się spać. Nawet kawa mnie nie obudziła. Mojej kotki pogoda nie rusza - śpi sobie smacznie zwinięta w kłębek. Ja tam próbuję być nieco produktywny, ale coś mi to słabo idzie. Na tą aurę przypomniała mi się pewna piosenka z związkiem chemicznym w tytule(nota bene, jak na chemika przystało to tych piosenek z związkiem chemicznym znam nawet sporo). Chodzi o PPTA, czyli poli(p-fenylotereftalanoamid) lepiej chyba znany z handlowej nazwy - Kevlar. Z braku ładu i składu w ten ospały dzień posłuchajmy sobie "Kevlar Soul" szwedzkiej grupy Kent.

poniedziałek, kwietnia 13, 2009

Imp on the balcony

Na święta znów przywiało mnie na opolski grunt. Tym razem na trochę dłużej. Ponieważ wybieram się z referatem w języku angielskim na XXX OSCh organizowaną z ramienia ASSChem mam podwójną motywację by podsumować moją dotychczasową pracę badawczą. Święta świętami, ale popracować też bym nad tym trochę chciał. Zabunkrowałem się więc z laptopem na balkonie. Znam na tyle swoją rodzinę, by nie mówić im gdzie się schowałem - najlepiej pracuje mi się jak wokoło nikt się nie kręci. Wyjątkiem jest moja kotka Hilda (patrz zdj. wyż.). Zwykle jestem w domu tylko na kilka dni, ale skoro mam trochę czasu to dziś zabrałem się za konfigurację domowej sieci opartej o neostradowy router Livebox. Topologia mojej sieci wygląda następująco: Komputer matki oraz siostry mają internet poprzez kartę ethernetową. Na moim komputerze stacjonarnym(developer) oraz laptopie(chochlik) używam na co dzień Archlinuksa z bezprzewodowym połączeniem do rutera. Do tej pory nie miałem czasu "babrać się w konfigach" na pingwinie, więc postawiłem sieć bezprzewodową z szyfrowaniem WEP. Tak, wiem - szyfrowanie sieci bezprzewodowej za pomocą WEP to jest prawie żadne zabezpieczenie, ale gdy to robiłem miałem inne rzeczy na głowie. Teraz postanowiłem to poprawić.

Playing with the fire

Nawet jeśli dziecku powiemy, że ogniem można się poparzyć, będzie się ono nim bawiło dopóki samo się nie oparzy i nie poczuje bólu. Z zabezpieczeniami komputerów jest podobnie. W zasadzie mamy je w d... domyśle dopóki się nam ktoś nie włamie, nie utracimy danych, nie zawirusujemy sobie maszyny... You get the point? Zgodnie z starą hackerską zasadą postanowiłem sprawdzić zabezpieczenia mojej domowej sieci... włamując się do niej! Bardzo się zdziwiłem wynikiem mojego eksperymentu (robiłem to po raz pierwszy). W pierwszej kolejności potrzebne mi były odpowiednie narzędzia - zainstalowałem więc pakiet aircrack-ng # pacman -S aircrack-ng i przystąpiłem do zabawy. Pierwszym krokiem jest przełączenie interface'u sieciowego(w moim wypadku jest to wlan0) z trybu zarządzanego(Managed) na tryb monitoringu(Monitor), co pozwala na nasłuchiwanie ruchu w sieci bezprzewodowej. Ja w tym celu uruchomiłem polecenie airmon-ng, które tworzy wirtualny interface mon0 działający w trybie monitoringu.
bash-3.2# airmon-ng start wlan0


Interface       Chipset         Driver

wlan0           Ralink 2573 USB rt73usb - [phy0]
                                (monitor mode enabled on mon0)

bash-3.2# iwconfig
lo        no wireless extensions.

eth0      no wireless extensions.

wmaster0  no wireless extensions.

wlan0     IEEE 802.11g  ESSID:""
          Mode:Managed  Frequency:2.427 GHz  Access Point: Not-Associated
          Tx-Power=27 dBm
          Retry min limit:7   RTS thr:off   Fragment thr=2352 B
          Encryption key:off
          Link Quality:0  Signal level:0  Noise level:0
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

mon0      IEEE 802.11g  Mode:Monitor  Frequency:2.427 GHz  Tx-Power=27 dBm
          Retry min limit:7   RTS thr:off   Fragment thr=2352 B
          Encryption key:off
          Link Quality:0  Signal level:0  Noise level:0
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0
Kolejnym krokiem jest nasłuch ruchu sieciowego. Odpaliłem w tym celu airodump-ng z odpowiednimi opcjami: bash-3.2# airodump-ng -i -w zapis_ruchu -c 4 mon0
  • -i zapisuje tylko pakiety z IV'ami.
  • -w zapisuje pakiety do pliku (zapis_ruchu.ivs).
  • -c 4 włącza nasłuch odpowiedniego kanału wifi (na 4 działa moja sieć).
Wygląda to tak:

 CH  4 ][ Elapsed: 28 s ][ 2009-04-13 19:56

 BSSID              PWR RXQ  Beacons    #Data, #/s  CH  MB   ENC  CIPHER AUTH ESSID

 00:11:22:33:44:55  -66 100      270        0    0   4  54   WEP  WEP    OPN  LightnirsAP

 BSSID              STATION            PWR   Rate   Lost  Packets  Probe

By efektywnie łamać sieci szyfrowane za pomocą WEP trzeba przechwycić sporą ilość pakietów. Oczywiście istnieją techniki do generowania odpowiedniego ruchu, ale ponieważ to raczej kwestia czasu postanowiłem sobie sprawę nieco ułatwić. Włączyłem na developerze transfer wyników moich obliczeń z uczelni. Po jakiś 40 minutach nazbierałem około 70 tysięcy pakietów i przystąpiłem do crackowania klucza. bash-3.2# aircrack-ng -a 1 zapis_ruchu.ivs -n 128 Dla porównania tak wyglądał mój wpis odnośnie tego accespointa w pliku wpa_suplicant.conf
# LightnirsAP

network={
 ssid="LightnirsAP"
 key_mgmt=NONE
 wep_key0=345e2f6fcdfde135e9e7d9f4fe
 wep_tx_keyidx=0
 priority=5
}
Ładnie, ładnie - klucz złamany. Skoro ja jako nowicjusz w niecałą godzinę złamałem zabezpieczenia własnej sieci to co dopiero wprawiony w wojennej sztuce penetracji sieci haker mógłby zrobić? Zaczynam się bać.

Securing the net

W pierwszej kolejności za pomocą panelu administracyjnego zmieniłem szyfrowanie sieci na WPA-PSK-TKIP i ustawiłem nowy klucz. Zmieniłem też hasło dostępowe do samego panelu administracyjnego. Oczywiście jak przystało na produkty "Tepsy" podczas zapisu ustawień ruter się zawiesił i trzeba go było zrebootować... Ponieważ na obu maszynach używam wpa_suplicant + autowifi do konfiguracji sieci bezprzewodowej musiałem tylko wprowadzić stosowne zmiany w pliku /etc/wpa_suplicant.conf. Wygodnym narzędziem jest tutaj skrypt wpa_passphrase generujące klucze na podstawie hasła np. truskawka.
bash-3.2# wpa_passphrase LightnirsAP truskawka
network={
        ssid="LightnirsAP"
        #psk="truskawka"
        psk=c0a02ad935c3878facff559837d3f395d999f53d8e6eba5c74f95145066896c8
}
Poniższy wpis dla przykładowego hasła "truskawka" sprawdza się w moim przypadku.
# LightnirsAP

network={
 ssid="LightnirsAP"    
 key_mgmt=WPA-PSK
 pairwise=TKIP
 group=TKIP
 #psk="truskawka"
 psk=c0a02ad935c3878facff559837d3f395d999f53d8e6eba5c74f95145066896c8
 priority=5
}
Dodatkowo włączyłem filtrowanie adresów MAC dla sieci bezprzewodowej - zawsze to dodatkowe zabezpieczenie. Zastanawiam się co można by jeszcze zrobić by zapewnić dodatkowe bezpieczeństwo. W prawdzie obecne zabezpieczenia w zupełności wystarczą, ale zawsze warto dbać o usprawnianie zabezpieczeń sieci, w szczególności tych bezprzewodowych.

wtorek, kwietnia 07, 2009

Drafts

Nie mierzę czasu w konkretnych jednostkach. Dla mnie jest on jak rzeka. Raz płynie szybciej, a raz wolniej. Chciałem wcześniej znów coś "skrobnąć", ale jakoś ostatnio moją uwagę skupiają inne rzeczy związane z uczelnią. Nawet teraz to się nie zmieniło. Gonią mnie terminy, więc będę się streszczał. Nawiązując do poprzedniego wpisu. Humor mi dopisywał, więc trochę znów naszkicowałem. A ponieważ w moim wypadku dużo pomysłów indukowanych jest muzyką tym razem nie było inaczej. Znalazłem sobie pewne zdjęcie Tarji Turunen i przy nucie "Over the Hill" powstał ten szkic. Niestety nie wyszedł tak jak bym chciał. Parę dni później postanowiłem swoich sił na jednym z dzieł Victorii Frances. Muszę przyznać, że ilekroć przechodzę w empiku obok stoiska z posterami zawsze zatrzymuję się przy kopiach jej prac. Ot, taka moja słabość do obrazów upiornych kobiet w długich sukniach... Tej samej nocy jakieś licho skłoniło mnie, by wyciągnąć znów pastele i zamazać nimi coś większego. Dwie prace w jedną noc - to mój osobisty rekord. Dałem się trochę ponieść impresji i tak powstał taki oto portret: Była to raczej zabawa barwą niż dbanie o detal.

Cóż wrzuciłem to co chciałem pora wracać w świat kodów, liczb i programów...