26

Odp: ZTE MF612 częsciowo uwalony i powrót do oryginalnego firmware'u

Próbuję dostać się do tego routera ale narazie z mizernym skutkiem

Po którymś razie udaje mi się zalogować po ssh i uruchomione są takie procesy

[Wive-RTNL@/]# ps T
  PID USER       VSZ STAT COMMAND
    1 Admin     1576 S    {linuxrc} init
    2 Admin        0 SW<  [kthreadd]
    3 Admin        0 SW<  [ksoftirqd/0]
    4 Admin        0 SW<  [events/0]
    5 Admin        0 SW<  [khelper]
    6 Admin        0 SW<  [kblockd/0]
    7 Admin        0 SW   [pdflush]
    8 Admin        0 SW   [pdflush]
    9 Admin        0 SW<  [kswapd0]
   10 Admin        0 SW<  [aio/0]
   11 Admin        0 SW<  [mtdblockd]
   96 Admin     1580 S    /bin/sh
  183 Admin     1564 S    klogd
  187 Admin     1564 S    syslogd -b0 -s40 -l7 -S -D
  747 Admin     1576 S    inetd -R 30 -q 64
  762 nobody     968 S    dnsmasq -N -c 128 --dns-forward-max=128 --no-poll --
  826 Admin     1324 S    goahead
 1161 Admin        0 SW   [RtmpCmdQTask]
 1259 Admin     1572 S    udhcpc -i eth2.2 -S -R -T 5 -a -s /bin/udhcpc.sh -p
 2012 Admin     1260 S    /bin/dropbear -i -K60 -I360 -m
 2064 Admin      972 S    lld2d br0 ra0
 2288 Admin     1576 S    udhcpd -S /etc/udhcpd.conf
 2289 Admin     1576 S    -sh
 2301 Admin     1568 S    sh -c [ ! -f /etc/backup/nvram_backup.dat ] && (slee
 2302 Admin     1560 S    sleep 20
 2305 Admin     1568 R    ps T
[Wive-RTNL@/]#

W jaki sposób mogę z automatu nawiązać połączenie po ssh i odrazu wykonać jakiś skrypt np taki który będzie ubijał mi dane procesy ?

killall goahead lld2d
Podejrzewam że router  poprostu zmula bo ma za dużo procesów.

27

Odp: ZTE MF612 częsciowo uwalony i powrót do oryginalnego firmware'u

ssh root@192.168.1.1 killall goahead lld2d

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

28

Odp: ZTE MF612 częsciowo uwalony i powrót do oryginalnego firmware'u

Po drodze jeszcze trzeba wpisać login i hasło Admin:Admin więc musi być uwierzytelnienie

29

Odp: ZTE MF612 częsciowo uwalony i powrót do oryginalnego firmware'u

No to wprowadź hasło do ssh, w czym problem?

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

30

Odp: ZTE MF612 częsciowo uwalony i powrót do oryginalnego firmware'u

Problemem jest czas. Zauważyłem że router po restarcie po jakimś czasie da odpowiedź do ok 7 pingów po czym kolejny jest nie udany. Podejrzewam że wtedy bootloader czeka na wybór opcji ale niestety wciskałem zarówno przycisk WPS jak i ten pomarańczowy co załącza zasilanie (tylko za 1 razem) i boot loader nie staje. Później po tej przerwie 1 pinga pingi znowu powracają i jak szybko po ssh dostanę się do routera to jeszcze coś wpiszę. Konsola chodzi w miarę ok ale później już loteria.

Potrzebowałbym więc spróbować takiego rozwiązania które z automatu mi się zaloguje z loginem i hasłem i wpisze jakieś polecenie i je wykona.

31

Odp: ZTE MF612 częsciowo uwalony i powrót do oryginalnego firmware'u

sshpass -p Admin ssh -oStrictHostKeyChecking=no Admin@192.168.1.1 killall goahead lld2d

Czy tak ma masz. sshpass musisz sobie doinstalować jak nie masz.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

32

Odp: ZTE MF612 częsciowo uwalony i powrót do oryginalnego firmware'u

Zaraz to sprawdzę bo lecę na 2 komputer bo obydwa routery (padnięty i dobry) mają adres 192.168.1.1

Mam pytanie jeszcze odnośnie jtaga bo uarta nie znalazłem sad.

Mam programator avr-jtag ice na usb do atmegi. Można go użyć oczywiście przy odpowiednim podpięciu pinów z wtyczki 10 pinowej do mojego routera ?

33

Odp: ZTE MF612 częsciowo uwalony i powrót do oryginalnego firmware'u

Narazie mam połowiczny sukces
Udało mi się zrobić taki skrypt przy pomocy Cezarego że ubił mi te procesy co podejrzewałem że zatrzymują router
Teraz po ssh mogę normalnie pisać. Ubiłem tylko goahead - serwer www i wyładowałem moduł wifi.

Niestety partycja jest inna niż ta oryginalna bo jest coś w ten deseń
mtd0: 00030000 00010000 "Bootloader"
mtd1: 00010000 00010000 "Config"
mtd2: 00010000 00010000 "Factory"
mtd3: 000c587b 00010000 "Kernel_stub"
mtd4: 002ba785 00010000 "RootFS_stub"
mtd5: 00030000 00010000 "RW-FS"
mtd6: 00380000 00010000 "Kernel FS"

Mam do dyzpozycji polecenie mtd_write i oryginalny chodzący obraz.
Jak to sflashować ?

34

Odp: ZTE MF612 częsciowo uwalony i powrót do oryginalnego firmware'u

A pamiętasz jak wyglądał oryginalny układ partycji? Spisałeś to?

Strzelam ze do zastąpienia są mtd3 do mtd6

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

35

Odp: ZTE MF612 częsciowo uwalony i powrót do oryginalnego firmware'u

Na 100% mtd3..6 były inne
Niestety raczej nie mam tego spisanego. Ewentualnie może da radę jakoś to wyłuskać z oryginalnego pliku .bin ?
Jest jakieś polecenie mtd_write które zapisuje cały firmware do pamięci flash ?

36 (edytowany przez viper_lasser 2013-07-30 23:58:40)

Odp: ZTE MF612 częsciowo uwalony i powrót do oryginalnego firmware'u

Jednak zapiski są na forum smile
http://eko.one.pl/forum/viewtopic.php?id=5406&p=2
mtd0: 00030000 00010000 "Bootloader"
mtd1: 00010000 00010000 "Config"
mtd2: 00010000 00010000 "Factory"
mtd3: 000f0000 00010000 "Kernel"
mtd4: 006c0000 00010000 "RootFS"

37

Odp: ZTE MF612 częsciowo uwalony i powrót do oryginalnego firmware'u

Nie, tego nie da się wyłuskać z pliku.

http://eko.one.pl/forum/viewtopic.php?pid=65977#p65977

W lutym to pokazałeś.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

38

Odp: ZTE MF612 częsciowo uwalony i powrót do oryginalnego firmware'u

Muszę usunąć partycję mtd3..6 i ręcznie jakoś stworzyć te brakujące ?
Jakie polecenie jest wywoływane w przypadku flashowania poprzez przeglądarkę jak wybiera się cały plik bin ?

39

Odp: ZTE MF612 częsciowo uwalony i powrót do oryginalnego firmware'u

Jaki tam w ogóle jest bootloader?

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

40

Odp: ZTE MF612 częsciowo uwalony i powrót do oryginalnego firmware'u

Nie wiem jak to sprawdzić bo nie mogę zlokalizować uarta.
Podpowie ktoś w jaki sposób mogę za pomocą polecenia mtd_write wgrać cały firmware ?
Na wiki openwrt piszą że ogólnie od bootloadera się to zaczyna w hex bajtami 27 05 19 56 czyli "HDR0"
http://wiki.openwrt.org/doc/techref/flash.layout

41

Odp: ZTE MF612 częsciowo uwalony i powrót do oryginalnego firmware'u

Jeżeli to zwykły mtd to sprawdź

mtd_write -r write /tmp/plik.xxx Kernel_stub:RootFS_stub

Czy zadziała - zależy od mtd. Ostrożnie - nie znalazłeś uarta, więc jak go uwalisz to będziesz jak już za programatorem biegał, nie wiedząc czy zadziała.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

42 (edytowany przez viper_lasser 2013-07-31 10:47:59)

Odp: ZTE MF612 częsciowo uwalony i powrót do oryginalnego firmware'u

Nie jestem pewien jaki obraz wgrać
Ten pierwszy jest oryginalny
http://fastwork.pl/karol/root_uImageo2f
a drugi pozbawiony nagłówka żeby można było go rozpakować do skompilowanych źródeł.
http://fastwork.pl/karol/root_uImageo2f_noheader

Orygnalny obraz partycji wygląda tak

mtd0: 00030000 00010000 "Bootloader"
mtd1: 00010000 00010000 "Config"
mtd2: 00010000 00010000 "Factory"
mtd3: 000f0000 00010000 "Kernel"
mtd4: 006c0000 00010000 "RootFS"

a aktualny tak

mtd0: 00030000 00010000 "Bootloader"
mtd1: 00010000 00010000 "Config"
mtd2: 00010000 00010000 "Factory"
mtd3: 000c587b 00010000 "Kernel_stub"
mtd4: 002ba785 00010000 "RootFS_stub"
mtd5: 00030000 00010000 "RW-FS"
mtd6: 00380000 00010000 "Kernel FS"

i nie jestem pewien do końca co do adresów.

Wywołanie tego polecenia wpisze mi obraz pod adres 2ba785 (+ odpowiedni offset) a oryginalnie jest f0000 (+ odpowiedni ofset)

mtd_write -r write /tmp/plik.xxx Kernel_stub:RootFS_stub


Nie jestem pewien ale chyba trzeba jakoś ręcznie najpierw utworzyć odpowiednie partycje ?

A tak wogóle to system wykrywa mi tylko 16MB pamięci i stąd pewnie te zwiechy routera zaraz po uruchomieniu.

43

Odp: ZTE MF612 częsciowo uwalony i powrót do oryginalnego firmware'u

Jeżeli to uboot to nie, nie masz jak. Kod w kenrelu tworzy logiczny podział, nie ma tego na stałe jak np w redboocie jest.

Tak w ogóle to zgraj sobie mtd0 i zobacz jakie napisy w nim jest, dowiesz się czym jest bootloader.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

44

Odp: ZTE MF612 częsciowo uwalony i powrót do oryginalnego firmware'u

Nie mam jak teraz tego sprawdzić bo jestem poza domem ale wydaje mi się że uboot nie został podmieniony po zmianie firmware'u

Tutaj jest zrzut z mtd0 przed flashowaniem.
http://eko.one.pl/forum/viewtopic.php?pid=80995#p80995

Zatem w/w polecenie
mtd_write -r write /tmp/plik.xxx Kernel_stub:RootFS_stub

wpisze mi zawartość pliku tylko z firmware'm ?

Który plik wybrać ten z nagłówkiem zaczynającym się od 27 05 19 56 ?

45

Odp: ZTE MF612 częsciowo uwalony i powrót do oryginalnego firmware'u

Ralinkowy.

W/w polecenie wpisze dane tam gdzie mu pokazałeś, Kernel_stub:RootFS_stub w tym przypadku. Zastanów się dobrze póki jeszcze działający sprzęt masz. Żebyś cegły z niego nie zrobił.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

46

Odp: ZTE MF612 częsciowo uwalony i powrót do oryginalnego firmware'u

Ralinkowy czyli oryginalny plik.
Doskonale zdaję sobie sprawę i dlatego dopytuję o ten firmware.

Mógłbyś Cezary sprawdzić czy ten link
http://fastwork.pl/karol/root_uImageo2f

zawiera firmware, nie ma bootloadera itp.

Nie wiem właśnie tego czy oryginalny firmware zawiera bootloader i wszystko co trzeba czy jak.
A jeśli jednak zawiera to czy muszę jakoś wyłuskać tylko firmware żeby wgrać go do partycji Kernel_stub:RootFS_stub

47

Odp: ZTE MF612 częsciowo uwalony i powrót do oryginalnego firmware'u

To zwykły uImage kompresowany lzma. Kernel + filesystem znaczy się.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

48

Odp: ZTE MF612 częsciowo uwalony i powrót do oryginalnego firmware'u

Aha wiec można flashowac pod Kernel_stub:RootFS_stub ?

mtd_write -r write /tmp/plik.xxx Kernel_stub:RootFS_stub

49

Odp: ZTE MF612 częsciowo uwalony i powrót do oryginalnego firmware'u

Możesz sprawdzić czy to mtd_write pozwoli na to.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

50

Odp: ZTE MF612 częsciowo uwalony i powrót do oryginalnego firmware'u

Narazie póki co nie flaszowałem bo okazało się że mam za mało ramu i pod koniec transferu prędkość przesyłania spadała aż do 0

Jednym z problemów z dostaniem się do routera jest to że mój skrypt ubijający procesy nie zawsze działa

Wygląda on tak
rm /root/.ssh/known_hosts
sshpass -p Admin ssh -oStrictHostKeyChechking=no Admin@192.168.1.1 killall -q goahead killall -q SIGKILL goahead wifi_unload.sh


Pomysł na wywalenie niepotrzebnych procesów wziąłem stąd
https://gitorious.org/wive-rtnl-ralink- … scripts/fs

gdzie interesująca część z komendy fs fullreset jest taka

fullreset() {

    echo "Stop services and unload modules..."

    killall -q goahead

    killall -q -SIGKILL goahead

    wifi_unload.sh

    echo "Erase RW-FS partitions"

    mtd_write erase RW-FS

    burnrf

    echo "Clear Config partitions."

    nvram_clear 2860

    reboot

}

Nie wiem w jaki sposób mogę zawsze szybko po restarcie routera doprowadzić go do tego żeby nie działał proces goahead