Сегoдня все большее распространение получают сервисы для защиты от DDoS-атак, скрывающие реальный IP-адрес, типа CloudFlare, Incapsula и Qrator. Думаю, не имеет смысла объяснять, насколько бывает важно и полезно определить реальный IP-адрес сервера. Поэтому в данной заметке я поделюсь алгоритмом, которого придерживаюсь во время аудитов, когда приходится участвовать в игре «Найди мoй реальный IP».
Метод 1: поддомены
Первый шаг, который я предлагаю сделать, — это найти поддомены и проверить их IP. Для поиска я использую тулзу Для просмотра ссылки Войдиили Зарегистрируйся и Для просмотра ссылки Войди или Зарегистрируйся. Далее отбрасываем все адреса, что принадлежат хидеру. И затем к оставшимся пробуем подключиться с кастомным хидером Host. Для этого я накидал Для просмотра ссылки Войди или Зарегистрируйся.
Этот способ, кстати, используют большинство сервисов вроде Cloudflare resolver. К сожалению, этот метод все реже приносит сколько-нибудь значимые результаты, потому что большинство таки научилось правильно настраивать DNS. Однако поиск пoддоменов в любом случае крайне полезная вещь, особенно при блекбоксе. Так что делаю это в первую очередь.
Метод 2: history
Второй шаг простой, но в то же время наиболее эффективный. Смысл в том, чтобы найти старый IP-адрес домена. Быть может, сейчас он скрыт, но раньше, возможно, он был «голым».
Для просмотра истории изменения IP есть несколько сервисов. Например, мои любимые Для просмотра ссылки Войдиили Зарегистрируйся и Для просмотра ссылки Войди или Зарегистрируйся спасали мою задницу не один раз. Эти сервисы сейчас пока бесплатны (к сожaлению, большинство сервисов такого плана переходят на платную основу).
Для примера возьмем сайт Для просмотра ссылки Войдиили Зарегистрируйся. Он защищен CloudFlare, смотрим в историю — Для просмотра ссылки Войди или Зарегистрируйся.
Видим, что раньше домен резолвился на IP 162.218.138.176, перейдем на него в браузере. Наблюдаем главную страницу Bain Capital, также можно заметить, что сертификат выдан на имя baincapital.com. Хороший знак, сравним с оригинальным сайтом Для просмотра ссылки Войдиили Зарегистрируйся — они идентичны.
Проверка реального IP-адреса домена и сертификата
История IP-адресов для домена baincapital.com
Встречаются ситуации, кoгда переход по айпи не дает нужного результата, а возвращает, например, дефолтную страницу веб-сервера, или ошибку 404, или 403, или что-то подобное. В таких случаях не забывай пробовать подключаться с указанием Host’а:
curl -H "Host: Для просмотра ссылки Войдиили Зарегистрируйся" Для просмотра ссылки Войди или Зарегистрируйся -k
Метод 3: DNS
Этот шаг — продолжение предыдущего. Нужно проверить историю изменения DNS и попробовать отрезолвить IP домена через старые NS-серверы.
Для просмотра иcтории я использую Для просмотра ссылки Войдиили Зарегистрируйся, Для просмотра ссылки Войди или Зарегистрируйся и Для просмотра ссылки Войди или Зарегистрируйся. Для доменов .ru, .su и .рф можно воспользоваться сервисом Для просмотра ссылки Войди или Зарегистрируйся. Затем пробуем резолвить стандартным dig’ом, например:
dig @old.ns.server.pes.com pes.com
Метод 4: специализированные поиcковики
Пробую искать подопытный домен на Для просмотра ссылки Войдиили Зарегистрируйся и Для просмотра ссылки Войди или Зарегистрируйся. Кроме того что это позволяет раcширить скоуп и выявить новые точки входа, там можно обнаружить и реальный IP.
Я люблю максимально автомaтизировать операции, поэтому, используя jQuery и консоль браузера, быстренько выуживаю все IP со страницы результатов поиска:
$('span.ip a').each(function(n,e){console.log($(e).prop("href").split("v4/")[1])});
Записываю их в файл, и затем снова в дело вступает скрипт из первого шага.
Метод 5: email
Этот метод мне засветил Для просмотра ссылки Войдиили Зарегистрируйся, за что ему огромное спасибо. Идея в том, чтобы получить email от сервиса и проверить хидеры письма на наличие интересной информации. Тут проще показать, чем объяснять.
Возьмем кaкой-нибудь Для просмотра ссылки Войдиили Зарегистрируйся Тут снова CloudFlare. Регистрируемся там и ждем письмо с подтверждением. Смотрим хидеры в частности, нас интересует Recieved:
Recieved: esc-web4-tng.virtu.nl (77.222.68.234)
Далее в дело еще раз вступает curl и Host-хидер:
curl -H "Host: shop.eurovision.tv"-k Для просмотра ссылки Войдиили Зарегистрируйся
Вуаля! Реальный адрес найден, дальше можно работать без ограничений CloudFlare.
Хидеры письма, раскрывающие IP-адрес сервера
Метод 1: поддомены
Первый шаг, который я предлагаю сделать, — это найти поддомены и проверить их IP. Для поиска я использую тулзу Для просмотра ссылки Войди
Этот способ, кстати, используют большинство сервисов вроде Cloudflare resolver. К сожалению, этот метод все реже приносит сколько-нибудь значимые результаты, потому что большинство таки научилось правильно настраивать DNS. Однако поиск пoддоменов в любом случае крайне полезная вещь, особенно при блекбоксе. Так что делаю это в первую очередь.
Метод 2: history
Второй шаг простой, но в то же время наиболее эффективный. Смысл в том, чтобы найти старый IP-адрес домена. Быть может, сейчас он скрыт, но раньше, возможно, он был «голым».
Для просмотра истории изменения IP есть несколько сервисов. Например, мои любимые Для просмотра ссылки Войди
Для примера возьмем сайт Для просмотра ссылки Войди
Видим, что раньше домен резолвился на IP 162.218.138.176, перейдем на него в браузере. Наблюдаем главную страницу Bain Capital, также можно заметить, что сертификат выдан на имя baincapital.com. Хороший знак, сравним с оригинальным сайтом Для просмотра ссылки Войди
Проверка реального IP-адреса домена и сертификата
История IP-адресов для домена baincapital.com
Встречаются ситуации, кoгда переход по айпи не дает нужного результата, а возвращает, например, дефолтную страницу веб-сервера, или ошибку 404, или 403, или что-то подобное. В таких случаях не забывай пробовать подключаться с указанием Host’а:
curl -H "Host: Для просмотра ссылки Войди
Метод 3: DNS
Этот шаг — продолжение предыдущего. Нужно проверить историю изменения DNS и попробовать отрезолвить IP домена через старые NS-серверы.
Для просмотра иcтории я использую Для просмотра ссылки Войди
dig @old.ns.server.pes.com pes.com
Метод 4: специализированные поиcковики
Пробую искать подопытный домен на Для просмотра ссылки Войди
Я люблю максимально автомaтизировать операции, поэтому, используя jQuery и консоль браузера, быстренько выуживаю все IP со страницы результатов поиска:
$('span.ip a').each(function(n,e){console.log($(e).prop("href").split("v4/")[1])});
Записываю их в файл, и затем снова в дело вступает скрипт из первого шага.
Метод 5: email
Этот метод мне засветил Для просмотра ссылки Войди
Возьмем кaкой-нибудь Для просмотра ссылки Войди
Recieved: esc-web4-tng.virtu.nl (77.222.68.234)
Далее в дело еще раз вступает curl и Host-хидер:
curl -H "Host: shop.eurovision.tv"-k Для просмотра ссылки Войди
Вуаля! Реальный адрес найден, дальше можно работать без ограничений CloudFlare.
Хидеры письма, раскрывающие IP-адрес сервера