Domain/Subdomain takeover

Вивчайте хакінг AWS від нуля до героя з htARTE (HackTricks AWS Red Team Expert)!

Інші способи підтримки HackTricks:

Використовуйте Trickest для легкої побудови та автоматизації робочих процесів за допомогою найбільш продвинутих інструментів спільноти у світі. Отримайте доступ сьогодні:

Захоплення домену

Якщо ви виявите домен (domain.tld), який використовується якоюсь службою в межах обсягу, але компанія втратила власність на нього, ви можете спробувати зареєструвати його (якщо це дешево) і повідомити компанію. Якщо цей домен отримує якусь чутливу інформацію, таку як куки сесій через GET параметр або в заголовку Referer, це безперечно вразливість.

Захоплення піддомену

Піддомен компанії вказує на сторонню службу з незареєстрованим ім'ям. Якщо ви можете створити обліковий запис в цій сторонній службі та зареєструвати використовуване ім'я, ви можете виконати захоплення піддомену.

Існує кілька інструментів зі словниками для перевірки можливих захоплень:

Сканування для захоплення піддоменів з BBOT:

Перевірки захоплення піддоменів включені в стандартну перелічення піддоменів BBOT. Підписи витягуються безпосередньо з https://github.com/EdOverflow/can-i-take-over-xyz.

bbot -t evilcorp.com -f subdomain-enum

Генерація захоплення піддомену через DNS Wildcard

Коли в домені використовується DNS Wildcard, будь-який запитаний піддомен цього домену, який не має явно вказаної іншої адреси, буде розгортатися до однакової інформації. Це може бути IP-адреса A, CNAME...

Наприклад, якщо *.testing.com вказується на 1.1.1.1. Тоді not-existent.testing.com буде вказувати на 1.1.1.1.

Однак, якщо замість вказування на IP-адресу, системний адміністратор вказує на сторонній сервіс через CNAME, наприклад, піддомен github (sohomdatta1.github.io). Атакуючий може створити свою власну сторонню сторінку (у Github у цьому випадку) і сказати, що something.testing.com вказує туди. Оскільки CNAME Wildcard погодиться, атакуючий зможе генерувати довільні піддомени для домену жертви, вказуючи на свої сторінки.

Приклад цієї вразливості можна знайти в описі CTF: https://ctf.zeyu2001.com/2022/nitectf-2022/undocumented-js-api

Використання захоплення піддомену

Захоплення піддомену суттєво є DNS підробкою для конкретного домену в Інтернеті, що дозволяє атакуючим встановлювати записи A для домену, що призводить до відображення вмісту з сервера атакуючого в браузерах. Ця прозорість в браузерах робить домени вразливими до рибальства. Атакуючі можуть використовувати typosquatting або Doppelganger domains для цієї мети. Особливо вразливі домени, де URL в листі рибальства виглядає легітимним, обманюючи користувачів і ухиляючись від спам-фільтрів через внутрішню довіру до домену.

Перевірте цей пост для додаткових деталей

SSL-сертифікати

SSL-сертифікати, якщо створені атакуючими через сервіси, такі як Let's Encrypt, додають легітимності цим фальшивим доменам, роблячи атаки рибальства більш переконливими.

Безпека кукі та прозорість браузера

Прозорість браузера також поширюється на безпеку кукі, яку регулюють політики, такі як Політика однакового походження. Куки, часто використовувані для управління сеансами та зберігання токенів входу, можуть бути використані через захоплення піддомену. Атакуючі можуть збирати сеансові куки просто направляючи користувачів на компрометований піддомен, піддаючи ризику дані користувачів та приватність.

Електронні листи та захоплення піддомену

Ще одним аспектом захоплення піддомену є сервіси електронної пошти. Атакуючі можуть маніпулювати MX-записами, щоб отримувати або відправляти електронні листи з легітимого піддомену, підвищуючи ефективність атак рибальства.

Вищі ризики

Додаткові ризики включають захоплення записів NS. Якщо атакуючий отримує контроль над одним записом NS домену, він може потенційно направляти частину трафіку на сервер під своїм контролем. Цей ризик збільшується, якщо атакуючий встановлює високий TTL (Час життя) для записів DNS, продовжуючи тривалість атаки.

Вразливість запису CNAME

Атакуючі можуть використовувати невикористані записи CNAME, які вказують на зовнішні сервіси, які більше не використовуються або були відключені. Це дозволяє їм створювати сторінку під довіреним доменом, подальше сприяючи розповсюдженню рибальства або шкідливих програм.

Стратегії пом'якшення

Стратегії пом'якшення включають:

  1. Видалення вразливих DNS-записів - Це ефективно, якщо піддомен більше не потрібен.

  2. Заявка на доменне ім'я - Реєстрація ресурсу за відповідним хмарним провайдером або викуп домену, що закінчився.

  3. Регулярний моніторинг вразливостей - Інструменти, такі як aquatone, можуть допомогти виявити схильні до вразливостей домени. Організації також повинні переглядати свої процеси управління інфраструктурою, забезпечуючи, що створення записів DNS є останнім кроком у створенні ресурсу та першим кроком у знищенні ресурсу.

Для хмарних провайдерів перевірка власності домену є важливою для запобігання захопленню піддоменів. Деякі з них, наприклад, GitLab, визнали цю проблему та впровадили механізми перевірки домену.

Посилання

Використовуйте Trickest, щоб легко створювати та автоматизувати робочі процеси за допомогою найбільш продвинутих інструментів спільноти у світі. Отримайте доступ сьогодні:

Вивчайте хакінг AWS від нуля до героя з htARTE (HackTricks AWS Red Team Expert)!

Інші способи підтримки HackTricks:

Last updated