Любой, кто поднимал сайты знает, что стоит запустить веб-сервер, как на него начинают приходить запросы. Еще и DNS про него толком не знает, а в лог-файле ошибок httpd уже полно записей вроде таких:
Вот мне стало интересно, и я решил изучить этот вопрос поглубже. Как только появилось время, я написал парсер логов веб-сервера. Поскольку люблю наглядность, результаты поместил на карту.
И вот какая картина получилась:
На карте маркерами отмечены местоположения, определенные по IP адресам источников сканирования. Для получения информации использовалась бесплатная оффлайновая библиотека SxGeo, а для отображения — 2GIS API. Конечно, в силу бесплатности библиотека SxGeo не обладает высокой точностью, а некоторые адреса попадают в океан. Однако со временем(на текущий момент у меня накопилась статистика за 2 месяца) картина приобретает вполне ясные очертания.
Наверняка какая-то часть из адресов это прокси. В то же время источники сканирования практически равномерно покрывают наиболее развитые в смысле ИТ регионы мира.
Однако, как сказал бы наш любимый Михаил Сергеевич Боярский — «Тысяча чертей», что не так с Австралией?
Кроме распределения источников сканирования мне также было интересно собрать целевые пути, которые проверяют сканеры. Таковых оказалось довольно много. Ниже приведу лишь малую часть таргетов для примера:
var/www/html/RPC2
/var/www/html/SQLite
/var/www/html/SQLiteManager
/var/www/html/SQLiteManager-1.2.4
/var/www/html/SQlite
/var/www/html/Snom
/var/www/html/Version.html
/var/www/html/Yealink
/var/www/html/xd1x86xd1x80xd1x89xd1x8bxd1x81xd1x84xd1x82xd1x8cxd1x83
/var/www/html/_PHPMYADMIN
/var/www/html/_pHpMyAdMiN
/var/www/html/_phpMyAdmin
/var/www/html/_phpmyadmin
/var/www/html/_query.php
/var/www/html/_whatsnew.html
/var/www/html/adm
/var/www/html/admin
/var/www/html/admin.php
/var/www/html/admin888
/var/www/html/admin_area
/var/www/html/admin_manage
/var/www/html/admin_manage_access
/var/www/html/admindb
/var/www/html/administrator
/var/www/html/administrator.php
/var/www/html/adminzone
Часто встречается игра с регистром:
/var/www/html/_PHPMYADMIN
/var/www/html/_pHpMyAdMiN
/var/www/html/_phpMyAdmin
/var/www/html/_phpmyadmin
Бывают и экзотические таргеты, которым уж точно неоткуда взяться у меня:
/var/www/html/w00tw00t.at.blackhats.romanian.anti-sec
/var/www/html/nmaplowercheck1523152976
/var/www/html/elastix_warning_authentication.php
Полный список таргетов вы можете забрать по ссылке в подвале. Система отлова сейчас работает в автоматическом режиме и значит постоянно пополняется.
Хорошо, но что с этим делать? Полученная нами информация, как и любая другая, может быть использована по-разному.
Например:
- При создании сайтов, особенно на основе стандартных CMS и с применением стандартных СУБД, желательно изменять стандартные имена каталогов и файлов. Не оставлять установочные директории после окончания установки. Не размещать конфигурационные файлы в корневой директории или папке с именем «configuration», «config» и т. п.
- Может быть блокировать на уровне iptables адреса, с которых ведется сканирование. Конечно это крайний случай, но возможность такая есть и она может быть автоматизирована.
- Используя словарь отловленных таргетов можно проверить структуру сайта на совпадения. для этого используется простейший скрипт.
И еще один способ использования «крутых хакеров» в своих целях это подъем посещаемости сайта. Это и шутка и нет.
Это действительно работает, если на основе словаря отловленных таргетов создать файлы на своем сайте, а внутри разместить произвольный текст и код счетчика.
И это шутка, потому что реально уникальных IP адресов сканеров не так и много. У меня за 2 месяца их наловилось 275.
Надо отметить, что с некоторых адресов сканирование наблюдалось один раз, в то время как с других оно выполняется ежедневно. Но процесс этот постоянный. Интересно какую долю трафика в Сети занимает скан-трафик. Видимо не очень большую раз никто с этим не борется.
С другой стороны, раз сканеры работают, значит они кому-то полезны.
Так что будьте бдительны.
Спасибо за внимание.
Список источников:
Автор: R_Voland