środa, kwietnia 20, 2011

Bus wardriving

Ta notka leżała u mnie dłuższy czas w szkicach roboczych. Wreszcie znalazłem czas by ją ukończyć.

Od dwóch miesięcy mam nowy telefon, a dokładniej to smartfon HTC Wildfire. Jestem po prostu oczarowany możliwościami jakie daje otwarta architektura jaką jest Android. Najpierw trochę czasu mi zajęło oswojenie się z interfacem dotykowym, a następnie zaczęły się zabawy z testowaniem miliona aplikacji jakie są dostępne na Android Market. Testowałem wszystko począwszy od gier w kulki, a skończywszy na kliencie SSH. Po jakimś czasie uświadomiłem sobie, że skoro smartfon ma wbudowaną kartę wifi oraz czujnik GPS to w zasadzie można by spróbować wardrivingu. Zawsze chciałem spróbować czegoś takiego. Kiedyś nawet podchodziłem do tego tematu z laptopem i nawigacją gps. W zasadzie to pomysł miał ręce i nogi - laptop zbierał dane wifi, a nawigacja miała wysyłać dane gps przez połączenie szeregowe bluetooth. Ktokolwiek miał (nie) przyjemność bawienia się Windowsem CE ten wie ile się trzeba nagimnastykować, by zainstalować oprogramowanie wraz z odpowiednimi bibliotekami na dedykowaną sprzętowo architekturę. Mówiąc krótko za chiny nawigacja nie chciała łyknąć odpowiedniej instalacji .NET Compact Framework, bez której nic nie chciało ruszyć. Wracając do tematu. Poszperałem na markecie, przetestowałem kilka aplikacji i najbardziej do gustu przypadł mi G-MoN. Postanowiłem go przetestować w warunkach polowych. W chwili kiedy to piszę nieczynna jest w Gdańsku linia tramwajowa przebiegająca przez cały Wrzeszcz i kursuje autobusowa linia zastępcza. Jadąc właśnie tym autobusem, siedząc przy oknie odpaliłem niewinnie wyglądający telefon i zacząłem zbierać dane... ]:) Ciekawą funkcją G-MoNa jest możliwość eksportu do formatu KML, który można następnie wczytać do Google Earth. Jednak kiedy to zrobiłem okazało się, że dla zebranych przeze mnie danych niewidoczne są nazwy wykrytych sieci co spowodowane było brakiem tagu <name> dla danej geolokacji. Ale nie ma takiego problemu z konwersją plików tekstowych, których nie można rozwiązać za pomocą odrobiny magii w konsoli. Uwaga, proszę się odsunąć - użyję wyrażeń regularnych ]:P sed 's/<description>\([[:alnum:]]*\)/\<name\>\1\<\/name\>\<description\>/' gmon-orginal.kml > gmon.kml Po ponownym wczytaniu do Google Earth można było już wygodniej oglądać trasę. A na koniec trochę statystyk z całej tej zabawy. Łącznie znalazłem 635 punktów dostępowych. Pocieszające jest, że powyżej 75% z nich używa zabezpieczeń WPA - widać ludzie zaczynają myśleć. Jeśli chodzi o nazwy sieci to wśród domyślnych nazw króluje UPC, linksys oraz wiecznie-żywa neostrada. Jako ciekawostkę powiem, żę tylko 3 AP z neostrady zostały sensownie zabezpieczone poprzez WPA-PSK, a reszta używa domyślnego WEP. Zawsze to powtarzam - telekomuna to zło.