- PVSM.RU - https://www.pvsm.ru -
В статье Что и зачем ищут на сайтах «боты тёмной стороны силы» [1] мы рассмотрели типичные примеры из журналов разных сайтов.
Однако, намного интереснее вариация на тему радиоигры в разведке [2]. Что это такое и как его готовить — расскажу далее.
Перечислим основные положения. Если Вы с ними не согласны, то лучше не тратьте Ваше время и не читайте дальше. Итак, основные положения:
Honeypot, если кратко, это разновидность ловушки, с помощью которой исследователь собирает материал. Информацию о разновидностях, существующих решениях, в т.ч. OpenSource, легко найти в сети, поэтому не будем на них останавливаться.
Перейдем к сути:
Необходимо определиться с площадкой, где будет расположен наш honeypot. Для снижения порога вхождения выберем shared-хостинг, т.к. это избавляет от вопросов системного администрирования (установка, оптимальная настройка, защита и обновления), быстро и достаточно дешево. Серверы (диапазоны IP web-серверов) хостинговых компаний известны и никогда не жалуются на отсутствие внимания со стороны ботов.
Желающие могут сразу взяться за VPS/VDS, главное, не застрять на этапе настройки сервера.
Новый домен, как правило, сразу привлекает к себе внимание ботов, хотя и «старые» домены тоже отлично подойдут. Если использовать действующий домен (сайт), то могут возникнуть побочные эффекты из-за возможных ошибок перенаправления или излишней нагрузки.
По грубым оценка на начало 2015 года новый домен и несколько месяцев
Решений для этой задачи масса, зависят от используемого web-сервера и уровня влияния на настройки сервера. Предложенный простейший вариант подойдет для нового домена. Это не мешает главному делу и позволяет скорее перейти к самому, на наш взгляд, интересному.
RewriteEngine On
RewriteRule .* index.php [L]
Все запросы заворачиваются на index.php.
Для более тонкой настройки перенаправлений, особенно для действующего сайта, надо не лениться и обратиться к документации или статьям, например, Как на самом деле работает mod_rewrite. Пособие для продолжающих [4]
В скрипте, на который заворачиваем запросы, мы реализуем следующий функционал:
В вот, наконец, мы подошли к главному. Что же будет представлять из себя игра?
Проанализировав статистику, вы выбираете бота, которого хотите исследовать. Идентифицировать бота можно попытаться по разным признакам (диапазоны IP, время сканирования, User-Agent, характерные запросы URL и т.д.)
После этого Вы маскируетесь под ожидания бота и, выдавая ему ту информацию и файлы, которые он ожидает, полностью описываете его поведение от этапа сканирования до попыток применения экспроитов, нестандартных вызовов, скачивания специфических файлов и т.д.
Например, бот ожидает некоторый css файл — получите, после этого пытается обратиться к специфическому файлу — ищете в сети информацию о нем и выдаете, передает параметры — пытаемся подделать ответ и т.д. Здесь как раз пригодится легковесная реализация сессий.
Конечно, между первым обращением и построением всей цепочки ответов может пройти несколько итераций с элементами угадывания и ручного поиска информации. Но это и есть борьба умов (Вы <-> разработчик алгоритма бота), настоящие шахматы!
Дерзайте! И пусть Ваш труд будет во благо!
Предупреждая предложения сразу выложить готовый код (почему это не сделано):
Автор: nvv
Источник [7]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/programmirovanie/83486
Ссылки в тексте:
[1] Что и зачем ищут на сайтах «боты тёмной стороны силы»: http://habrahabr.ru/post/250313/
[2] радиоигры в разведке: https://ru.wikipedia.org/wiki/Радиоигра (разведка)
[3] хостинг: https://www.reg.ru/?rlink=reflink-717
[4] Как на самом деле работает mod_rewrite. Пособие для продолжающих: http://habrahabr.ru/company/sprinthost/blog/129560/
[5] $_SERVER: https://php.net/manual/ru/reserved.variables.server.php
[6] Нестандартная оптимизация проектов на PHP: http://habrahabr.ru/post/250985/
[7] Источник: http://habrahabr.ru/post/250573/
Нажмите здесь для печати.