10 KiB
Przejęcie domeny/subdomeny
{% hint style="success" %}
Ucz się i ćwicz Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Ucz się i ćwicz Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)
Wsparcie dla HackTricks
- Sprawdź plany subskrypcyjne!
- Dołącz do 💬 grupy Discord lub grupy telegramowej lub śledź nas na Twitterze 🐦 @hacktricks_live.
- Podziel się trikami hackingowymi, przesyłając PR-y do HackTricks i HackTricks Cloud repozytoriów na GitHubie.
Użyj Trickest, aby łatwo budować i automatyzować przepływy pracy zasilane przez najbardziej zaawansowane narzędzia społecznościowe na świecie.
Uzyskaj dostęp już dziś:
{% embed url="https://trickest.com/?utm_source=hacktricks&utm_medium=banner&utm_campaign=ppc&utm_content=domain-subdomain-takeover" %}
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ć zarejestrować ją (jeśli jest wystarczająco tania) i poinformować firmę. Jeśli ta domena otrzymuje jakieś wrażliwe informacje, takie jak ciasteczko sesji przez GET parametr lub w nagłówku Referer, to na pewno jest to vulnerabilność.
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ęć:
- https://github.com/EdOverflow/can-i-take-over-xyz
- https://github.com/blacklanternsecurity/bbot
- https://github.com/punk-security/dnsReaper
- https://github.com/haccer/subjack
- https://github.com/anshumanbh/tko-sub
- https://github.com/ArifulProtik/sub-domain-takeover
- https://github.com/SaadAhmedx/Subdomain-Takeover
- https://github.com/Ice3man543/SubOver
- https://github.com/m4ll0k/takeover
- https://github.com/antichown/subdomain-takeover
- https://github.com/musana/mx-takeover
- https://github.com/PentestPad/subzy
Skanowanie pod kątem przejmowalnych subdomen za pomocą BBOT:
Sprawdzanie przejęcia subdomen jest włączone w domyślną enumerację subdomen BBOT. Podpisy są pobierane bezpośrednio z https://github.com/EdOverflow/can-i-take-over-xyz.
bbot -t evilcorp.com -f subdomain-enum
Przejęcie subdomeny za pomocą wildcard DNS
Gdy w domenie używany jest wildcard DNS, każda żądana subdomena tej domeny, która nie ma innego adresu, zostanie rozwiązana na te same informacje. 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że, jeśli zamiast wskazywać na adres IP, administrator systemu wskaże na usługę zewnętrzną za pomocą CNAME, jak na przykład subdomena githuba (sohomdatta1.github.io
). Atakujący może stworzyć swoją własną stronę zewnętrzną (w tym przypadku na GitHubie) i powiedzieć, że something.testing.com
wskazuje tam. Ponieważ CNAME wildcard zgadza się, atakujący będzie mógł generować dowolne subdomeny dla domeny ofiary wskazujące na jego strony.
Możesz znaleźć przykład tej podatności 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, co pozwala atakującym ustawiać rekordy A dla domeny, prowadząc przeglądarki do wyświetlania treści z serwera atakującego. Ta przejrzystość w przeglądarkach sprawia, że domeny są podatne na phishing. Atakujący mogą stosować typosquatting lub domeny doppelganger w tym celu. Szczególnie narażone są domeny, w których URL w e-mailu phishingowym wydaje się 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 pomocą 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 obejmuje również bezpieczeństwo ciasteczek, regulowane przez polityki takie jak polityka tego samego pochodzenia. 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 sesji 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 kierować częścią ruchu do serwera pod swoją kontrolą. To ryzyko wzrasta, jeśli atakujący ustawi wysoki TTL (Time to Live) dla rekordów DNS, wydłużając czas trwania ataku.
Podatność rekordu 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 to im stworzyć stronę pod zaufaną domeną, co dodatkowo ułatwia phishing lub dystrybucję złośliwego oprogramowania.
Strategie łagodzenia
Strategie łagodzenia obejmują:
- Usunięcie podatnych rekordów DNS - To jest skuteczne, jeśli subdomena nie jest już potrzebna.
- Przypisanie nazwy domeny - Zarejestrowanie zasobu u odpowiedniego dostawcy chmurowego lub ponowne zakupienie wygasłej domeny.
- Regularne monitorowanie podatności - 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.
Referencje
Użyj Trickest, aby łatwo budować i automatyzować przepływy pracy zasilane przez najbardziej zaawansowane narzędzia społecznościowe na świecie.
Uzyskaj dostęp już dziś:
{% embed url="https://trickest.com/?utm_source=hacktricks&utm_medium=banner&utm_campaign=ppc&utm_content=domain-subdomain-takeover" %}
{% hint style="success" %}
Ucz się i ćwicz Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Ucz się i ćwicz Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)
Wsparcie HackTricks
- Sprawdź plany subskrypcyjne!
- Dołącz do 💬 grupy Discord lub grupy telegramowej lub śledź nas na Twitterze 🐦 @hacktricks_live.
- Dziel się trikami hackingowymi, przesyłając PR-y do HackTricks i HackTricks Cloud repozytoriów githubowych.