Preorder drugiego tomu książki sekuraka: Wprowadzenie do bezpieczeństwa IT. -15% z kodem: sekurak-book

Jak za $20 popsuć Internet przez WHOIS? Czyli nie zapomnijcie odnowić swojej domeny…

16 września 2024, 17:32 | W biegu | komentarzy 6

Badacze z firmy watchTowr początkowo chcieli zgłębić ataki na klienta protokołu WHOIS. Aby to zrobić, musieli jednak przekierować ruch na swój serwer. Ponieważ ataki MiTM nie wydały im się szczególnie ciekawe, to poświęcili cenę butelki wody w hotelu w Vegas ($20) na zakup nieodnowionej domeny, która była wykorzystywana przez serwer WHOIS dla całej domeny .mobi. Okazało się, że oprócz otrzymywania zapytań z różnych systemów (np. wojskowych), które nie zaktualizowały informacji o właściwych serwerach WHOIS, mogli ubiegać się o certyfikaty SSL/TLS dla wszystkich adresów w domenie .mobi spoofując informacje o adresie administratora domeny. Gruby przypał. 

Co może się wydarzyć, gdy grupa znudzonych badaczy siedzi w hotelowym pokoju po powrocie z konferencji? Okazuje się, że całkiem sporo… Szczególnie jeśli mają do dyspozycji 20 dolarów – kwotę, za którą uczestnicy konferencji Black Hat mogą kupić zaledwie butelkę wody z hotelowego minibaru.

Protokół WHOIS to bardzo prosty mechanizm, który powstał po to, aby administratorzy systemów mogli łatwo znaleźć osoby, z którymi mogą się skontaktować w sprawie konkretnego systemu dostępnego pod danym adresem IP lub domeną. Okazuje się, że mimo upływu lat protokół wciąż jest używany, między innymi w procesie wydawania certyfikatów SSL…

whois sekurak.pl

DOMAIN NAME:           sekurak.pl
registrant type:       organization
nameservers:           amit.ns.cloudflare.com.
                       wally.ns.cloudflare.com.
created:               2012.11.05 18:17:05
last modified:         2023.10.03 10:31:13
renewal date:          2024.11.05 18:17:05

no option

dnssec:                Unsigned


REGISTRAR:
home.pl S.A.
ul. Zbożowa 4
70-653 Szczecin
Polska/Poland
+48.914325555
+48.504502500
https://home.pl/kontakt

WHOIS database responses: https://dns.pl/en/whois

WHOIS displays data with a delay not exceeding 15 minutes in relation to the .pl Registry system

Listing 1. Przykładowy wynik zapytania WHOIS dla domeny sekurak.pl

Badacze z watchTowr znaleźli trywialne przepełnienie bufora na stosie, w jednym z klientów whois. Skuteczność takiego ataku byłaby czysto teoretyczna, ponieważ błąd występował w kodzie obsługującym odpowiedź z serwera WHOIS. Zatem, aby wykorzystać podatność, musieliby przeprowadzić atak man-in-the-middle, przekierowując, a następnie spoofując odpowiedzi od serwera WHOIS (czynność raczej w zasięgu APT). Alternatywnie mogliby przejąć serwer WHOIS lub skorzystać z przekierowania zapytania WHOIS do serwera, który jest pod kontrolą atakujących.

Każdy z tych warunków pozwalających na wykorzystanie podatności wydawał się dość karkołomny do spełnienia. Dlatego watchTowr postanowił przeszukać listę serwerów WHOIS dla wszystkich głównych domen w Internecie – TLD (najbardziej znaczącego rozszerzenia domeny np. .com, .pl, .net etc). Lista serwerów WHOIS publikowana jest przez organizację IANA. Z racji tego, że WHOIS jest starym rozwiązaniem oraz faktu, że serwery dla TLD nie zmieniają się za często, programistom i administratorom zdarzało się zapisywać na stałe (ang. harcode) adresy tych serwerów w software. Można więc przypuszczać, że do teraz działa sobie oprogramowanie, które ma nieaktualne informacje o domenie serwera WHOIS obsługującego daną domenę – zamiast pobierać aktualny adres od IANA. I to właśnie postanowili sprawdzić badacze (trochę przez przypadek). 

Oczywiście, w Internecie dzieje się dużo rzeczy i czasami zdarza się, że ktoś nie odnowi domeny. Tak samo było w tym przypadku. Serwer WHOIS dla TLD .mobi, wykorzystywanej najczęściej przez strony mobilne (takie przeznaczone do oglądania na urządzeniach przenośnych jak telefony, tablety etc.) zmienił się jakiś czas temu z whois.dotmobiregistry.net na whois.nic.mobi. Domena dotmobiregistry.net nie została przedłużona, ponieważ nie była więcej “potrzebna”. 

Badacze za 20$ kupili domenę oraz dodali odpowiedni wpis DNS tworząc subdomenę o nazwie whois. Następnie przekierowali ją na swój uprzednio skonfigurowany serwer oferujący usługę WHOIS. Od tego momentu mogli kontrolować odpowiedzi na zapytania protokołu od systemów, które nie miały zaktualizowanej informacji o właściwym serwerze dla całej domeny .mobi. Spowodowało to, że do tej pory tylko hipotetyczny atak typu memory corruption stał się  możliwy do wykonania… 

Rysunek 1. Schematyczny opis sytuacyjny po wykupieniu wygasłej domeny (źródło: watchtowr)

Jednak w tym momencie okazało się, co było zresztą do przewidzenia, że spoofowanie odpowiedzi WHOIS w celu wykonania kodu przez podatnego klienta tego protokołu, to tylko jeden z wielu problemów. Od teraz badacze mogli testować między innymi webaplikacje oferujące sprawdzenia WHOIS, atakując je wstrzykniętymi payloadami XSS czy odpalając swój kod przez podatność RCE w niektórych bibliotekach. 

Dodatkowo skonfigurowany serwer WHOIS zaczął otrzymywać zapytania od pokaźnej listy rejestratorów domen, którzy wykorzystują ten protokół, takich jak:

  • domain.com
  • godaddy.com
  • who.is
  • whois.ru
  • smallseo.tools
  • seocheki.net
  • centralops.net
  • name.com
  • webchart.org

Ze starego adresu serwera korzystały też usługi VirusTotal czy urlscan.io…  W portalach tych można było zobaczyć odpowiedź skonfigurowaną przez badaczy.

W bardzo krótkim czasie udało się zebrać ponad 76,000 różnych adresów IP, które wykonywały zapytania do serwera kontrolowanego przez badaczy. Po kilku dniach udało się uzyskać ponad milion zapytań, pochodzących między innymi z systemów rządowych i wojskowych (nie tylko z USA). To znaczy, że próbowały one pozyskać informacje z serwera, potencjalnie kontrolowanego przez atakujących. 

Rysunek 2. Humorystyczny akcent ;) (źródło: watchtowr)

Zapytania spływały również z systemów oferujących usługi e-mail, co oprócz oczywistego wpływu na bezpieczeństwo ich samych, mogło także dostarczyć bocznym kanałem informacji, że zachodzi komunikacja pomiędzy pewnymi podmiotami. 

Ale najlepsze zostało zaprezentowane na końcu… 

SSL/TLS stanowi jeden z fundamentalnych mechanizmów bezpieczeństwa dzisiejszych systemów komputerowych. Rzadko spotyka się dziś strony, które nie oferowałyby szyfrowanego połączenia (co nie oznacza, że są bezpieczne). Certificate Authority (w skrócie CA), to instytucje, które uwierzytelniają certyfikaty wygenerowane dla poszczególnych domen internetowych. Swoim podpisem cyfrowym potwierdzają one tożsamość właściciela danej domeny.

Część CA pozwala na wykorzystanie wiadomości e-mail w procesie weryfikacji właściciela domeny (na adres zawarty we WHOIS – konkretnie we wpisie Administrative contact – trafia link, pod który należy przejść aby potwierdzić tożsamość). W tym momencie już chyba staje się oczywiste do czego prowadzi kontrola nad serwerem WHOIS. Dostarczając spreparowaną odpowiedź z adresem e-mail kontrolowanym przez atakującego, możliwe jest potwierdzenie tożsamości właściciela domeny w celu wydania certyfikatu. Na liście CA, które wykorzystują tę metodę, znajdują się raczej popularne podmioty. watchTowr wymienił kilka:

  • Trustico
  • Comodo
  • SSLS
  • GoGetSSL
  • GlobalSign
  • DigiSign
  • Sectigo
Rysunek 3. GlobalSign pozwalający na weryfikacje emaila dla domeny microsoft.mobi przy pomocy danych pobranych z WHOIS (źródło: watchtowr)

Dla jasności – proces zaprezentowany przez badaczy absolutnie podkopuje mechanizm zachowania integralności w Internecie. Atakujący, który uzyskałby dostęp do domeny, która jest aktywnie wykorzystywana przez CA do zapytań WHOIS jest w stanie podszyć się pod prawowitych właścicieli domeny, i legitymować się certyfikatem wydanym przez prawowite CA. Oczywiście aby wystawić usługę, która mogłaby skorzystać z tego certyfikatu w niecnych celach, należałoby np. dokonać ataku MiTM lub phishingowego. Co ciekawe, Let’s Encrypt wydający darmowe certyfikaty, nie obsługuje WHOIS.

Zaprezentowany problem wynika z tego, że źródłem “prawdy” dla wielu systemów jest stary protokół, który opiera się na luźnej zasadzie zaufania do adresów zapisanych na stałe w wielu systemach. W momencie wprowadzenia zmiany, nie jest ona automatycznie propagowana do wszystkich klientów korzystających z tych informacji, więc odwołania do starych zasobów (tutaj domeny) wciąż są wykonywane. Atak pozwalał nie tylko na wykonanie kodu na pojedynczych maszynach (wykorzystując podatności aplikacyjne poszczególnych klientów), ale także umożliwiał dokonanie znacznie większych spustoszeń i podszywanie się pod znane organizacje. Wektor ataku byłby szczególnie interesujący dla aktorów państwowych/grup APT.

W procesie responsible disclosure podatność została zgłoszona do NCSC, a cały ruch kierowany do domeny wykupionej przez watchTowr został przekierowany do prawowitych serwerów WHOIS dla TLD .mobi. 

~fc

Spodobał Ci się wpis? Podziel się nim ze znajomymi:



Komentarze

  1. dks

    Gdzie się nie spojrzy to ten cały internet wyglada na ”polepiony” trytytkami..

    Odpowiedz
    • fc

      Legacy i kompatybilność wsteczna hamulcem rozwoju!!one ;)

      Odpowiedz
    • farix

      A to nie dlatego, że na bazie roweru zbudowaliśmy rakietę kosmiczną, ale mimo wszystko chcemy, aby obsługiwali ją ludzie posiadający tylko kartę rowerową? :)

      Odpowiedz
  2. Julian

    Patrząc na internet zaczynam lepiej rozumieć jak ludzie mogą umierać na sepsę. Kiedyś ktoś pociągnie jakaś wajchę przy starym serwerze i cały internet wyskoczy z butów…

    Odpowiedz
  3. Krzyśko

    Ale, że domenę na home jeszcze trzymacie to jestem we w szoku…

    Odpowiedz
    • Przenosimy już od 5 lat, tylko zawsze są „pilniejsze zadania do wykonania” ;-)

      Odpowiedz

Odpowiedz