Дисклеймер/Вступление Spoiler Кроме вопроса в сабже, эта статья ответит и на вопрос как спрятать и найти реальный айпи сайта грамотно. Не смотря на то, что из всех сидиэнок статья называет только клауд, статья относится ко всем сидиэнкам, которые могут скрывать айпи так же плотно как это делает клауд. Не все сидиэнки это делают. Тут слайка к нам в тележку подскочил и задал правильные вопросы по теме. Пробив примерно 90%. потом из оставшихся 10% еще 90% можно пробить, если идти длинным путем. Мы покажем как это сделать и как защититься. Показывать будем не без юмора. Ежели вы гриб и вам юмор не вкатывает, можете просто пропускать его, он курсивом выделен, в основном. Статья была подготовлена для вас Новой и Ктулхом. Статья пишется в рамках конкурса Егорки, для вас на радость, так что цените, лайкайте и камменты оставляйте. Это помогает нашему видео выйти в топ Мы верим в то, что ламера не должны делать крутые штуки, так что не будем упрощать или расписывать слишком подробно концепты, с которыми должен быть знаком уважающий себя хакер. Типа что такое сидиэн, как он работает и т.п. На вики почитайте, вот https://en.wikipedia.org/wiki/Content_delivery_network Когда мы говорим Хакер... Мы не подразумеваем под этим быдло-понятие, принятое в неграмотном обществе. Мы понимаем под этим "правильное" значение: Иными словами, хакер - это тот, кто находит возможно нетривиальные и неочевидные, но всегда более простые решения за счет свего знания, или того, что мы назваем хакерской догадкой. Да, да, обычное понятие хекера входит в это, но я просто хочу напомнить, что на самом деле это более широкое понятие. И тогда как неразумная молодежь может получать какой-то романтический/гормональный заряд от вредоносного применения хакерства. В программировании, к примеру, на западе мы часто используем термин "хак", который значит, по сути, умный, быстрый костыль вместо долгого, муторного решения "в лоб". Как мап редюс вместо цикла для ценителей Функционального Программирования. Или, для знатоков структур данных - хеш-таблицы для "==" поиска вместо чего там? Да чего угодно, скажем, хипа (1 vs log(n)), не говоря уж о поиске "в лоб", перебором (1 vs n) Cтарые пердуны вроде нас с Новой понимают, что это все от низкого скилла. При высоком скилле у человека появляется жена, машина, дети, геморрой (на этот раз не такой уж и виртуальный) и его волшебным образом перестают волновать вопросы школьников, что дефейсят сайты узбекских газет, как и сами узбекские газеты и их очевидные уязвимости. Вот просто представьте, что вы школьник, который идет вдоль забора такого плотного, за которым видно высокое сооружение и тут в заборе нету доски и вы можете пролезть туда... А теперь представьте, что вы взрослый человек в той же ситуации. Ну, импульс сделать это есть и у взрослого человека, наверное, но вы на работу идете. И идете вы в костюме, щас еще запачкаетесь об этот забор. Плюс у вас пузо, вам неудобно будет пролазить, плюс туфли вычищены, а там грязь может быть. А еще вы за рулем. А еще вы заметили видеокамеру на другой стороне улицы. Вот так и со взломом, примерно. Да, кстати, пользуясь моментом, хочу разрекламировать наш ачатовский телеграм-чятик. Там сидят пердуны 25+ и общаются на темы довольно скучные для молодняка. Типа какой смазкой лучше смазывать дверь чтоб не скрипела, как менять лампочку правого ближнего света в мазде или что добавлять в расплавленную медь и другие мягкие металлы, чтобы они не окислялись (не сгорали) при контакте с кислородом (Боракс надо добавлять втудыть, если кому интересно) Мы, кстати, исследования, результаты которых описанные в этой статье, проводили в нашей тележке. И у нас есть крутые люди. Егорка, Nova, Алексайз, Ататашенька, Слай, Твостер и даже Нерд! Ребзик тоже был год назад, но не срослось, мы нравственно до Ребзика не доросли еще. (Ребз, если ты читаешь это - возвращайся к нам плз!) Так что если вы шарящие старые пердуны - присоединяйтесь к нам. Так же, в эту статью подмешано чуток сео и магии, чтоб она лучше ранжировалась и привлекала юзеров к форуму. Я постарался сделать элегантно, но кому-то может иной раз резонуть глаз. Вы простите, мы же искусства ради. Так, давайте к делу. Как получить реальный айпи сайта, спрятанного за CDN/cloudflare? Начнем с причин, по которым кому-то это будет нужно, да? Ддос! Кроулинг! Спам! (Любое другое бот-активити you might think of) Абузы хостеру Контакт с владельцем Тесты на уязвимости Ну вы поняли, что вариантов валом, в общем? Перейдем к действиям. Сперва что мы делаем? Мы гуглим. Очевидно, что мы гуглим не на русском, а на английском. Ибо на английском больше ценного контента. Ну, если не считать исключений вроде этой статьи Идем на этот гикфлер и смотрим че там. Там говностатья, которая говорит, что, мол, хз как но вот есть сервис, что палит. Идем на этот сервис, вот он: http://www.crimeflare.com/cfs.html Там есть поле. Пробуйте вводить туда сайтики за клаудом и вы увидите их реальные айпишки. Ну, где-то в 90-95% случаев. Ибо народ не шарит как прятать айпи, а многим это и не интересно. Ибо пузо и геморрой, ну вы поняли. Перед тем как мы перейдем к тому, как это работает и как это обойти и как оно могло бы работать лучше и как обойти это самое лучше. Перед всем этим, давайте поговорим о самом ресурсе. Ресурс ссылается на разные вещи типа вот: Это сильно мне напоминает американские теории заговоров типа массонов, плоского мира, инопланетян, криптозоологии и т.п. Много очевидной глупости, особенно в последней ссылке на скрине, но доля правды там есть. Так как одним из поводов смотреть за сидиэнку является абузы хостеру, ибо часто народ прячет за клаудом разный мусор. Прон, доры, какие-то левые лендинги, связки да что угодно из того, что не заинтересует грамотную полицию. Грамотная полиция - это такая, для которой эта наша статья - не новость. Интерполы всякие, то бишь. Следовательно, не стоит пытаться прятать за клауд всякое цп, кардинг и ну ты понел. Вообще, этим не стоит заниматься, в первую очередь, очевидно. Так, теперь как же эта хрень работает. Вы подумаете, что это в хуизе. Идите посмотрите записи вашего домена. Если хоть одна из них поинтит в ваш реальный хостинг, то... Ну, в общем, то вам пофиг на прятание за сидиэнкой. Ибо об этом даже речи идти не может. Ваши нсы должны вести на сидиэн, ваши эмиксы должны смотреть в гугл почту ну или в какую-то левую почту и т.п. Значит, сервис не по записям палит. В итоге, эта штука будет работать даже если в записях не будет никакого упоминания ничего даже рядом с реальным хостингом. Так как же оно работает? В это лично мне было трудно поверить, но кеш. До этого момента вы уже юзнули этот инструмент на своем любимом сверх секретном бложеке, я думаю? Ну и зря, потому что это мой сервис и я теперь получил ваши бложеки. Шутка. (Понравилась шутка? Подпишись на канал!) Теперь возьмите ваш бложек, ваш реальный ойпе и скормите его гуглу через пробел.... Эммм.. Забейте, давайте я вам все покажу на примере с самого начала, так будет интересней и ясней. Не у всех же есть свой сайтик за клаудом чтобы тестить. Я вообще клауд не юзаю для своих сайтов, которые белые. Только для всякой фигни. Пример поиска реального IP за CloudFlare Я перебрал парочку сайтиков, которыми пользуюсь и нашел идеального кандидата для нашей трепанации. ororo.tv. Не на правах рекламы. Честно говоря, там цены сильно завышены, их сервис просто не стоит денег, которые они просят, но я когда-то платил и оно мне когда-то помогло давно, когда я еще английский не знал так хорошо. Щас смотрю без субтитров через Kodi+Covenant ну или бухточка. И так, начинаем оную трепанацию. Первым делом что? проверяем домен на вшивость. Можно ли достать реальный ойпе: Достали. Но мы ж не владеем ресурсом, правильно? Как проверить, что он правильный? Вобьем его в адресную строку. Получили ответ от нжинкса, что все печально. Что дальше? В общем, я не буду долго пояснять, но веб-сервера по-разному разруливают запросы без хостов. Когда вы просто просите айпи, у вас в хедере реквеста хост указывается как просто айпи. Вот нжинкс это не хочет разруливать по-человечески. Ну тогда подсунем ему хост, почему бы и нет Мне влом делать это моим родным постменом или бурпилкой, так что я быстренько нашел прекрасный сервис с прикольным названием https://www.hurl.it/ Вот что мы пробуем делать: Вот респонс от сервера: Как видим, сервер отрезолвил запрос и ответил как ни в чем не бывало. Ну редиректнул нас с главной на языковую версию, ибо у них там сеошник - ламер. Бывает. Главное что? Что мы доказали, что ойпе реальный. Теперь берем айпи и домен и ищем их в гугле: Как видим, реальный айпи успел закешироваться в дохрена где до того, как эти ребятки подключили сидиэн. выходит, наш сервис всего лишь проверяет этот кеш, а получив ответ, который отличен от айпишек CF, сервис делает примерно то же, что и мы с вами - отправляет запрос и смотрит на код ответа. Если ответ адекватный, то айпи спален. Идеально? Нет, не идеально. Много дыр. Но достаточно хорошо, чтобы использовать без задней мысли. Контр-пример А теперь давайте попробуем сделать контр-пример. Nova, солнышко наше, согласился пожертвовать свой бложек для нашего препарирования: https://nova.ws И так, пробуем посмотреть записи Новы: По моему, у него там еще гугловые МХ были. В общем, это не самый лучший сервис для лукапа записей, он там иногда странные результаты выдает. Нету у новы записей, что палили бы его реальный хост. Как и у прошлого поц-и-энта. Пробуем всковырнуть бложек новы нашим сервисом: Ниндзя. Чего и следовало ожидать. Nova хостится у Б-га за пазухой. У него в аксесс-логе того бложека не только ваши айпишники логируются, но и ваш рост, вес, половая ориентация, паспортные данные и ваш greatest desire (c). Как грамотно прятать реальный IP за Cloud Flare Ну мы, в принципе, уже все описали. Вы и сами можете догадаться. Никогда не привязывайте ваш домен к реальному хостингу. Никогда не указывайте в ваших NS, A, CNAME, MX и других записях ваш реальный хостинг. Укажите так называемый DNS хостинг, который не ваш веб-хостинг. В нашем случае это CF, а уже CF будете вязать к вашему хостингу реальному. Так, давайте списочек хронологический Регистрируете домен. Создаете аккаунт в клаудфлере. получаете нсы. Домену прописываете CF нсы. Настраиваете свой хостинг. Настраиваете CF под свой хостинг. PROFIT!!1 Не забудьте включить полное проксирование в CF. Ваш сайт просто никогда не попадет в кеш с реальным айпи, так как он никогда не будет подключен к реальному айпи без прокси. Ура! Так, теперь как обойти эту защиту и спалить таки айпи даже при правильной настройке? Как грамотно проверять реальный IP за Cloud Flare Ну вы уже могли понять. По прямому-то запросу сайт будет отдавать вам хедеры адекватные, правильно? Прааавильно, так что что мы делаем? Мы пишем скриптулю. Я сначала хотел написать скриптулю, тем более у меня уже библиотеки подключены и хендлеры написаны, что можно переюзать для этого, но я пишу на ноде, а в ноде колбеки да прамисы и у меня еще три скрипта на очереди, а наши хакеры шарят юзать только пыхоскрипты, в основном, так что я решил не париться. Расскажу вам принцип. Вы собираете список айпишек всех хостеров, которых вы подозреваете. Ну для запада это будет годедди для мелких сайтов и амазон с диджитал оушеном для больших, для РФ - хетцнеры всякие и местные айпишки, наверное. Не обязательно конкретно каждого мелкого хостера собирать, можно сразу айпишки Лиров да Риров, если вам не влом. Идея ясна, в общем. И начинаете сканировать. Отправлять http-запросы и проверять хедеры ответов на адекватность. В хедере запроса указываете хост, конечно. Для нода я юзаю библиотеку request, а для пыхи обычно юзал курл, конечно. Но пыхой если кодить будете, учтите что сразу делайте многопоточность сюда. Нод иошную многопоточность нативно понимает в виде асинхронных функций, коллбеков и прамисов, а пыха в этом плане туповата. Ну хз, я щас на ноде кодю, посему предлагаю и решать на ноде. Пыху с мускулем я бросил, щас переписываю скрипты на нод с постгре. Вот либа нода, которую я бы выбрал, если бы писал с ноля: https://www.npmjs.com/package/ip-scanner и вот она на гите: https://github.com/ruzz311/ip-scanner Как получили ответ адекватный от сервера - кладите его в базу и продолжайте искать. Потом руками распарсите базу и отберете кандидатов, там их можно будет и руками проверить. Со временем у вас появятся блеклисты айпишек-ханипотов, которые всегда дают адекватные ответы, хотя никогда на них сайты не хостятся реально. Ну и вы выработаете правильные тайминги и правила для сканера, чтобы не попадать под баны антиддос систем. Так, теперь от этого тоже есть вполне очевидная защита, так? Вот у Nova не было ее, посему я его реальный айпишник нашел всего за четыре часа парсинга всяких хетцнеров и амазонов. Хехе, шутка, не искал я его. Очевидно, вы хотите сделать что-то вроде deny all from all а потом завайтлистить клаудфлер примерно вот таким образом: https://support.cloudflare.com/hc/en-us/articles/200169166-How-do-I-whitelist-Cloudflare-s-IP-addresses-in-iptables- Не забудьте завайтлистить ваши собственные айпишки, локальные айпишки и айпишки других сервисов, которым может понадобиться прямой доступ к серверу. Давайте мы подкинем еще несколько вариантов, по которым вас могут спалить. И по которым вы можете спалить, соответственно: Как еще можно слить реальный IP за Cloud Flare Ваша почта. Вариантов как спалить через почту довольно много. Я вместо того, чтобы париться с ее анонимизацией просто отдал бы ее в гугл. Сам пользуюсь гугловой почтой всюду. А так - можно палить через ссл сертификат почты, там может светиться хост. Это палево когда почта у вас локально хостится с сайтом. Другой вариант Егорка подсказывает - почтовые рилеи могут палить айпи в заголовке, это надо резать. Баннер ссш может отдавать, вот пример: В принципе, если вы запрещаете коннекты с левых айпи на низком уровне, то вам это не страшно, но лучше не иметь такого баннера и вообще не иметь реального домена в хостнейме. Кстати, если у кого-то есть идея о ситуации, где реальный домен будет полезен в хосте сервера - вы напишите, нам интересно. Ваш родной ссл на 443 тоже может иметь излишние данные о вас. Опять таки, брутить айпишники по 443му порту в поиске хендшейка с вашим доменом в инфе сертификата, но это не так надежно. Вообще, не имейте родного сертификата если вас клауд полностью проксирует, от этого больше вреда чем пользы. Не забывайте что упоминания о вашем домене может быть в сертах, в том числе и самоподписанных, софта который стоит у вас на сервере, или привязан к вашему домену. Хороший пример - https://censys.io/ попробуем найти там домен Новы? Попробуем! Нашли. Посмотрим хуиз того айпишника: видим что это не клауд. Видим что это OVH. Там живет редмайн Новы. У редмайна в сертификате был упомянут домен nova.ws. Когда censys сканил интернеты, он закешировал себе (заиндексировал, если вам так удобней) сертификат редмайна. Когда ищешь домен Новы, оно показывает этот сертификат. Бложек Новы на другом сервере живет, так что он не стесняется светить айпи. Вообще, тут Егор подсказал, что любая система может на каком-то этапе начать лить айпи. Лучше иметь парсер в виде виртуальной прокси, который бы парсил все респонсы на предмет наличия в них вашего айпи или хоста. Как только нашел что-то - прислать респонс и реквест, который вызвал респонс на почту, или инпутнуть в базу, чтобы потом проверить и пофиксить систему, которая палит айпи. Потенциально, любой веб-скрипт который вы держите, имеет доступ к вашему реальному айпи и имеет физическую возможность этот айпи слить. Возможно, при какой-то специфической ошибке этого конкретного движка айпи сливается в паблик. Возможно, кто-то в процессе лома ваших скриптов найдет айпишник реальный. За то у вас будет система раннего предупреждения. Можете в этот парсер добавить кроме айпи еще какие-то вещи, которые неплохо было бы мониторить типа оглавлений вашей информационной схемы, но это уже другая тема, хе-хе-хе. Заключение Ребят, нам с Новой будет жутко неприятно, если вы будете пользоваться нашими мыслями, причиняя зло другим людям. Эта статья писалась с целью создавать добро и никак не иначе. Делайте хорошие штуки и у вас все будет хорошо. И будет что детям рассказать. А не: "А папа в твоем возрасте уже по полной продавал фейковые аудионаркотики своим одноклассникам!" Мы не претендуем на идеальность описанных вариантов атак и защит, так что будем благодарны за любую критику или ваши собственные идеи/наработки. Не стесняйтесь камментить, задавать вопросы и показывать нам наши ошибки, мы всегда рады. Мы надеемся вам было интересно. С вами были Nova и cthulchu. Со всех тех, кому мы в тележке ачата пробивали их сайты не забывайте лайкос. И подписывайтесь на наш канал, здесь говорят правду Спасибо!
Померла в деревне корова. Приходит бабка, видит мертвую корову, тут то её инфаркт и прихватил. Приходит дед, видит мертвую корову, мертвую бабку и с горя тоже помер. Приходит старший сын, видит картину - мертвые корова, бабка и дед, опечалился и пошел на реку грусть развеять... Приходит значит он на реку, тут приплывет русалка и говорит: если ты меня пять раз за ночь отымеешь, то я всех оживлю. Старший за ночь смог только три раза. Русалка ему и говорит: не, ты не мужик. И уплыла Старший пошел и с горя повесился. Приходит средний сын, видит картину - мертвые корова, бабка, дед и старший брат, опечалился и пошел на реку грусть развеять... Приходит значит он на реку, тут приплывет русалка и говорит: если ты меня пять раз за ночь отымеешь, то я всех оживлю. Средний за ночь смог только четыре раза. Русалка ему и говорит: не, ты не мужик. И уплыла Средний пошел и с горя застрелился. Приходит младший сын, видит картину - мертвые корова, бабка, дед, старший и средний братья, опечалился и пошел на реку грусть развеять... Приходит значит он на реку, тут приплывет русалка и говорит: если ты меня пять раз за ночь отымеешь, то я всех оживлю. Младший (М) говорит: а что пять? давай десять! Русалка (Р) (удивленно) ну, давай десять... (М) ха, а че десять? давай двадцать! (Р) (вааще в полном офигении) ну давай! (М) а что двадцать, давай уж сразу тридцать!!! (Р) (закатив глаза) о-го! давай! Младший смотрит на нее и говорит: слушай а ты не сдохнешь как наша коровка?
В теории всё хорошо. Но вот в реале эти все онлайн сервисы - чепуха, которая не определяет даже IP адреса сайтов всё тех же узбекских газет. Такой статьёй хорошо лить в уши лектору-теоретику на экзамене. Нам нужны конкретные рабочие пруфы скрипты, Карл, а не теория как их писать. Хотя бы 10 5 рабочих скриптов, которые не только создают видимось работы, а и выдают результаты - в студию, и я даю вам слово, что в чёрном призовом ящике находится не "Ай, бля!", а мышеловка фирмы Philips.