Kismet Analyze
W założeniach - zestaw skryptów mających na celu uprościć do granic możliwości
korzystanie z programu Kismet (konkretnie Server) na routerze WRT54Gx
przy wykorzystaniu oprogramowania Tomato. Być może po pewnych przeróbkach
zadziała także na innych modelach routerów, innych firmware, może nawet
w innej galaktyce - nie wnikam. Mam WRT54G-TM, Tomato 1.28 i jakby co - SOA#1.
taki magiczny sprzęt przydaje się przy skanowaniu sieci sąsiadom
Nie będę rozwodził się nad przygotowaniami do instalacji. Kto się tym interesuje na poważnie, to wie (albo wie jak się dowiedzieć), jak uruchomić i skonfigurować demona SSH na tym sprzęcie, jak włączyć partycję JFFS (niezbędne). Parę wyjaśnień może wymagać transfer plików do urządzenia, bo to nie jest takie proste. W razie czego zawsze pozostaje stary, dobry tandem vi+wget.
Pokrótce - prezentacja - co i jak, po co to, na co i w ogóle. Na początek komplet skryptów w /jffs/ czeka na odpalenie:
Jest tam też drone, ale założeniem projektu było, aby router był samowystarczalny
- znaczy, że żadne inne oprogramowanie na komputerze niż klient SSH nie jest potrzebne
do jego realizacji. W planach jest także wgranie aircracka i przygotowanie mu równie
odmóżdżających usera skryptów, ale to po wykonaniu SD-Moda. No więc, odpalamy serwer
i idziemy się zająć czymś przyjemnym.
Kiedy uznamy, że znalezionych sieci już jest dużo, możemy przerwać proces (ctrl+c),
i zacząć odprawiać gusła nad zgromadzonym materiałem. Pamiętajmy, żeby nie przerywać
przed komunikatem "Saving data files.", a najlepiej przerwać zaraz po nim - zagwarantuje
to, że dane będą świeże. Oczywiście, częstotliwość zapisu można ustawić w konfigu.
Jak widać, kismet w proponowanej przeze mnie konfiguracji zostawia tylko dwa pliki -
.network i .xml. W domyślnej jest tego trochę więcej (CSV i jakieś binarne dumpy), ale
zwyczajnie szkoda na nie miejsca i szczerze polecam je wyłączyć (binarne dumpy są bezużyteczne
w tej sytuacji, a CSV zawiera tylko listę sieci, dokładnie to co .network). O ile plik
.network można normalnie potraktować cat'em (to tylko lista sieci), o tyle XML zawiera
dane również o klientach. Cat to w tym wypadku nienajlepszy pomysł, zwłaszcza jeśli ilość
klientów idzie w setki. Można grepem... ale po co, skoro mamy AWK, które wydaje się być
wprost stworzone do takich rzeczy. Rezultat analizy pliku .xml przez kismet_analyze
(mało okazały, bo aktualnie w pobliżu nie mam za wiele sieci) wygląda mniej-więcej tak:
jeden AP i jeden podłączony klient - AP to są te z adresem w nawiasach kwadratowych
Czas na konkrety:
- kismet.tar - gotowy do przeniesienia i rozpakowania na routerze w /jffs, zawiera kismet i skrypty
- kismet.tar.gz - j/w, tyle że potraktowane gzipem zajmuje 500 KB a nie prawie 2 MB
- kismet_analyze - skrypt analizujący loga XML
- kismet_drone_start - skrypt pomocniczy uruchamiający drone
- kismet_server_start - skrypt pomocniczy uruchamiający server
Instalacja - polecam potraktować paczkę tar wgetem z poziomu routera, później rozpakować w JFFS. Alternatywną metodą może być kopiowanie z zasobu CIFS. Lasy szumią o SCP, ale nie testowałem. A dla tych mniej klikatych:
cd /jffs/ wget http://derleta.com/software/kismet-analyze/kismet.tar.gz tar -zxvf kismet.tar.gz rm kismet.tar.gz ls -lh