СКАНЕРЫ БЕЗОПАСНОСТИ ПОД WIN

marooned (fddx@land.ru)

Спецвыпуск Xakep, номер #023, стр. 023-026-1


Любителей похакерить сейчас пруд пруди. А некоторые особо одаренные делают это умышленно и даже (кто бы мог подумать!) с корыстной целью. Поэтому еще со времен появления Первого Хакера Всея Инета люди задумались о безопасности своих систем. Сканеры сетевой безопасности стали появляться лет десять назад, когда кого-то осенила идея, что неплохо было бы заиметь эдакое диагностическое средство для анализа безопасности. Хотя это с какой стороны посмотреть: кого-то волнует безопасность сети, а кого-то "опасность" :).

ЧЕМ КОПАТЬ БУДЕМ

Сканер производит анализ сети (отдельного ее узла или просто удаленного компьютера), который состоит из поиска уязвимостей (скромно называемых в народе "дырами" ): дефолтных паролей, бакланских настроек сервера, бажного ПО, установленного на нем, левых скриптов и так далее. Сначала он собирает информацию о доступных узлах сети и анализирует полученные результаты, потом создает отчеты и выносит рекомендации, а некоторые сканеры могут даже автоматически устранить найденную уязвимость или выдать фикс-скрипт.

Разработчики, как правило, вовсю расхваливают свои продукты, уникальные технологии, хотя понятно, что ни один из них не способен обнаружить все дыры. По принципу действия все сканеры очень похожи на антивирусы, потому что у каждого сканера есть база данных, содержащая описание всех известных дыр, которое сравнивается с результатами анализа. Это и является своего рода ограничением.

По идее любой уважающий себя сканер должен уметь сканировать:

- Web-, FTP- и почтовые серверы;

- броузеры, почтовые программы и серверы баз данных;

- пароли и учетные записи;

- подверженность DoS-атакам;

- права доступа к файлам и каталогам;

а также:

- распознавать тип сервера;

- использовать многопоточное сканирование;

- работать через прокси;

- автоматически обновлять свои базы данных;

- выводить отчет в HTML;

- иметь дополнительные функции типа Whois.

Ну и, естественно, у каждого сканера обычно есть своя фича типа "супер-пупер эвристический анализ", с помощью которого он может попытаться найти новые дыры, которых нет у него в базе.

Для начала сканер определяет тип ОС, ее версию, используемые сервисы и протоколы. Выяснив это, он ищет все доступные ресурсы, например, открытые порты и "грабит" их заголовки, чтобы узнать оттуда, например, версию ПО. И если у него в базе данных есть дыра по этой версии, то он сразу скажет об этом, а также о степени опасности дырки. Но хитрый админ, начитавшийся Bugtraq'ов, может изменить заголовок или, заранее зная о дыре, вовремя нашлепать фикс. Потому точно проверить, есть ли дыры, можно, проведя на сервак атаку (обычно сканеры предлагают всевозможные DoS-атаки и иногда брутфорс паролей), причем сканер честно предупредит, что это опасно и нехорошо :). И вот наступает долгожданный момент: проверка закончилась - в отчете ни одной дырки. Лезем в лог сканера - опять ничего! Однако рано обламываться: если сканер дыр на хосте не нашел, это еще не значит, что их там нет. Может, там установлен файервол или еще какие фильтры. К тому же автоматическая проверка может и пропустить распространенную дыру, которую легко найти вручную. Конечно, шансов найти дыры в удаленной системе не так много, но кто ищет, тот ведь всегда найдет... А когда найдет...

Содержание  Вперед на стр. 023-026-2