Przejęcie domeny/subdomeny

Reading time: 5 minutes

tip

Ucz się i ćwicz AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Ucz się i ćwicz GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Wsparcie HackTricks

Przejęcie domeny

Jeśli odkryjesz jakąś domenę (domain.tld), która jest używana przez jakąś usługę w zakresie, ale firma straciła własność nad nią, możesz spróbować ją zarejestrować (jeśli jest wystarczająco tania) i poinformować firmę. Jeśli ta domena otrzymuje jakieś wrażliwe informacje, takie jak ciasteczko sesyjne przez GET parametr lub w nagłówku Referer, to na pewno jest to vulnerability.

Przejęcie subdomeny

Subdomena firmy wskazuje na usługę zewnętrzną z niezarejestrowaną nazwą. Jeśli możesz utworzyć konto w tej usłudze zewnętrznej i zarejestrować używaną nazwę, możesz przeprowadzić przejęcie subdomeny.

Istnieje kilka narzędzi z słownikami do sprawdzania możliwych przejęć:

Generacja przejęcia subdomeny przez wildcard DNS

Gdy w domenie używany jest wildcard DNS, każda żądana subdomena tej domeny, która nie ma innego adresu wyraźnie określonego, będzie rozwiązywana do tych samych informacji. Może to być adres IP A, CNAME...

Na przykład, jeśli *.testing.com jest wildcardowane do 1.1.1.1. Wtedy not-existent.testing.com będzie wskazywać na 1.1.1.1.

Jednak jeśli zamiast wskazywać na adres IP, administrator systemu wskaże to na usługę zewnętrzną przez CNAME, jak na przykład subdomena Githuba (sohomdatta1.github.io). Atakujący może utworzyć swoją własną stronę zewnętrzną (w Gihubie w tym przypadku) i powiedzieć, że something.testing.com wskazuje tam. Ponieważ CNAME wildcard zgodzi się, atakujący będzie mógł generować dowolne subdomeny dla domeny ofiary wskazujące na jego strony.

Możesz znaleźć przykład tej luki w opisie CTF: https://ctf.zeyu2001.com/2022/nitectf-2022/undocumented-js-api

Wykorzystywanie przejęcia subdomeny

Przejęcie subdomeny to w zasadzie spoofing DNS dla konkretnej domeny w internecie, pozwalający atakującym ustawiać rekordy A dla domeny, co prowadzi do wyświetlania treści z serwera atakującego w przeglądarkach. Ta przejrzystość w przeglądarkach sprawia, że domeny są podatne na phishing. Atakujący mogą stosować typosquatting lub Doppelganger domains w tym celu. Szczególnie podatne są domeny, w których URL w phishingowym e-mailu wydaje się być legalny, oszukując użytkowników i omijając filtry spamowe z powodu wrodzonego zaufania do domeny.

Sprawdź ten post po więcej szczegółów

Certyfikaty SSL

Certyfikaty SSL, jeśli są generowane przez atakujących za pośrednictwem usług takich jak Let's Encrypt, zwiększają wiarygodność tych fałszywych domen, czyniąc ataki phishingowe bardziej przekonującymi.

Bezpieczeństwo ciasteczek i przejrzystość przeglądarki

Przejrzystość przeglądarki dotyczy również bezpieczeństwa ciasteczek, regulowanego przez polityki takie jak Same-origin policy. Ciasteczka, często używane do zarządzania sesjami i przechowywania tokenów logowania, mogą być wykorzystywane przez przejęcie subdomeny. Atakujący mogą zbierać ciasteczka sesyjne po prostu kierując użytkowników do skompromitowanej subdomeny, zagrażając danym i prywatności użytkowników.

E-maile i przejęcie subdomeny

Kolejny aspekt przejęcia subdomeny dotyczy usług e-mailowych. Atakujący mogą manipulować rekordami MX, aby odbierać lub wysyłać e-maile z legalnej subdomeny, zwiększając skuteczność ataków phishingowych.

Wyższe ryzyko

Dalsze ryzyka obejmują przejęcie rekordu NS. Jeśli atakujący zdobędzie kontrolę nad jednym rekordem NS domeny, mogą potencjalnie skierować część ruchu do serwera pod swoją kontrolą. To ryzyko jest zwiększone, jeśli atakujący ustawi wysoki TTL (Time to Live) dla rekordów DNS, wydłużając czas trwania ataku.

Luka w rekordzie CNAME

Atakujący mogą wykorzystać nieprzypisane rekordy CNAME wskazujące na zewnętrzne usługi, które nie są już używane lub zostały wycofane. Pozwala im to stworzyć stronę pod zaufaną domeną, co dodatkowo ułatwia phishing lub dystrybucję złośliwego oprogramowania.

Strategie łagodzenia

Strategie łagodzenia obejmują:

  1. Usunięcie podatnych rekordów DNS - To jest skuteczne, jeśli subdomena nie jest już potrzebna.
  2. Przypisanie nazwy domeny - Zarejestrowanie zasobu u odpowiedniego dostawcy chmurowego lub ponowne zakupienie wygasłej domeny.
  3. Regularne monitorowanie luk - Narzędzia takie jak aquatone mogą pomóc w identyfikacji podatnych domen. Organizacje powinny również zrewidować swoje procesy zarządzania infrastrukturą, zapewniając, że tworzenie rekordów DNS jest ostatnim krokiem w tworzeniu zasobów i pierwszym krokiem w ich usuwaniu.

Dla dostawców chmurowych weryfikacja własności domeny jest kluczowa, aby zapobiec przejęciom subdomen. Niektórzy, jak GitLab, dostrzegli ten problem i wdrożyli mechanizmy weryfikacji domen.

Odniesienia

tip

Ucz się i ćwicz AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Ucz się i ćwicz GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Wsparcie HackTricks