20:16
12/4/2010

Serwery czasu NTP (ang. Network Time Protocol) kojarzone są głównie z dostarczaniem informacji na temat bieżącego czasu. Niewiele jednak osób wie, że można je odpytać o kilka innych, ciekawych z punktu widzenia atakującego, informacji…

Narzędzie ntpdc

W naszych zabawach skorzystamy z programu ntpdc, który powinien być standardowo dostępny na systemach *nix/OSX.

Narzędzie to przyjmuje kilka parametrów, m.in.:

peers - pokazuje skojarzone serwery NTP

Statystyki i serwery NTP skojarzone z badanym

sysstats - dane dotyczące usługi czasu po stronie serwera
monlist - adresy IP klientów, które zapytały o czas

Ostatnia akcja jest naprawdę ciekawa, ponieważ zwraca każdemu, kto o to zapyta, 600 adresów IP, które właśnie skorzystały z badanego serwera NTP :>

ntpdc i lista klientów rządowego serwera czasu

Jak wykorzystać adresy IP?

Zastanówmy się teraz, do czego atakujący może wykorzystać wiedzę na temat serwera czasu z jakiego korzysta “ofiara”?

  • Niektóre z urządzeń/narzędzi są domyślnie skonfigurowane do korzystania z danego serwera czasu. Mówimy tu o routerach, firewallach, etc. Odpytując “domyślny” dla tych urządzeń serwer NTP o “monlist” poznamy adresy IP, pod którymi mogą pracować w/w urządzenia i narzędzia.
  • Badając wynik “monlist” poznać możemy adresy IP, które nidy nie pojawiłyby się w trakcie mapowania sieci “ofiary” przez zapytania (r)DNS.
  • Sam serwer NTP można także wykorzystać do 200 krotnego wzmocnienia ataku DDoS

 

Automatyzacja zabawy w metasploicie

Jeśli nie posiadasz narzędzia ntpdc w swoim systemie, możesz skorzystać z multiplatformowego metasploita:

Automatyzacja ntp monlist przy pomocy metasploita

Kolejnym krokiem pentestu mogłoby być przeskanowanie znalezionych w ten sposób adresów IP pod kątem podatności charakterystycznych dla oprogramowania, które domyślnie korzysta z badanego przez nas serwera NTP…

P.S. Dla maniaków Pythona, firma Sensepost przygotowała skrypt ntp_monlist.


Dowiedz się, jak zabezpieczyć swoje dane i pieniądze przed cyberprzestępcami. Wpadnij na nasz kultowy ~3 godzinny wykład pt. "Jak nie dać się zhackować?" i poznaj kilkadziesiąt praktycznych i przede wszystkim prostych do zastosowania porad, które skutecznie podniosą Twoje bezpieczeństwo i pomogą ochronić przed atakami Twoich najbliższych. Uczestnicy tego wykładu oceniają go na: 9,34/10!

Na ten wykład powinien przyjść każdy, kto korzysta z internetu na smartfonie lub komputerze, prywatnie albo służbowo. Wykład prowadzimy prostym językiem, wiec zrozumie go każdy, także osoby spoza branży IT. Dlatego na wykład możesz spokojnie przyjść ze swoimi rodzicami lub mniej technicznymih znajomych. W najbliższych tygodniach będziemy w poniższych miastach:

Zobacz pełen opis wykładu klikając tutaj lub kup bilet na wykład klikając tu.

17 komentarzy

Dodaj komentarz
  1. Ciekawe, ciekawe. Nawet nie wiedziałem że jest taka funkcja w NTP ;)

  2. Wydaje się, że wspomniane usługi mogą się też przydać dobrej stronie mocy. Odkąd przekonałem się, że nie znajdę darmowego SOCKS proxy z możliwości zakładania gniazda słuchającego na UDP poprzestałem na projekcie programu do wymiany plików dla dwóch komputerów znajdujących się za różnymi NATami. Problemem był w tym wypadku serwer mediacyjny, bo resztę można zorganizować via e-mail, jabber, etc.

    W tym wypadku wystarczy, że poznamy IP drugiej strony, która następnie skorzysta z konkretnego serwera NTP. Wtedy my łączymy się z serwerem, wrzucamy polecenie nonlist i mamy port UDP naszego kolegi, a więc i namiary na tunel, którym możemy się z nim bezpośrednio komunikować pomimo tego, że nie jesteśmy z nim w podsieci i żaden z nas nie ma publicznego IP ;)

  3. Zaczynam się zastanawiać nad powrotem do poprzedniej epoki – OFFLINE.
    Serio. Dzięki Wam zacząłem się bać i uświadomiłem sobie, że firewall w routerku wcale nie sprawia, że jestem bezpieczny…

  4. Ojapapiernicze… Czemu to miało służyć?

    • @Jurgi: jeśli pytasz, czemu miała służyć ta funkcja, to najprawdopodobniej odpowiedzią jest “diagnostyka” serwera NTP :-)

  5. A ja jestem ciekaw skad zalozenie [ciche], ze wielu ludzi korzysta z NTPD? ;)
    Jesli to tylko ciekawostka, to rzeczywiscie jest to interesujace.

  6. user: root
    password: 1234
    sprawdza się w 1/10 przypadków :P
    Myślicie, że jesteście cwani i zmieniliście hasło do swojego routera? ;> To teraz sprawdźcie dla jakiego konta ;>

  7. oo, ciekawe – nie wiedziałem, że NTP udostępnia aż tak wiele ficzerów ;)
    dzięki za info!

  8. nie zawsze to dziala. standardowo instalowany ntpd chyba jest zapezpieczony przed tym. mam u siebie na debianie najnowszy ntpd i nie odpowiada na zadna komende. A defaultowo ustawiany serwer w confingach ntpd to – 0.debian.pool.ntp.org ktory na pierwsza komende ze skojarzonymi serwerami odpowiada, na druga sysstats tez, na trzecia juz nie :) wiec tu znow chyba jest ze *.gov.pl to malopprofesjonaliscie…

  9. ntpdc> monlist
    tempus1.gum.gov.pl: timed out with incomplete data
    ***Response from server was incomplete

    już chyba zalatali? czy za duzo osob probuje sie dopchac? :P

  10. Eeee… Nie jest tak źle. Serwery z których korzystam nie udostępniają monlist. Jeden zaś, timeoutuje każdą operację.
    Czyli jak zwykle: ktoś nie skonfigurował serwera.

  11. Kilka dni temu sprawdziłem 19 polskich serwerów NTP podanych na Wikipedii. 11 jest właśnie tak “źle” skonfigurowanych :]]
    Tu faktycznie wyjątkowo przydatną opcją jest poznanie adresów wewnętrznych firmy. Wtedy ataki na sieć LAN via przeglądarka stają się o wiele prostsze :]

  12. @Borys oczywiście poinformowałeś administratorów tych serwerów o tym, że mogliby “dokonfigurować” swoje serwery ntp? :D

  13. Tym razem nie. Nie uważam tego za krytyczną lukę, tym bardziej, że problem jest ogólnie znany. To było raczej badanie statystyczne :]

  14. […] na przykładzie Metasploita. O samym metasploicie pisaliśmy już wielokrotnie, np. przy okazji ataków na serwery czasu, czy opisu Metasploitable, specjalnej maszyny wirtualnej przygotowanej do testowania ataków […]

  15. […] Gdyby ktoś z Was kontrolował jakieś serwery
    czasu, warto je zaktualizować, aby uniemożliwić ataki DDoS przy
    pomocy tricku, który kiedyś już opisywaliśmy na łamach
    Niebezpiecznika. […]

  16. […] przez atakujących zwracaliśmy uwagę na Niebezpieczniku już 4 lata temu w tekście pt. “NTP, czyli zabawa serwerami czasu” — opisywaliśmy wtedy jak można wykorzystać polecenie “monlist” lub […]

Odpowiadasz na komentarz Jurgi

Kliknij tu, aby anulować

Zamieszczając komentarz akceptujesz regulamin dodawania komentarzy. Przez moderację nie przejdą: wycieczki osobiste, komentarze nie na temat, wulgaryzmy.

RSS dla komentarzy: