Использование сканеров безопасности в процессе тестирования сети на устойчивость к взлому
•идентификация топологии сети;
•идентификация открытых портов;
•идентификация служб;
•идентификация приложений;
•идентификация операционных систем.
Далее следует процесс идентификации уязвимостей. На этом этапе используется собранная ранее информация об узлах, установленных на них ОС и службах. Главным образом используется информация о службах, их версиях, а также о приложениях, реализующих указанные службы. Эта информация сопоставляется с информацией об известных уязвимостях, т. е. с базой уязвимостей.
Последний этап – подтверждение (верификация) уязвимостей, выявленных на предыдущем этапе. Этот этап можно назвать основным в рассматриваемой методологии. Если атака проведена успешно, уязвимость считается подтверждённой.
Наконец, по каждому этапу составляется отчёт.
Как показывает практика, полностью автоматизировать процедуру тестирования сети на устойчивость к взлому невозможно. Что касается сканеров безопасности, то они могут быть использованы на этапах сбора информации и идентификации уязвимостей. Кроме того, отчёты сканера безопасности могут быть включены в общий отчёт по проводимому тесту.
Следовательно, от сканера безопасности в данном случае требуется:
•умение собирать информацию об узлах сети;
•умение идентифицировать уязвимости (в том числе на основе собранной информации);
•формирование исчерпывающих отчётов для включения результатов в итоговый отчёт, а также для перехода к этапу проведения атак на систему.
5.2. Настройка сканеров безопасности
Тест на устойчивость к взлому подразумевает настройку сканера в соответствии со следующими рекомендациями:
1.Должно быть задействовано как можно больше методов идентификации узлов сети (в частности, методы ICMP Ping и TCP Ping). Для сканеров, не имеющих генератора пакетов, должен быть выбран режим, при котором производится сканирование узлов, не ответивших на запросы ICMP ECHO (Рис. 4).
Copyright© 2005, Учебный центр "Информзащита" |
Стр. 11 из 34 |
Использование сканеров безопасности в процессе тестирования сети на устойчивость к взлому
Рис. 4. Параметры идентификации узлов в сканере XSpider.
2.Идентификация открытых портов TCP/UDP должна проводиться по всему диапазону (1-65535). При этом, в принципе, могут быть использованы любые методы, для ускорения процесса рекомендуется использовать полусканирование портов ТСР (Рис. 5).
Рис. 5. Задание диапазона сканируемых портов в сканере XSpider.
3. Должны задействоваться все методы идентификации служб и приложений (Рис. 6)
Рис. 6. Включение идентификации служб в сканере XSpider.
4. Должны быть задействованы все методы идентификации операционных систем (Рис. 7).
Рис. 7. Включение идентификации ОС в сканере XSpider.
Copyright© 2005, Учебный центр "Информзащита" |
Стр. 12 из 34 |
Использование сканеров безопасности в процессе тестирования сети на устойчивость к взлому
5.Должны быть выбраны необходимые проверки (или группы проверок). В данном случае для целей сравнения были задействованы все проверки, за исключением тех, что могут приводить к выведению из строя тестируемые службы.
6.Если сканер выполняет проверки разными методами, то в данном случае логичнее использование метода выявления уязвимостей путём проведения явных атак.
7.Для подключения к сканируемому узлу в процессе тестирования на устойчивость к взлому учётная запись не используется. Это означает, что в случае возможности выбора необходимо использовать «нулевой сеанс».
Это также означает, что должны быть использованы стандартные словари для подбора паролей к сканируемым службам.
Все перечисленные параметры могут быть настроены с помощью соответствующих диалогов настройки, имеющихся в большинстве сетевых сканеров безопасности.
5.3. Объекты сканирования
В качестве объектов сканирования были использованы «реальные мишени» – узлы корпоративных сетей, доступные снаружи. Это узлы, составляющие периметр корпоративных сетей и узлы ДМЗ (Рис. 8).
Рис. 8. Расположение сканеров по отношению к объектам сканирования.
Copyright© 2005, Учебный центр "Информзащита" |
Стр. 13 из 34 |
Использование сканеров безопасности в процессе тестирования сети на устойчивость к взлому
Таким образом, перед сканерами была поставлена задача с реальными входными данными и условиями. Всего каждым сканером было просканировано 23 узла.
Copyright© 2005, Учебный центр "Информзащита" |
Стр. 14 из 34 |
Использование сканеров безопасности в процессе тестирования сети на устойчивость к взлому
6. Анализ результатов
6.1. Сложности (особенности) сравнения сканеров в режиме тестирования сети на устойчивость к взлому
Сравнение сканеров в условиях, максимально приближенных к реальным, вне всякого сомнения, даёт самые точные результаты.
С другой стороны, следует понимать и некоторые ограничения такого сравнения. Например, сканирование растянулось во времени, поскольку сканеры использовались по очереди. В течение этого времени состояние защищённости узлов могло меняться. Для повышения достоверности результатов перечень найденных сканерами служб был приведён «к общему знаменателю» - были оставлены только те сетевые службы, которые были найдены каждым из сканеров.
6.2. Методика начисления баллов
Не все сканеры выполняют одинаковые проверки, поэтому если один сканер не нашёл уязвимость, а другой нашёл, это может означать:
•Уязвимость имеется, и первый сканер не смог её выявить, хотя соответствующая проверка была задействована.
•Уязвимость имеется, и первый сканер не смог её выявить, потому что и не пытался.
•Уязвимости на самом деле нет, и выявление её другим сканером следует считать ложным срабатыванием.
По каждому узлу имеется такой показатель, как общее число имеющихся уязвимостей. Он определяется как сумма всех подтверждённых уязвимостей, найденных всеми сканерами. Это своего рода идеал, степень близости к которому и должна сравниваться.
Следовательно, необходимо по каждому узлу объединить уязвимости, найденные всеми сканерами и установить правила подсчёта баллов следующим образом:
•Уязвимость найдена, и она действительно имеется – 1 балл
•Уязвимость не найдена и её действительно нет – 0 баллов
•Уязвимость не найдена, потому что сканер не имеет такой проверки – -1 балл (минус один балл)
•Уязвимость не найдена, но она имеется и задействована соответствующая проверка (пропуск уязвимости, False Negative) – -1 балл (минус один балл)
•Уязвимость найдена, но на самом деле её нет (ложное срабатывание, False Positive) – -1 балл (минус один балл)
Copyright© 2005, Учебный центр "Информзащита" |
Стр. 15 из 34 |
Использование сканеров безопасности в процессе тестирования сети на устойчивость к взлому
Таким образом, за ошибки будут начисляться «штрафные очки», которые затем будут вычитаться из общего числа имеющихся уязвимостей (обнаруженных всеми сканерами). Получившееся значение будет показателем качества сканера.
Сканеры будут сравниваться в общей сложности по пяти показателям:
•качество сканирования
•количество найденных уязвимостей за вычетом ложных срабатываний (ошибочно найденных уязвимостей)
•количество ошибочно найденных уязвимостей
•количество ошибочно пропущенных уязвимостей
•количество пропущенных уязвимостей по причине отсутствия проверки в базе.
Далее приведено несколько примеров подсчёта баллов.
6.3. Пример подсчёта баллов – узел 1.1.1.1 (host1.test)
Для начала отбираем найденные всеми сканерами открытые порты. В данном случае все четыре сканера нашли только один открытый порт ТСР:53, то есть тестируемый узел представляет собой сервер DNS. Найденные всеми сканерами уязвимости сводим в таблицу (Таблица 4). В общей сложности сканерами было найдено три уязвимости:
•поддержка рекурсивных запросов
•поддержка инверсных запросов
•возможность получения зоны по соответствующему запросу Первые три строки Таблицы 4 – это и есть найденные уязвимости.
Найденные открытые порты TCP |
53 |
|
|
Таблица 4. Уязвимости узла 1.1.1.1
Уязвимости |
Риск |
CVE |
XSpider |
IS |
Retina |
Nessus |
Реально |
|
|
|
|
|
|
|
|
Рекурсия |
Средний CVE-1999-0024 |
1 |
-1 |
-1 |
-1 |
1 |
|
iquery: DNS server inverse queries |
Средний |
|
-1 |
1 |
-1 |
-1 |
1 |
zonexfer: DNS honors zone transfer requests requests |
Средний |
CAN-1999-0532 |
-1 |
1 |
-1 |
1 |
1 |
|
|
|
|
|
|
|
|
Итого баллов |
|
|
1 |
2 |
0 |
1 |
|
Найдено уязвимостей |
|
|
1 |
2 |
0 |
1 |
|
|
|
|
|
|
|
|
|
False Positives (ложное обнаружение) |
|
|
0 |
0 |
0 |
0 |
|
|
|
|
|
|
|
|
|
False Negatives (пропуск) |
|
|
0 |
0 |
1 |
1 |
|
|
|
|
|
|
|
|
|
False Negatives (отсутствие в базе) |
|
|
2 |
1 |
2 |
1 |
|
|
|
|
|
|
|
|
|
Copyright© 2005, Учебный центр "Информзащита" |
Стр. 16 из 34 |
Использование сканеров безопасности в процессе тестирования сети на устойчивость к взлому
После проверки оказалось, что все три уязвимости в действительности имеются на узле 1.1.1.1. Поэтому в столбце «Реально» стоят «единицы» для каждой из трёх уязвимостей.
Теперь необходимо проанализировать, как каждый из сканеров «справился с заданием».
То, что сервер DNS поддерживает рекурсивные запросы (CVE-1999-0024), обнаружил сканер XSpider. Internet Scanner (IS) не выполняет такую проверку (за это ему начислено 1 штрафное очко, этот факт обозначен зелёным цветом). Сканеры Nessus и Retina данную проверку выполняют, но ими поддержка рекурсии не была обнаружена (за это также начисляется 1 штрафное очко, этот факт обозначен красным цветом). Таким образом, если сканер не обнаружил имеющейся уязвимости по причине её отсутствия в своей базе, соответствующая ячейка таблицы отмечена зелёным цветом. Если пропуск уязвимости – следствие ошибки, ячейка таблицы помечена красным. В любом случае, за пропуск уязвимости вычитается 1 балл. Если сканер найдёт уязвимость, которой на самом деле нет, за это тоже будет вычитаться один балл, а соответствующая ячейка будет помечена жёлтым цветом (в данном примере таких случаев не было).
Поддержка инверсных запросов (iquery) обнаружена только сканером IS, остальные сканеры не имеют такой проверки.
Возможность передачи зоны с сервера DNS проверяют только IS и Nessus.
Таким образом, первые три строки Таблицы 4 заполнены. Теперь необходимо посчитать баллы. Для этого из общего числа уязвимостей (в данном случае - 3) вычитаются «штрафные» очки. Для сканера XSpider получается 1 балл из трёх возможных (3-1-1), IS получает два балла и т. д.
Заполнена ещё одна строка таблицы – «Итого баллов». Фактически, этот показатель – это показатель качества модуля сканирования каждого из сканеров.
В следующей строке таблицы («Найдено уязвимостей») приводится информация о том, сколько вообще было найдено уязвимостей. В данном случае, результат совпал с предыдущей строкой по причине отсутствия ложных срабатываний. Ложных срабатываний (False Positives) в данном случае не было, поэтому следующая строка таблицы содержит нули (а вообще – это количество «жёлтых» ячеек).
Количество пропусков по причине ошибок отражает следующая строка – это количество «красных» ячеек.
Наконец, последний показатель – количество пропусков по причине отсутствия проверок в базе – количество «зелёных» ячеек.
6.4. Ещё один пример - узел 2.2.2.2 (host2.test)
Найденные открытые порты TCP |
25, 53 |
|
|
Таблица 5. Уязвимости узла 2.2.2.2
Уязвимости |
Риск |
CVE |
XSpider |
IS |
Retina |
Nessus |
Реально |
|
|
|
|
|
|
|
|
EhloCheck: SMTP daemon supports EHLO |
низкий CAN-1999-0531 |
-1 |
1 |
-1 |
-1 |
1 |
|
iquery: DNS server inverse queries |
средний |
|
-1 |
1 |
-1 |
-1 |
1 |
zonexfer: DNS honors zone transfer requests requests |
средний |
CAN-1999-0532 |
-1 |
1 |
-1 |
-1 |
1 |
|
|
|
|
|
|
|
|
Copyright© 2005, Учебный центр "Информзащита" |
Стр. 17 из 34 |
Использование сканеров безопасности в процессе тестирования сети на устойчивость к взлому
Уязвимости |
Риск |
CVE |
XSpider |
IS |
Retina |
Nessus |
Реально |
Рекурсия |
средний |
CVE-1999-0024 |
1 |
-1 |
-1 |
-1 |
1 |
Итого |
1 |
3 |
0 |
0 |
Найдено уязвимостей |
1 |
3 |
0 |
0 |
|
|
|
|
|
False Positives (ложное обнаружение) |
0 |
0 |
0 |
0 |
|
|
|
|
|
False Negatives (пропуск) |
0 |
0 |
2 |
2 |
|
|
|
|
|
False Negatives (отсутствие в базе) |
3 |
1 |
2 |
2 |
|
|
|
|
|
Здесь, в дополнение к тому, что было найдено для узла 1.1.1.1, найдена поддержка службой SMTP команды EHLO. Краткие итоги по данному узлу:
•XSpider нашёл одну уязвимость из четырёх возможных;
•Internet Scanner – 3;
•Retina – 0;
•Nessus – 0.
Ложных обнаружений не было, пропуски были, их число приведено в соответствующих строках Таблицы 5.
6.5. Результаты по остальным узлам
Далее приведены краткие результаты по остальным узлам. Для сокращения в таблицах приводится только показатель качества (начисленные баллы).
Узел 3 – 3.3.3.3 (host3.test)
Найденные открытые порты TCP |
21, 53, 80 |
|
|
Таблица 6. Уязвимости узла 3.3.3.3
Уязвимости |
Риск |
CVE |
XSpider |
|
IS |
Retina |
Nessus |
Реально |
|
|
|
|
|
|
|
|
|
Доступен метод TRACE |
низкий |
|
1 |
1 |
1 |
1 |
1 |
|
|
|
|
|
|
|
|
|
|
Apache cookie: Apache cookies buffer overflow |
высокий |
|
0 |
|
-1 |
0 |
0 |
0 |
Apache-SSL Client Certificate Forging |
низкий |
CVE-2004-0009 |
0 |
0 |
-1 |
0 |
0 |
|
Итого |
|
|
1 |
0 |
0 |
1 |
|
|
В данном случае было два ложных срабатывания, они обозначены жёлтым цветом.
Copyright© 2005, Учебный центр "Информзащита" |
Стр. 18 из 34 |
Использование сканеров безопасности в процессе тестирования сети на устойчивость к взлому
Узел 4 – 4.4.4.4 (host4.test)
Найденные открытые порты TCP: |
22, 25, 53 |
|
|
Таблица 7. Уязвимости узла 4.4.4.4 |
|
|
|
|
|
|
|
Уязвимости |
Риск |
CVE |
XSpider |
IS |
Retina |
Nessus |
Реально |
zonexfer: DNS honors zone transfer requests requests |
средний CAN-1999-0532 |
-1 |
1 |
-1 |
-1 |
1 |
|
EhloCheck: SMTP daemon supports EHLO |
низкий |
CAN-1999-0531 |
-1 |
1 |
-1 |
-1 |
1 |
Итого |
|
|
0 |
2 |
0 |
0 |
|
Узел 5 – 5.5.5.5 (host5.test)
Найденные открытые порты TCP |
80, 443, 446 |
|
|
Таблица 8. Уязвимости узла 5.5.5.5
Уязвимости |
Риск |
CVE |
XSpider |
|
IS |
Retina |
Nessus |
Реально |
|
|
|
|
|
|
|
|
|
SQL инъекция 1 |
высокий |
|
1 |
|
-1 |
-1 |
-1 |
1 |
SQL инъекция 2 |
высокий |
|
1 |
|
-1 |
-1 |
-1 |
1 |
SQL инъекция 3 |
высокий |
|
1 |
|
-1 |
-1 |
-1 |
1 |
SQL инъекция 4 |
высокий |
|
1 |
|
-1 |
-1 |
-1 |
1 |
Итого |
|
|
4 |
0 |
0 |
0 |
|
|
Узел 6 – 6.6.6.6 (host6.test)
Найденные открытые порты TCP |
80, 443 |
|
|
Таблица 9. Уязвимости узла 6.6.6.6
Уязвимости |
Риск |
CVE |
XSpider |
IS |
Retina |
Nessus |
Реально |
|
|
|
|
|
|
|
|
доступен метод TRACE |
низкий |
|
1 |
1 |
1 |
-1 |
1 |
Межсайтовый скриптинг (XSS) 1 |
средний |
|
1 |
-1 |
-1 |
-1 |
1 |
Межсайтовый скриптинг (XSS) 2 |
средний |
|
1 |
-1 |
-1 |
-1 |
1 |
Межсайтовый скриптинг (XSS) 3 |
средний |
|
1 |
-1 |
-1 |
-1 |
1 |
|
|
|
|
|
|
|
|
Copyright© 2005, Учебный центр "Информзащита" |
Стр. 19 из 34 |
Использование сканеров безопасности в процессе тестирования сети на устойчивость к взлому
|
Уязвимости |
|
Риск |
CVE |
|
XSpider |
|
IS |
|
Retina |
|
|
Nessus |
|
Реально |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Загрузка файлов (PHP) |
|
средний |
|
1 |
|
-1 |
|
-1 |
|
1 |
|
1 |
|
||
|
Удаленное выполнение команд (PHP) |
|
средний |
CAN-2002-1396 |
1 |
|
-1 |
|
-1 |
|
1 |
|
1 |
|
||
|
Переполнение буфера (PHP) |
|
средний |
CAN-2003-0097 |
1 |
|
-1 |
|
-1 |
|
|
-1 |
|
1 |
|
|
|
Множественные уязвимости (PHP) |
|
средний |
CAN-2004-0594 |
1 |
|
-1 |
|
1 |
|
1 |
|
1 |
|
||
|
IisWebdavRunning: Microsoft IIS WebDAV service is |
|
средний |
|
|
-1 |
|
1 |
|
1 |
|
|
-1 |
|
1 |
|
|
running on the system |
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Итого |
|
|
|
8 |
|
2 |
|
3 |
|
3 |
|
|
|
||
Узел 7 – 7.7.7.7 (host7.test)
Найденные открытые порты TCP |
21, 22, 25, 53, 80 |
|
|
Таблица 10. Уязвимости узла 7.7.7.7
Уязвимости |
Риск |
CVE |
XSpider |
IS |
Retina |
Nessus |
Реально |
|
|
|
|
|
|
|
|
доступен метод TRACE |
низкий |
|
1 |
1 |
1 |
1 |
1 |
|
|
|
|
|
|
|
|
Повышение привилегий (Apache) |
средний |
|
1 |
-1 |
-1 |
1 |
1 |
Apache-SSL Client Certificate Forging |
низкий |
CVE-2004-0009 |
0 |
0 |
-1 |
0 |
0 |
Итого |
|
|
2 |
1 |
0 |
2 |
|
Узел 8 – 8.8.8.8 (host8.test)
Найденные открытые порты TCP 7, 9, 19, 23, 57 (TELNET)
Таблица 11. Уязвимости узла 8.8.8.8
Уязвимости |
Риск |
CVE |
XSpider |
IS |
Retina |
Nessus |
Реально |
|
|
|
|
|
|
|
|
Незащищенный протокол |
средний |
CAN-1999-0619 |
1 |
-1 |
1 |
1 |
1 |
echo service |
низкий |
CVE-1999-0103 |
-1 |
1 |
1 |
1 |
1 |
echo service |
низкий |
CAN-1999-0635 |
-1 |
1 |
-1 |
1 |
1 |
Итого |
|
|
1 |
2 |
2 |
3 |
|
Copyright© 2005, Учебный центр "Информзащита" |
Стр. 20 из 34 |
