Андрей Абрамов, эксперт по ИБ компании Positive Technologies

Одной из отличительных особенностей сканера XSpider является наличие модуля эвристического анализа Web-приложений. Конечно, существуют специализированные сканеры Web-приложений, например, Nikto, но они не обладают возможностями по определению недостатков в других службах. С другой стороны, сканеры общего назначения, такие как Nessus, обладают крайне ограниченными возможностями по поиску уязвимостей «на 80м порту». XSpider совмещает в себе возможности обоих типов сканеров.

Обзор возможностей

В части анализа Web-приложений XSpider поддерживает следующие возможности:

  • автоматическое определение Web-приложений на произвольных портах;
  • работа с SSL/TLS;
  • автоматический индексатор сайта с поддержкой функции поиска скрытых директорий и резервных копий файлов (Forced Browsing);
  • поддержка аутентификации типа Basic и нестандартных схем аутентификации;
  • автоматическое отслеживание сессий;
  • поиск уязвимых и вредоносных сценариев (например php-shell) по содержимому страницы;
  • эвристическое определение основных типов уязвимостей в Web-приложениях;
  • определение уязвимостей в полях заголовка HTTP-запроса.

Настройка профиля

Залогом качественного сканирования является правильно настроенный профиль. Профиль определяет логику работы сканера, а также используемые методы поиска уязвимостей.

Настройка индексатора сайта

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

Также в этом разделе расположена опция «включить анализатор директорий», которая задействует механизмы определения возможностей просмотра содержимого и записи в директории Web-сервера.

Раздел «Анализатор контента» (Профиль – Общие Настройки – Сканер уязвимостей – Определение уязвимостей – HTTP – Анализатор контента) содержит основные настройки индексатора.

Параметр «стартовая страница для анализатора» позволяет указать, с какого из разделов Web-сервера необходимо начать индексацию. Если задействована опция «не выходить за пределы стартовой директории», то сканер будет анализировать только сценарии, находящиеся по указанному пути и ниже. Использование этих настроек полезно, когда необходимо проанализировать конкретный раздел Web-сервера или отдельный сценарий. Кроме того, с их помощью можно разделить проверку больших Web-серверов на несколько задач, что облегчает последующий анализ результатов. Параметр «использовать запрос для стартовой страницы из файла» относится к механизмам аутентификации и будет рассмотрен далее.

Опции «использовать словарь при сборе контента» и «искать старые файлы» включают механизм поиска скрытых файлов и папок. Поиск проводится по обширному встроенному словарю, содержащему распространенные имена файлов и расширения. Данный механизм, несмотря на свою простоту, может быть весьма эффективным средством. Экспертам Positive Technologies приходилось сталкиваться с ситуациями, когда простой подбор по именам позволял получать доступ к базам данных сервера (например, /database/database.mdb) или к резервным копям исходных текстов сайтов.

Кроме настроек, вынесенных в графический интерфейс, существует возможность настройки индексатора путем редактирования конфигурационных файлов. Эти файлы расположены в папке «ProfilesHttp» рабочей директории сканера (например, «C:Program FilesPositive TechnologiesXSpider 7.5»). Файл AdditionalUrls.txt содержит пути к папкам и сценариям, которые должны быть добавлены к спискам проверяемых. Данная опция полезна для проверки Web-сайтов, использующих сложные для автоматического анализа технологии на стороне клиента (например, Java, Flash и т.д.). Для сбора списка сценариев в этом случае можно использовать различные HTTP-снифферы или Proxy-серверы, например, WebScarab (https://www.owasp.org/index.php/Category:OWASP_WebScarab_Project). Также к индексатору относится файл RequestIgnore.txt. В него заносятся пути и сценарии, которые не должны обрабатываться индексатором, и, соответственно, поиск уязвимостей в них осуществляться не будет.

Эти настройки могут быть использованы с различными целями. Например, если сайт реализует собственный механизм аутентификации, сюда могут быть занесены сценарии выхода из системы, чтобы сканер не прерывал собственную сессию. Также сюда могут быть внесены сценарии, автоматическое обследование которых может вызвать нежелательные последствия. Например – привести к передаче большого количества сообщений электронной почты или SMS. Однако, по мнению Positive Technologies, использование таких сценариев без дополнительных тестов Тьюринга является уязвимостью класса «Недостаточное противодействие автоматизации» (Inefficient Anti-Automation).

Механизмы аутентификации

Настройки аутентификации расположены в разделе «Профиль – Общие Настройки – Сканер уязвимостей – Определение уязвимостей – HTTP – Авторизация». Здесь можно указать имя пользователя и пароль, используемый для аутентификации типа Basic.

Включение опции «использовать расширенные словари логинов и паролей» задействует механизм подбора паролей (см. статью «Грубая сила – силища страшная!», ). В текущей версии XSpider поддерживается подбор паролей только для аутентификации типа Basic. В случае, если сервер использует собственные механизмы аутентификации, можно использовать один из двух вариантов.

Первый из них – использование собственного стартового запроса (Профиль – Общие Настройки – Сканер уязвимостей – Определение уязвимостей – HTTP – Анализатор контента – использовать запрос для стартовой страницы из файла). В этом случае в файле («ProfilesHttpRequest.txt») указывается HTTP-запрос, используемый сканером при первом обращении к сайту. Получить содержимое запроса можно с помощью любого сетевого анализатора или генератора HTTP-запросов.

В этом случае на совести пользователя лежит корректность сформированного HTTP-запроса, поскольку сканер будет использовать его «как есть», без каких либо модификаций.

Второй метод удобно использовать, когда управление авторизаций распределено между несколькими сайтами, как сделано в различных системах типа «Passport». Например, сайты Yandex используют централизованную систему Яндекс-Паспорт, устанавливающую значение Cookie для всего домена .yandex.ru:

Set-Cookie: yafolder=10537279%3A1290000000001899275; domain=.yandex.ru; path=/;

В этом случае в файл ProfilesHttpRequestAdd.txt добавляются HTTP-заголовки, которые будут пересылаться в каждом HTTP-запросе. Примером таких заголовков могут быть параметры Cookie, устанавливаемые сервером после входа в систему.

Поиск уязвимостей

В разделе «Профиль – Общие Настройки – Сканер уязвимостей – Определение уязвимостей – HTTP – Анализатор скриптов» можно указать какие из HTTP-методов будут использоваться в ходе эвристических проверок.

Опция «сложная проверка прикладных скриптов» используется для работы с серверами, использующими нестандартную схему именования запросов. Например, передающих параметры запроса не после символа «?».

Раздел «Типы уязвимостей» позволяет указать, какие из типов уязвимостей Web-серверов будут обнаружены.

Настройки раздела «Методы поиска» позволяют задействовать при поиске уязвимостей редко используемые поля, такие как заголовок Referer. Включение этих поверок увеличивает общее время проверок и нагрузку на сеть.

Установка сканера безопасности XSpider

Сканер безопасности XSpider 7.8 (далее по тексту – XSpider 7.8) представляет собой программное средство, предназначенное для обеспечения автоматизированного контроля и анализа сетевой безопасности, выявления активных компонентов сетевого взаимодействия и анализа их уязвимостей.
Установка системы

Дистрибутив XSpider может быть получен на CD-диске в рамках поставки или загружен с сервера обновлений. В последнем случае предоставляется гиперссылка с ограниченным сроком действия, например:

Дистрибутив системы XSpider представляет собой один файл — инсталлятор, имя которого формируется следующим образом:

Этот файл содержит мастер установки, компоненты системы и одну лицензию.

Для установки XSpider 7.8 выполните следующие действия:

  • Запустите инсталлятор. Откроется мастер установки XSp/>
  • Придумайте и введите пароль администратора XSpider
  • На следующем шаге, мастер установки проверит системные требования, если все статусы «ОК», нажмите «далее». В противном случае вернитесь назад и справьте проблему.
  • Ещё раз проверьте опции установки и нажмите кнопку «Установить», начнется процесс установки XSpider.
  • Автоматическая активация лицензии. Сканер XSpider автоматически пытается пройти активацию на глобальном сервере обновлений update.maxpatrol.com при первом подключении. При этом используются стандартные настройки (прямое подключение, порт 2002/TCP). В случае если подключение к сети Интернет ограничено (запрещено использование порта 2002/TCP или используется proxy-сервер), следует отказаться от автоматической активации и изменить настройки подключения к серверу обновлений на вкладке Настройки — Основные.
  • Для активации лицензии в изолированной сети: необходимо сгенерировать запрос на активацию, разместить его на сервере https://service.maxpatrol.com и, получив ответ, активировать сканер. Активация сканера XSpider в изолированной сети проводится через специальный веб-интерфейс на сайте https://service.maxpatrol.com (активируемая лицензия должна иметь возможность работать в режиме Offline). Также пройти процедуру активации сканера XSpider в изолированной сети можно через веб-интерфейс, для этого: запустите XSpider и в графическом интерфейсе убедитесь, что установлена опция «Обновление лицензий в Offline — режиме». Нажмите кнопку «Активировать лицензию» для активации лицензии. Если требуется обновление лицензии нажмите на кнопку «Сформировать запрос на обновление лицензии». Сохраните на съемный носитель файлы *.of r с запросом на активацию или обновление лицензии. Загрузите файл запроса (*.ofr) через интерфейс offline-активации лицензий https://service.maxpatrol.com/ (необходимо наличие компьютера, подключенного к сети Интернет, и учетной записи для авторизации на данном ресурсе*). После обработки появится соответствующее сообщение и ссылка для скачивания файла-ответа (*.ofl). Скачайте файл *.ofl по указанной ссылке; имя ofl-файла соответствует имени ofr-файла.
  • Если возможность подключения к сети Интернет отсутствует, необходимо передать любым возможным способом файл запроса (*.ofr) разработчику. В ответ Вы получите файл *.ofl.

    Чтобы загрузить *.ofl, нажмите кнопку (импортировать лицензию в режиме offline) на вкладке «Сервер» панель «Лицензии» во вкладке «Настройки».

    Успешность активации лицензии можно проверить на закладке Настройки – Основные, раздел Лицензия.

    источник

    Логика работы

    Если в ходе сканирования портов был идентифицирован Web-сервер, проводится поиск уязвимостей, соответствующих типу сервера (Internet Information Server, Apache и т.д.), а также установленных расширений (FrontPage, OpenSSL и т.п.).

    Следующим этапом является авторизация и проверка хорошо известных уязвимостей Web-приложений. После этого включается механизм поиска скрытых директорий и индексации содержимого. В ходе сбора содержимого XSpider использует не только содержимое Web-страниц. Различные служебные и информационные файлы, содержащиеся на сервере (например, robots или readme.txt), так же анализируются на предмет получения информации о структуре данных сервера. В XSpider входит базовый анализатор JavaScript, позволяющий работать с AJAX-приложениями.

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

    В описании уязвимости приводится содержимое HTTP-запроса и ответа, по которым был сделан вывод о наличии проблемы.

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

    • отличается бескомпромиссным качеством работы, без которого польза от применения сканера безопасности становится сомнительной, независимо от наличия других достоинств
    • характеризуется разумной ценой и стоимостью владения, поскольку информационная безопасность призвана предотвращать потери, а не увеличивать их
    • одинаково удобен в использовании для компании любого масштаба (от единиц до десятков тысяч обслуживаемых узлов).

    С одной стороны, специалисты определяли требования к продукту, главная задача которого — обеспечить максимальную эффективность мониторинга сетевой безопасности. Эффективность этого процесса зависит не только (и даже не столько) от функциональных возможностей, сколько от качества работы сканирующего ядра, которое должно быть на самом высоком уровне.

    С другой стороны, эксперты проектировали интеллектуальные алгоритмы и механизмы поиска уязвимостей, максимально приближенные к тем, которые используются в реальной жизни для попыток нарушения безопасности сетей. В противном случае вы никогда не можете быть уверены, что располагаете тем же объемом информации об уязвимостях защищаемой сети, который доступен потенцильному злоумышленнику.

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

    Универсальность

    Хотя сам XSpider работает под управлением Microsoft Windows, он проверяет все возможные уязвимости независимо от программной и аппаратной платформы узлов: начиная от рабочих станций под Windows и заканчивая сетевыми устройствами Cisco (не исключая, конечно, *nix, Solaris, Novell, AS400 и т.д.)

    Что немаловажно, XSpider работает с уязвимостями на разном уровне — от системного до прикладного. В частности, XSpider включает мощный и глубокий анализатор защищенности WEB-серверов и WEB-приложений (например, Интернет-магазинов). Некоторые производители разрабатывают для этого отдельные продукты, XSpider является универсальной системой, причем это ни в коей мере не идет в ущерб качеству каждой из отдельных возможностей.

    Особенности сканирующего ядра

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

    Полная идентификация сервисов на случайных портах

    Дает возможность проверки на уязвимость серверов со сложной нестандартной конфигурацией, когда сервисы имеют произвольно выбранные порты

    Эвристический метод определения типов и имен серверов (HTTP, FTP, SMTP, POP3, DNS, SSH) вне зависимости от их ответа на стандартные запросы

    Служит для определения настоящего имени сервера и корректной работы проверок в тех случаях, если конфигурация WWW-сервера скрывает его настоящее имя или заменяет его на другое

    Обработка RPC-сервисов (Windows и *nix) с их полной идентификацией

    Обеспечивает возможности определения RPC-сервисов и поиска уязвимостей в них, а также определения детальной конфигурации компьютера в целом

    Проверка слабости парольной защиты

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

    Глубокий анализ контента WEB-сайтов

    Анализ всех скриптов HTTP-серверов (в первую очередь, пользовательских) и поиск в них разнообразных уязвимостей: SQL инъекций, инъекций кода, запуска произвольных программ, получения файлов, межсайтовый скриптинг (XSS), HTTP Response Splitting.

    Анализатор структуры HTTP-серверов

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

    Проведение проверок на нестандартные DoS-атаки

    Существует возможность включения проверок «на отказ в обслуживании», основанных на опыте предыдущих атак и хакерских методах

    Специальные механизмы, уменьшающие вероятность ложных срабатываний

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

    Ежедневное добавление новых уязвимостей и проверок

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

    Функциональные особенности

    Большинство функциональных возможностей XSpider являются типичными для продуктов подобного класса. При проектировании преследовался принцип: избыточные функции не должны загромождать продукт, но все важные возможности должны быть реализованы максимально эффективно и удобно.

    Наглядный и удобный многооконный графический интерфейс

    Использование концепций «задач» и «профилей» для эффективного управления процессом мониторинга безопасности

    Гибкий планировщик заданий для автоматизации работы

    Одновременное сканирование большого числа компьютеров (ограничивается, как правило, скоростью сетевого канала)

    Ведение полной истории проверок

    Генерация отчетов с различными уровнями их детализации

    Встроенная документация, включающая контекстную справку и учебник

    Работает под управлением Windows XP/Server 2003/Vista/2008/2008 R2/7

    Низкие аппаратные требования