Неиндексируемые директории не защитят вас от взлома
@toriningenДобрый день. На просторах интернета встретилась ссылка на https://nekusai.ru, которая на тот момент представляла из себя вот такой обратный счетчик:
Естественно, некоторым людям стало интересно, что будет, когда счетчик закончится, но ждать несколько дней не хотелось. Вдруг там загадка?
Мне повезло и анализ сайта оказался достаточно коротким.
Первым делом проверяем DNS-записи:
Кроме единственного IP, ничего интересного. Обратный поиск тоже не дает много информации:
Пробуем зайти по этому айпишнику:
Видим 301-редирект на https://italianweek.showjet.ru/, сайт онлайн-кинотеатра. Так как это default vhost, можно быть уверенным на 100%, что это не shared-хостинг, а связанные сайты под управлением одного администратора.
Возвращаемся к основной цели. Проверяем сертификат на предмет альтернативных доменных имен — увы, обычный сертификат Let's Encrypt без особенностей.
Проверяем https://nekusai.ru/index.php — ответ есть, можно быть более-менее уверенным, что несмотря на то, что в заголовках чисто, сайт крутится на php.
Перебор всяких test.php, phpinfo.php, admin.php, login.php, t.php, a.php, lol.php, i.php и прочих не дал результатов. Ну, не все хранят мусор в корне прода. Вспоминаем, что еще может храниться в корне прода у неряшливых админов.
.htaccess? Мимо. robots.txt? Мимо, хотя должен бы быть. https://nekusai.ru/sitemap.xml? Есть, но скучный.
.git? Хм. Запрашиваем https://nekusai.ru/.git
Редирект на директорию?
С закрытой индексацией?
Но с открытыми файлами репозитория? С этим уже можно работать. Изначально при анализе я выкачивал рефы руками, но, как оказалось, в этом нет нужды и есть готовые скачиватели .git-репозиториев, которые, увы, не отличаются хорошим уровнем поддержки, и пропускают часть объектов.
Я воспользовался https://github.com/kost/dvcs-ripper:
Полученный репозиторий достаточно сильно неполон. Заполняем рабочую директорию тем, что удалось стянуть, проверяем результат:
Запоминаем имена поврежденных объектов, и т.к. все они выглядят статическими, скачиваем их по прямым ссылкам.
Вуаля, вы великолепны.
Что же все-таки произойдет, когда счетчик закончится?
К сожалению, ничего особо интересного:
Впрочем, кому-то может и понравиться.
Бонус:
Все желающие могут передать привет Михаилу и его молодой команде.
На этом все, еще один скучный разбор закончен — не храните на проде ничего из того, что не должно там быть, ведь в следующий раз это может оказаться нечто ценнее анонса фильма категории Б.
Спасибо.