Elektroda.pl
Elektroda.pl
X
Servizza
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Huawei B593s-22 - Dostęp do b593s-22 - Putty SSH, "downloadconfigfile.conf

Re.Mastered.M 04 Mar 2018 20:57 2289 8
  • #1 04 Mar 2018 20:57
    Re.Mastered.M
    Poziom 10  

    Witam wszystkich zainteresowanych tematem modyfikacji, usprawniania działania i wzmocnienia bezpieczeństwa pracy na routerze Huawei b593-s22.

    UWAGA !!!
    Jeżeli jesteś posiadaczem tego urządzenia powinieneś NATYCHMIAST zmienić hasła dostępu CLI w swoim urządzeniu - firma Huawei stosuje jednakowe domyślne hasła dla tej samej serii urządzeń - jest to bardzo NIEBEZPIECZNE i lekkomyślne podejście producenta narażające cię na dostęp osób niepowołanych do twojej sieci !!!


    Kilka zdań Off-topic:
    Opracowuje zgrabną aplikację do modyfikacji zarówno firmware jak i zarządzania zdalnego tego routera, jednakże jest to duży projekt, a że zajmuje się tym hobbystycznie to i czasu nie mogę mu poświęcić tyle ile bym chciał. Teraz nadchodzi wiosna więc następny miesiąc spędzę na działce (300m2 i "amerykanki" już czekają). Postanowiłem więc opisać procedurę dekodowania pliku konfiguracyjnego oraz haseł dostępu do urządzenia w trosce o bezpieczeństwo użytkowników sieci.

    Do rozszyfrowania pliku: downloadconfigfile.conf potrzebny ci będzie: OpenSSL.
    Do rozszyfrowania haseł polecam darmowy: BP-Tools

    Proponuje BP-Tools bo OpenSSL sprawiał problemy na moim komputerze (a to nie mógł otworzyć/odnaleźć pliku, a to trzeba mu było utworzyć plik konfiguracyjny), a poza tym jest to aplikacja z wiersza poleceń.

    Przejdźmy do rzeczy:

    Aby rozszyfrować plik konfiguracyjny wystarczy polecenie:

    openssl enc -d -aes-128-cbc -in downloadconfigfile.conf -out downloadconfigfile.xml -K 3E4F5612EF64305955D543B0AE350880 -iv 8049E91025A6B54876C3B4868090D3FC -nopad


    Aby zaszyfrować:

    openssl enc -e -aes-128-cbc -in downloadconfigfile.xml -out downloadconfigfile.conf -K 3E4F5612EF64305955D543B0AE350880 -iv 8049E91025A6B54876C3B4868090D3FC -nopad


    Jak łatwo się domyślić algorytmem jest tu AES 128 CBC Key:3E4F5612EF64305955D543B0AE350880 ; IV:8049E91025A6B54876C3B4868090D3FC .
    Trzeba jednak uważać na rozmiar pliku - musi to być wielokrotność 16 bajtów -> Huawei stosuje niekonwencjonalną metodę jak na AES CBC, a mianowicie ZERO "padding" (gdy zmienisz rozmiar pliku przyda ci się jakiś HEX edytor by dodać kilka "00" na końcu pliku - tak aby rozmiar w bajtach podzielony przez 16 nie dawał reszty).

    ===================================================

    Rozszyfrowywanie haseł z pliku konfiguracyjnego:


    Huawei B593s-22 - Dostęp do b593s-22 - Putty SSH, "downloadconfigfile.conf






    Rozszyfrowany plik konfiguracyjny jest formatu *.xml, a więc do edycji potrzeby będzie jakikolwiek edytor tekstu... Powyższy "print screen" obrazuje fragment tego pliku z domyślnymi hasłami dostępu do WebGUI routera - dla konta "admin" zaszyfrowanym hasłem jest tu: f3nGyuud1GOwq4E1LtMDbWcQgRAK3uxuUf+Ezxi0qq6OXeW9/qX22A== .

    Przystępujemy zatem do deszyfracji:

    1. Z menu "Generic" programu BP-Tools (Cryptographic Calculator) wybieramy 'Base64' :
    Huawei B593s-22 - Dostęp do b593s-22 - Putty SSH, "downloadconfigfile.conf


    i dekodujemy nasze hasło do postaci szesnastkowej:
    Huawei B593s-22 - Dostęp do b593s-22 - Putty SSH, "downloadconfigfile.conf


    2. Z menu "Generic" programu wybieramy 'DES' ( '3DES' , 'CBC' , 'Heksadecimal' , 'Padding: None' ). Klucz do deszyfracji to: K:3E4F5612EF64305955D543B0AE3508807968905960C44D37 ; IV:8049E91025A6B548 . Deszyfrowany będzie ciąg HEX z poprzedniej operacji, a więc: 7F79C6CAEB9DD463B0AB81352ED3036D671081100ADEEC6E51FF84CF18B4AAAE8E5DE5BDFEA5F6D8 :

    Huawei B593s-22 - Dostęp do b593s-22 - Putty SSH, "downloadconfigfile.conf


    3. Z menu "Generic" programu wybieramy 'Character encoding' -> 'Heksadecimal->binary' i en-kodujemy dane powstałe po deszyfracji "3DES", a więc: 63585268636B5A534E4667363976424E4A53494865426C7948456C583951345643513D3D00000000 :

    Huawei B593s-22 - Dostęp do b593s-22 - Putty SSH, "downloadconfigfile.conf



    4. Powstały ciąg znaków (Base64) należy PODZIELIĆ na 2 części -> w pierwszej części należy użyć 12 (!!!) znaków : cXRhckZSNFg6 ; w drugiej części znaki pozostałe : 9vBNJSIHeBlyHElX9Q4VCQ== .
    Z menu 'Character encoding' wybieramy 'ASCII Text -> Heksadecimal' i en-kodujemy znaki osobno dla dwóch części:

    Huawei B593s-22 - Dostęp do b593s-22 - Putty SSH, "downloadconfigfile.conf


    5. Pozostając w 'Character encoding' - 'ASCII Text -> Heksadecimal' w polu 'Data' wpisujemy liczby od 1 do 8 na końcu których dodajemy en-kodowane znaki z pierwszej części (8 znaków, ':' pomijamy) poprzedniego punktu, a więc w tym przypadku całość to: 12345678qtarFR4X :

    Huawei B593s-22 - Dostęp do b593s-22 - Putty SSH, "downloadconfigfile.conf



    6. Posiadając wystarczającą już ilość danych z menu "Generic" programu wybieramy 'AES' ('AES-128' , 'ECB" , 'Hexadecimal'). Kluczem jest tu ciąg heksadecymalny z poprzedniego punktu (12345678qtarFR4X), a więc : 31323334353637387174617246523458 . Rozszyfrowany będzie ciąg heksadecymalny z drugiej części (patrz punkt 4. 9vBNJSIHeBlyHElX9Q4VCQ==), czyli : F6F04D2522077819721C4957F50E1509


    Huawei B593s-22 - Dostęp do b593s-22 - Putty SSH, "downloadconfigfile.conf



    7. Na koniec z menu "Generic" programu wybieramy 'Character encoding' -> 'Heksadecimal->binary' i en-kodujemy uzyskaną wartość, tj.: 61646D696E0000000000000000000000 do znaków ASCII i tak oto uzyskujemy hasło (w tym konkretnym przypadku) admin ("00" pomijamy !!!)

    Huawei B593s-22 - Dostęp do b593s-22 - Putty SSH, "downloadconfigfile.conf


    ===================================================


    Chcąc zmienić obowiązujące hasło na routerze należy postąpić w odwrotnej kolejności z tym, że :
    -należy utworzyć sobie unikalną kombinację ośmiu znaków (małe i duże litery + cyfry) będzie to druga połówka klucza do szyfrowania AES ECB (pierwsza połówka to 12345678 i tak ma zostać),
    -wymyślić/wygenerować unikalne hasło (max 16 znaków - w przypadku krótkiego hasła do postaci heksadecymalnej należy uzupełnić "00" zerami do łącznej długości 16 bajtów),
    -na etapie szyfrowania '3DES' -> "Data Input" = 'ASCII' -> "Padding Method" = 'Zeros',
    -jak wszystko pójdzie dobrze to zakodowane nowe hasło będzie długie na 56 znaków i należy je nadpisać w odpowiednim miejscu pliku konfiguracyjnego.


    Do tego tematu załączam log z całej operacji (log zawiera również kroki odwrotne tj. szyfrowania hasła) ... na pewno będzie pomocny.

    BP-Tools..g.txt Download (5 kB)Punkty: 0.5 dla użytkownika

    Zachęcam użytkowników forum biegłych w tworzeniu plików wsadowych, programów w językach wysokiego poziomu do ogarnięcia tematu dla mniej świadomych tematu użytkowników.
    Sam jestem zwolennikiem asm, co najwyżej ANSI C , a mój projekt jest dość rozległy i kilka miesięcy jeszcze mi na jego opanowaniu zejdzie.

    UWAGA !!!
    Znając hasło do CLI routera możesz konfigurować urządzenie poprzez "ATP/shell/AT commands" nie polecam tego jednak, gdyż może to doprowadzić do uszkodzenia systemu operacyjnego urządzenia - takie urządzenie będzie trudne w naprawie o ile w ogóle da się je naprawić. !!!



    P.S.
    Jedynie hasła do WebGUI oraz CLI są zaszyfrowane jednocześnie algorytmami 3DES oraz AES_ECB... Pozostała część haseł wymaga jedynie użycia algorytmu AES_ECB -> "log" z rozkodowywania przykładowego hasła do Wifi poniżej:

    Huawei B593s-22 - Dostęp do b593s-22 - Putty SSH, "downloadconfigfile.conf



    Pozdrawiam.

    0 8
  • Servizza
  • #2 07 Mar 2018 16:44
    kolopeter2
    Poziom 11  

    haslo wyciagnalem robiac maly trik z ftp i udostepnieniem calego glownego katalogu. nawilem sie takze w edycje plikow na zywym organizmie. modem jakos przezyl . przynajmniej drugi. ciekawi mnie gdzie znalazles opcje aby odblokowac czestotliwosci. bawilem sie modemem ze dwa lata temu i juz malo pamietam, ale hasla gdzies jeszcze mam, wiec zalogowac sie i zrobic rw to nie problem. z twoich experymentow proponowalbym ,abys przygotowal jakis soft , gdzie mialbys te wszystkie opcje odblokowane.
    ps. tez mnie zdziwilo ,ze pl byl zagwiazdkowany.

    0
  • #3 09 Mar 2018 10:36
    Re.Mastered.M
    Poziom 10  

    kolopeter2 napisał:
    haslo wyciagnalem robiac maly trik z ftp i udostepnieniem calego glownego katalogu...


    Witam,
    co do metody na przechwycenie metody "POST - dla FTP", lub innej znanej -> poprzez "Ping" to działały ona wyłącznie na modelu b593u-12, dla modelu s-22 powyższe triki są nieskuteczne (po podmianie katalogu docelowego i tak ląduje się w /mnt) , a jedynym wyjściem aby uzyskać dostęp do urządzenia było podpięcie się pod UART.

    Cytat:
    "... ciekawi mnie gdzie znalazles opcje aby odblokowac czestotliwosci..."


    To stwierdzenie dotyczy mojego starego tematu w którym wydawało mi się, iż wystarczy jedynie edycja plików html/js, aby uzyskać wybór częstotliwości... :-? :

    Huawei B593s-22 - Dostęp do b593s-22 - Putty SSH, "downloadconfigfile.conf


    Niestety to nie wystarczy należy jeszcze edytować/podmienić plik (bibliotekę) libatchannel_modematcommand.so znajdującą się w katalogu /atp/lib na partycji "yaffs1"... :shii:

    Poniżej różnica w "kształcie" funkcji odpowiedzialnej za przełączanie częstotliwości pomiędzy FW V200R001B236D30SP01C56 a V200R001B180D20SP05C69 :
    //================== Tele2 V200R001B236D30SP01C56 =========
    Kod: c
    Zaloguj się, aby zobaczyć kod


    //================== PlusGSM V200R001B180D20SP05C69 =========
    Kod: c
    Zaloguj się, aby zobaczyć kod


    Pozdrawiam.

    0
  • Servizza
  • #4 10 Mar 2018 05:34
    kolopeter2
    Poziom 11  

    Re.Mastered.M napisał:
    co do metody na przechwycenie metody "POST - dla FTP", lub innej znanej -> poprzez "Ping" to działały ona wyłącznie na modelu b593u-12, dla modelu s-22 powyższe triki są nieskuteczne (po podmianie katalogu docelowego i tak ląduje się w /mnt) , a jedynym wyjściem aby uzyskać dostęp do urządzenia było podpięcie się pod UART.


    aatam. mozna wejsc ta metoda , bo tak uzyskalem haslo do roota. wystarczy plugin do firefoxa i pendrive w porcie usb i przy wysylaniu wylapac POST i podmienic sciezke z USB na / .
    Jak sie plugin nazywa niestety nie pamietam , ale gdzies to opisalem na forum. druga metoda , ktora zdaje sie robi to samo to skrypt pod linuxa. Tez nie podam nazwy , bo nie pamietam. znalazlem go na jakims blogu. Niestety jestem teraz w chinach i niestety google jest tu wyciete , a przez yandexa ciezko sie szuka . a jednak znalazlem :)
    https://blog.hqcodeshop.fi/archives/254-First...exploit-Setup-FTP-to-get-varsshusers.cfg.html

    0
  • #5 10 Mar 2018 07:50
    Re.Mastered.M
    Poziom 10  

    Witam,
    znam tę stronę, śledzę poczynania autora tego blogu od czasu gdy posiadałem jeszcze model B593u-12.
    Swego czsasu testowałem ten skrypt i u mnie nie działa (uruchomiłem go dzisiaj i również u mnie nie działa) - nie wiem być może mam spapraną konfigurację Perla bo siedzę na Win7... W przypadku konfiguracji mojego komputera dziwne jest nawet to, że nie jestem w stanie nawiązać połączenia Telnet z routerem (mimo oczywiście włączenia Telnet i wyłączenia filtrowania portów na urządzeniu), a po zmianie ścieżki dostępu na " ../ ../ " i tak ląduje w "/mnt". Cieszę się, że komuś ten skrypt działa. Aby dobrać się do plików wystarczy mi dostęp po SSH / UART - tutaj wystarczą tylko komendy "#cp" tudzież "#dd" i wszystko ląduje na dysku USB.
    Pozdrawiam.

    0
  • #6 10 Mar 2018 16:55
    kolopeter2
    Poziom 11  

    nawet na linuxie trzeba bylo sporo dograc ,aby skrypt ruszyl. w kazdym razie wpisywalem blad jaki wyskakiwal w googla i dogrywalem ,az w pewnym momencie ich nie bylo .

    0
  • #7 12 Mar 2018 14:24
    Re.Mastered.M
    Poziom 10  

    Witam,
    jeżeli podane klucze AES_cbc/3DES nie działają z twoim routerem Huawei to znaczy, że zostały zmienione przez dystrybutora, lub użytkujesz inny model (nie B593) ... nie mniej jednak jeżeli interesuje cię jak je wydobyć z FW spójrz na zamieszczony poniżej "PrintScreen" :roll: :

    Huawei B593s-22 - Dostęp do b593s-22 - Putty SSH, "downloadconfigfile.conf


    I wszystko staje się jasne :shocked!: .
    P.S.
    Podana metoda działa na wielu urządzeniach tej marki nie tylko dla serii B593 (ostatnio uzyskałem potwierdzenie, że działa również m.in. na serii Huawei E5172).

    Pozdrawiam

    1
  • #8 28 Maj 2018 12:21
    ele_pawel
    Poziom 1  

    kolopeter2 napisał:
    mozna wejsc ta metoda , bo tak uzyskalem haslo do roota. wystarczy plugin do firefoxa i pendrive w porcie usb i przy wysylaniu wylapac POST i podmienic sciezke z USB na /

    Potwierdzam dostęp do hasła w ten sposób, działa na pewno dla starszych wersji FW - 180, w nowszych jest już zablokowane...

    0
  • #9 28 Maj 2018 20:03
    kolopeter2
    Poziom 11  

    ale haslo jest juz wazne na kazdym sofcie , oprocz ..tych ktore maja ssh zablokowane. chyba ten z vodafonu jest zablokowany. wydaje mi sie , ze wystarczylo po zmianie softu zresetowac do ustawien fabrycznych i dostep byl ponownie

    0