Od dwóch lat na stronie cyklicznie publikowałem wpisy dotyczące programu SamKnows. Już w pierwszym z nich Zmierz swój internet czyli SamKnows pisałem o 2-letnim okresie trwania badań i routerze TP-Link, który po tym czasie staje się naszą własnością. W międzyczasie projekt został przedłużony, bez określenia daty zakończenia, ale wolontariusze z 24 miesięcznym stażem mogą wycofać swój udział i zatrzymać router TL-WR741ND lub TL-WR1043ND, co również opisałem tutaj Zakończenie projektu SamKnows po 2 latach. Sprzęt zawiera specjalnie dostosowane oprogramowanie openWRT bazujące na Linuksie i nie da się w prosty sposób korzystać z niego jak z typowego routera. Support SamKnows nie pomaga byłym wolontariuszom we wgraniu oprogramowania, więc postanowiłem dokładnie opisać cały proces na przykładzie TL-WR741ND.
Przeróbkę whiteboxa w pełnowartościowy router warto zacząć od przygotowania niezbędnych narzędzi. Potrzebne będzie oprogramowanie zgodne z posiadanym sprzętem.
UWAGA!!! Wgranie nieprawidłowego pliku BIN do whiteboxa spowoduje brak komunikacji przez port LAN, a cofnięcie pomyłki będzie dosyć trudne dla przeciętnego użytkownika komputera!
Nim ściągniemy firmware, proponuję dokładnie sprawdzić model i wersję sprzętową (hardware) posiadanego tp-linka. W moim przypadku jest to TL-WR741ND i ver. 2.4, a informację taką można znaleźć na etykiecie przyklejonej do spodu obudowy:
Zdecydowałem się wgrać bardzo dobre i stabilne moim zdaniem oprogramowanie Gargoyle by obsy (modyfikowane przez Cezarego Jackiewicza). Z dostępnych na stronie obrazów, interesuje nas wersja factory, czyli pełna, przewidziana do aktualizacji z oryginalnego firmware. Ściągnąłem ze strony http://ecco.selfip.net/gargoyle-pl/attitude_adjustment/ar71xx/ najnowszą, dostępną wersję:
Następny etap, to aplikacja umożliwiająca zestawienie połączenia telnet. Można wykorzystać wbudowany klient w Windows 7 (najczęściej trzeba go doinstalować z poziomu Programy i Funkcje), lub posłużyć się niezawodnym putty, do pobrania stąd http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html. Potrzebny jest jeszcze lokalny serwer www lub ftp, gdyż z niego router pobierze oprogramowanie. Można skorzystać z apache, czy windowsowego IIS. Ja pobrałem FileZilla Server, która po instalacji wymaga kilku zmian w konfiguracji. Po zainstalowaniu i uruchomieniu panelu administracyjnego, należy wejść w ustawienia serwera (ikonka z kołem zębatym, trzecia od lewej), wybrać zakładkę Security Setting i odznaczyć dwie opcje, by okno wyglądało jak niżej:
Pozwoli nam to na łączenie się z dowolnego IP do serwera, co znacznie ułatwi nam proces aktualizacji. Następnie przechodzimy do ustawień Users (czwarta ikonka od lewej z jedną głową), w okienku Users po prawej wciskamy [Add] i dodajemy użytkownika o nazwie anonymous z pustym hasłem, upewniamy się, że opcja Eneble account jest zaznaczona:
Przechodzimy do zakładki Shared folders i mając zaznaczonego użytkownika anonymous, wciskamy [Add] w części Shared folders i wskazujemy katalog na dysku komputera, do którego połączy się klient ftp, ja założyłem wcześniej folder c:\temp, upewniamy się, że przed ścieżką pojawi się literka H, jeśli jej nie ma, podświetlamy ścieżkę i wciskamy [Set as home dir]. Dzięki temu będzie to domyślny katalog użytkownika:
Do wskazanego folderu wrzucamy plik z firmware, zmieniając jego długą nazwę na krótką, prostą, z rozszerzeniem bin, np. u mnie było to gg.bin zamiast gargoyle-1.6.0.1-ar71xx-tl-wr741nd-v2-squashfs-factory.bin. Na koniec trzeba wyłączyć firewalla (zapora systemu Windows, inna, np. wbudowana w antywirusa) lub dodać wyjątek na port 21. Ja zrobiłem test utworzonego serwera ftp – podłączyłem się programem FileZilla Client. Połączenie zakończyło się sukcesem, a w okienku po prawej ujrzałem plik gg.bin, czyli wszystko w porządku:
Zamiast FileZilla Client, można wpisać w przeglądarkę ftp://localhost lub ftp://nasze_ip.
Kolejny etap to wyłączenie innych kart sieciowych z TCP/IP (np. wifi), a połączenie przewodowe musi mieć ustawiony statyczny adres 192.168.1.2 oraz maskę 255.255.255.0, brama 192.168.1.1, DNSy nie są potrzebne.
Wszystkie wyżej wymienione programy oraz firmware do TL-WR741ND ver. 2 można pobrać tutaj: >> Narzędzia do odblokowania whitebox WR741ND v2 <<
Komunikacja z Whiteboxem jest możliwa, po wprowadzeniu go w specjalny tryb. W tym celu należy włączyć zasilanie routera i wciskać przycisk QSS do momentu, aż kontrolka z ikoną słoneczka zacznie szybko migać. Wygląda to tak:
Teraz można podłączyć whiteboxa do komputera, wtykając patchcord (kabel sieciowy) do jednego z portów LAN i karty sieciowej. Na komputerze uruchamiamy putty i uzupełniamy pola jak na poniższym screenie:
Po wciśnięciu [Open], powinno nastąpić połączenie z routerem:
Pierwsza komenda, jaką należy wpisać to:
mount_root
Po zatwierdzeniu komendy klawiszem [Enter], router powinien zwrócić
switching to jffs2
następnie wpisujemy instrukcję pozwalającą na przejście do folderu tmp:
cd /tmp
teraz czas na pobranie firmware, udostępnionego przez uruchomiony przed chwilą serwer ftp, wpisujemy:
wget ftp://192.168.1.2/gg.bin
Gdy plik gg.bin o rozmiarze 3840kB zostanie pobrany w 100%, można go wgrać do pamięci flash, wpisując:
mtd -r write /tmp/gg.bin firmware
Po kilku minutach router uruchomi sie ponownie. Cały wyżej opisany proces wygląda tak:
Po restarcie urządzenia, na karcie sieciowej komputera można ustawić pobieranie adresu z DHCP. Po wpisaniu w przeglądarce adresu 192.168.1.1 uzyskamy dostęp do panelu administracyjnego nowego oprogramowania, domyślne hasło to password.
Po zalogowaniu otrzymujemy mnóstwo różnych możliwości ustawień, których próżno szukać w “fabrycznym” oprogramowaniu wgrywanym przez TP-Link. Tym samym cały proces hackowania routera TP-WR741ND można uznać za zakończony.
Decydując się na wgranie innej wersji oprogramowania, upewnij się trzy razy, czy na pewno jest ona kompatybilna z posiadanym routerem. W sieci można znaleźć mnóstwo informacji o uszkodzeniu tp-linka przez wgranie niewłaściwego oprogramowania.
Jeśli uważasz, że nie poradzisz sobie samodzielnie z załadowaniem Gargoyle do Twojego routera z programu SamKnows, napisz do mnie maila (kontakt ze mną), a postaram się pomóc.
Mega tanie, bezprzewodowe moduły Internet of Things na dobre zadomowiły się w naszych sieciach. Od…
Pewnie nie każdy posiadacz tytułowej stacji lutowniczej wie, że posiada ona możliwość aktualizacji firmware'u. Producent…
Jakiś czas temu, przeglądając Aliexpress natknąłem się na ciekawy shield do Arduino Nano. Według opisu…
W mailach i komentarzach kilka razy przewijała się prośba o ten wpis. Chodzi o aktualizację…
Dziś tematyka audio, a nawet audiofilska. Uznany wzmacniacz słuchawkowy Lehmann Black Cube Linear o dość…
Tradycyjnie w styczniu, publikuję podsumowanie minionego roku na stronie grylewicz.pl. Poniżej trochę liczb, lista najpopularniejszych…
Zobacz komentarze
u mnie gargoyle niestety nie chciało gadać z RT-N16 z Tomato na pokładzie, w trybie klienta WDS, a próbowałem różnych wersji, za to na oryginalnym, TP-Linkowym firmware działa pięknie... obsługuje w tej chwili 1 komputer stacjonarny, 3 tablety i smartfon
Przez pół dnia zamiast ftp wpisywałem http :D Wielkie dzięki, w końcu działa :)
@ghoes To pewnie wina Tomato ;). Ogólnie WDS to tryb bardzo wrażliwy na sprzęt i firmware i często są z nim problemy.
Wgranie softu banalne jednak z moim Tp-linkiem td-w8961nd w żaden sposób nie idzie na wds ani na oficjalnym ani na gargoileu, a szkoda... chyba, że źle konfiguruje, natomiast Airlive 5460ap i td-8961nd wds działa bez problemów już od dłuższego czasu
Gdyby ktoś miał Windows 8.1 i wyłączył zaporę w Antywirusie, trzeba pamiętać żeby też w panelu sterowania wyłączyć zaporę systemową. Po tym zabiegu wszystko poszło jak spłatka.
Ja wgrałem do swojeg TP-Linka WRT741ND DDWRT. Najnowszego z tej strony http://dd-wrt.com/site/support/other-downloads?path=others%2Feko%2FBrainSlayer-V24-preSP2%2F
Do naszego TP-linka jeśli chodzi o DDWRT zawsze wgrywamy (tplink_tl-wr741ndv1) jeszcze raz podkreślę v1 :)
Nie zadziałało u mnie - router do kosza po nieudanej próbie pomimo iż wszystko było idealnie router nie chciał się zresetować.
@anonymous Być może firmware był nieodpowiedni do sprzętu lub jakieś zakłócenia przy wgrywaniu. Taki router można naprawić, ale jeśli nie czujesz się na siłach i chcesz go wyrzucić, lepiej wyślij go do Cezara z eko.one.pl, który ma bardzo duży wkład w rozwój openwrt.
Wszystko dokładnie podane za jednym wyjątkiem - ustawienia Putty. Brak informacji o konieczności zamiany domyślnych ustawień w:
Connection-->Telnet-->Telnet negotiation Mode na Passive (jest Active) .
Bez tego nie dało się zalogować na ruter. Potem operacja przebiegła bezbłędnie i wgrałem oryginalne firmware TP-Linka. Ruter OK.
Sprawdzałem teraz i faktycznie domyślnie jest to ustawione na active, ale w moim przypadku nie musiałem tego zmieniać. (odblokowałem ok. 8 routerów). Dzięki za dodatkowe info.
Czy wystarczy przenieść skrypty na inny router z OpenWRT aby symulował działanie Whiteboxa? Mam stary router którego już nie używam (tylko 100Mb, WiFi tylko 2.4GHz) i zastanawiam się czy nie zrobić "podmiany" sprzętowej, bo jestem w programie tylko rok. Masz z tym jakieś doswiadczenie?
Nie wiem, czy zadziała sposób, który opisałeś.
Witam. Próbowałem odblokować tą metodą WDR3600 (N600). Na początku szło dobrze. Wgrałem plik .bin do katalogu tmp. Niestety ostania komenda mtd -r write /tmp/gg.bin firmware nie poszła.
Nie rozpoznaje "firmware" i klops, nie wiem co tam wpisać????
A w programie byłem tylko 1,5 roku. Jak podniesiono mi prędkośc downloadu do 200Mbit/s pomiary pokazywały dziwne wyniki (od 30 do 190Mbit/s). Konsultant SamKnows po paru miesiącach przyznał, że nie mają dla mnie wystarczająco szybkiego serwera i wyłączyli mnie z badań...
Gratuluję i zazdroszczę szybkiego netu. Nie znam tego routera. Zakładam, że ściągasz plik jakas_tam_ nazwa.bin, zmieniasz mu nazwę na gg.bin, wgrywasz plik gg.bin do tmp i później robisz mtd -r write /tmp/gg.bin. Chodzi o to, że plik który wgrywasz i ten który później wywołujesz w ostatniej komendzie ma taką samą nazwę. Ja wpisałem dla przykładu gg.bin, bo trudniej zrobić literówkę w tak krótkiej nazwie.