Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
Taken — Захват поддоменов с использованием зависших эластичных IP-адресов AWS и рабочий POC для Subdomain Takeover. | Kitploit
Инструменты/GitHubGitHub/in3tinct/taken
РазведкаПеречисление DNS и поддоменовЭксплуатацияТестирование на ПроникновениеБезопасность облачных средПеречисление Поддоменов
GitHubin3tinct/taken

Taken

Захват поддоменов с использованием зависших эластичных IP-адресов AWS и рабочий POC для Subdomain Takeover.

Репозиторий
94201 год назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

Taken

Захват поддоменов с помощью висящих эластичных IP-адресов AWS и рабочий POC для Subdomain Takeover.

Что можно сделать с Subdomain Takeover:

  • Кража куки, если куки установлены с атрибутом домена, указывающим на захваченный поддомен.
  • CORS-запросы, если Access-Control-Allow-Origin установлен на захваченный поддомен.
  • Перенаправление OAuth для получения кода авторизации, если захваченный поддомен находится в белом списке.
  • CSP-политики для XSS, если CSP-политика добавляет этот поддомен в белый список.
  • ClickJacking, если X-Frame-Options добавляет этот поддомен в белый список.
  • Подделка писем, если SPF-запись добавляет этот поддомен в белый список.

Идея автоматизации следующая:

  • Получить поддомены.
  • Выполнить обратные запросы, чтобы сохранить только AWS-IP.
  • Перезапускать EC2-экземпляр каждую минуту, при этом публичный IP меняется при каждом перезапуске. Сопоставлять его с существующим списком IP-адресов поддоменов — и у вас есть рабочий POC захвата поддоменов.
  • Отправлять уведомление по электронной почте сразу после захвата поддомена.

Цитирование

Пожалуйста, цитируйте, если вы используете это программное обеспечение в своих исследовательских работах, статьях и т.д.

root@kitploit:~
@software{Agrawal_Taken_AWS_Subdomain_2020,
author = {Agrawal, Vaibhav},
month = oct,
title = {{Taken: AWS Subdomain TakeOver at Scale}},
url = {https://github.com/In3tinct/Taken},
version = {1.0},
year = {2020}
}

Предварительные требования

  • Учетная запись AWS.
  • Знание Linux и Bash-скриптов.

Используемые технологии/фреймворки

Создано с помощью

  • Bash

Возможности

  • Сбор поддоменов и обратный поиск для нацеливания только на AWS IP.
  • Смена IP-адресов путём перезапуска EC2-экземпляра до тех пор, пока один из них не совпадёт с IP-адресом из списка.
  • При совпадении этот IP/хост добавляется в файл белого списка, чтобы его больше не перезапускали, и отправляется уведомление по электронной почте.

Подробные шаги по использованию

  1. Создайте один экземпляр t2.medium (атакующая машина), бесплатно 24/7.
  2. Создайте 5–10 экземпляров типа t3a.nano, вероятно, самых дешёвых (чем больше, тем выше шансы, но и больше расходы — около $60/месяц за 10 машин) в одном или нескольких регионах. Это занимает 5 минут. Группа безопасности SG должна быть открыта только для вашего публичного IP.
  3. Создайте ключи API AWS для остановки/запуска экземпляров.
  4. Подключитесь по SSH к атакующей машине.
  5. Установите утилиту уведомлений по электронной почте SSMTP. https://www.digitalocean.com/community/questions/how-to-send-emails-from-a-bash-script-using-ssmtp
  6. Установите инструменты subfinder и sublist3r.py для сбора поддоменов. (Или любые другие инструменты, но тогда их нужно будет добавить в скрипт сбора поддоменов.) Выполните следующие шаги для их настройки: https://github.com/aboul3la/Sublist3r https://github.com/projectdiscovery/subfinder
  7. Клонируйте репозиторий Taken и откройте screen-сессию для запуска скрипта сбора поддоменов. Если вы не знаете, как использовать screen — https://linuxize.com/post/how-to-use-linux-screen/
  8. Создайте текстовый файл со всеми доменами, которые вы хотите атаковать, сохраните его как "alldomains" в той же директории, а затем запустите скрипт сбора поддоменов. Этот скрипт использует subfinder и sublist3r.py. Он сгенерирует список всех поддоменов для одного или нескольких доменов в формате "subdomain:IP" в каждой строке. Впоследствии он будет использоваться для сопоставления и уведомления.
  9. Откройте другую screen-сессию и экспортируйте учётные данные AWS в этой сессии. Экспорт ключей AWS: export AWS_ACCESS_KEY_ID=AKIAIOSFODNN7EXAMPLE Ключ доступа для вашей учётной записи AWS.
    export AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY Секретный ключ доступа для вашей учётной записи AWS.
    Запустите скрипт захвата в другой screen-сессии. Вы также можете запустить его для каждого региона в отдельной screen-сессии (см. скриншот ниже). — каждый регион AWS использует свои подсети IP. Для атаки на компании, расположенные в США, высока вероятность, что они работают в одном из регионов США, но также могут иметь активы в других регионах, например, в Ирландии, Франкфурте и т.д. Поэтому вместо запуска 10 активов в одном регионе попробуйте запустить 5 активов в регионе, где находится штаб-квартира компании, и ещё 5 в других регионах.

Пример screen-сессии: alt text

Уведомление по электронной почте: alt text

Захватили поддомен — что дальше: Подключитесь по SSH к этому хосту, создайте простой HTML-файл и запустите Python-сервер — и у вас есть работающий POC. (В следующем релизе я планирую автоматизировать и это.)

Запуск в массовом порядке

Я просканировал все публичные программы на HackerOne и Bugcrowd, а также топ-500 SaaS-компаний Forbes/SaaS, собрал их поддомены и начал атаку. В течение 24 часов мне удалось захватить 3 поддомена. Всего работало 10 экземпляров в 3 разных регионах. Процент успеха сильно зависит от количества запущенных экземпляров. Поскольку с помощью скрипта вы меняете около 1440 IP-адресов за 24 часа, это даёт около 14 400 IP-адресов с 10 экземплярами за 24 часа.

Ссылки

Инструменты, использованные для сбора поддоменов: https://github.com/projectdiscovery/subfinder
https://github.com/aboul3la/Sublist3r

Участие

  • Сообщайте об ошибках.
  • Предлагайте улучшения.
  • Предлагайте будущие расширения.

Будущие расширения

  • Создание EC2-экземпляров с помощью того же скрипта.
  • Добавление автоматического развёртывания HTTP-сервиса с помощью AWS Beanstalk.

Лицензия

GNUV3 © [In3tinct]

Скачать инструмент

Обоснование