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

Среди хакеров существует разделение на две категории:

Белые хакеры (White hat) - работают для обеспечения безопасности, противодействуют незаконным вторжениям.

Черные хакеры (Black hat) - переступают закон, похищают персональные данные, опустошают банковские счета.

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

Что входит в пентестинг (тест безопасности)?

В тестирование безопасности компании может входить:
  • Внешний анализ сети и периметра
  • Пентест (тест на проникновение)
  • Внутреннее тестирование сети
  • Поиск уязвимостей и эксплуатация
  • Социальная инженирия
  • Тестирование web-сайтов компании
  • Тестирование мобильных приложений компании
  • Отчет о тестировании и рекомендации

Точный список тестов определяется на этапе переговоров, после изучения потребностей клиента.

Стоимость тестирования на проникновение

Внешнее тестирование корпоративной сети

Стоимость по запросу

Тестирование (пентест) с проникновением

Стоимость по запросу

Тестирование web и мобильных приложений

Стоимость по запросу

Социальная инженирия

Стоимость по запросу

Тест безопасности "под ключ"

Стоимость по запросу

Расследование киберпреступлений

Стоимость по запросу


ВАЖНО

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

Защитите свою компанию от кибер угроз!

Так что же такое пентест?

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


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

Этиология системной уязвимости

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

  • погрешность проектирования,

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

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

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

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

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

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

Тестирование отличается от оценки степени уязвимости

Несмотря на родство цели их использования. А именно, поиск и организация максимально безопасного программного продукта. Работают они по-разному.


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


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


Так определение степени уязвимости представляет собой установленный рабочий процесс. А тестирование проникновением действует «по обстановке» с единой целью максимально сильно воздействовать на системы для выявления прорех в ее защите.

Для чего это нужно

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

Подобный мониторинг позволяет:

  • найти слабые/уязвимые места в системе до того, как они будут подвержены внешним негативным воздействиям и дадут прореху для утечки данных. Это прекрасная альтернатива частых обновлений системы. Потому как последние влияют на сочетаемость и скорость работы ранее отлаженной без их учета системы. Обновления лучше контролировать, чем проводить бесконтрольно;

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

Процесс мониторинга

Тестирование на проникновение сегодня может проводиться с использованием множества методик, но основными и наиболее предпочтительными из них выступают:

Тестирование в ручную проводится по нижеследующему алгоритму

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

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

  • анализ выявленных результатов. Данный этап позволяет выявлять самые уязвимые места, которые будут использоваться для проведения дальнейшего агрессивного проникновения в систему,

  • использование полученных результатов. На основе выявленных мест «легкого проникновения» систем защиты производится подготовленная агрессия на ПО причем как в виде внешних, так и внутренних атак. Внешнее воздействия – это угроза системы из вне, где происходит сэмулирование прямых внешних угроз, воздействующих на систему, и специализированных попыток несанкционированного доступа к данным защищенной от этого системы. Внутренние атаки представляют собой второй этап воздействия, начинающийся после успешного проникновения в систему из вне. Спектр целей их дальнейшего воздействия широк и разнообразен. Главная из них компрометация той системы, в которую они проникли,

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

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


    К списку самых популярных инструментов относят: Nessus, Matesploit, Nmap, OpenSSL, Wireshark, w3af . Много интересного и функционального предлагают системные сборники от Linux.


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

    • практичность запуска, пользования и дальнейшего обслуживания,

    • простота сканирования,

    • уровень автоматизации при обнаружении уязвимых мест,

    • степень доступности тестирования ранее обнаруженных слабых для внешних атак областей,

    • степень возможности в создании детализированных и простых отчетных документов по проведенных работах и полученных результатах.

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

    Разновидности испытаний на предмет проникновения

    Разделение производится в зависимости от применяемых инструментов и объектов мониторинга:


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

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

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

    • клиентская часть, использует в работе специальных приложений, установленных на сайте или в приложении клиента,

    • удаленный доступ проводится путем vpn тестирования, либо подобного объекта, позволяющего обеспечить должный доступ к данной системе,

    • беспроводное подключение, имеет целью тестировать беспроводные приложения, сервисы и их инструменты.

    Классификация методик мониторинга проводится и с учетом типа подхода к его проведению. Что позволяет выделять:

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

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

    • серый или ограниченный доступ к информации о системе, достаточный для создания имитации внешней атаки.

    Границы тестирования на проникновение

    Ограничений диапазона подобного воздействия много, но к основным стоит отнести:

    • короткий временной период при высокой изначальной стоимости данной процедуры,

    • ограничение на число испытаний в единицу времени,

    • возможность появление отказа на проникновение со стороны системы,

    • высокая степень уязвимости полученных данных.

    Заключение

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


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

Планирование и подготовка

Планирование и подготовка начинается с определения целей и задач тестирования проникновения.

Клиент и тестер совместно определяют цели, чтобы обе стороны имели одинаковые цели и понимание. Общими задачами тестирования проникновения являются:

  • Определить уязвимость и повысить безопасность технических систем.
  • Обеспечить безопасность ИТ внешней сторонней стороной.
  • Повысить безопасность организационной / кадровой инфраструктуры.

Исследование

Разведка включает в себя анализ предварительной информации. Много раз, тестер не имеет много информации, кроме предварительной информации, то есть IP-адрес или блок IP-адресов. Тестер начинается с анализа доступной информации и, при необходимости, запросов от пользователя на получение дополнительной информации, такой как описания системы, планы сети и т. Д. Этот шаг - это тест пассивного проникновения, своего рода. Единственная цель - получить полную и подробную информацию о системах.

Открытие

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

  • Обнаружение сети - например, открытие дополнительных систем, серверов и других устройств.
  • Host Discovery - определяет открытые порты на этих устройствах.
  • Service Interrogation - опроса портов, чтобы обнаружить фактические сервисы, которые работают на них.

Анализ информации и рисков

На этом этапе тестер анализирует и оценивает информацию, собранную перед этапами тестирования для динамического проникновения в систему. Из-за большого числа систем и размера инфраструктуры это занимает много времени. При анализе тестер рассматривает следующие элементы:

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

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

Активные попытки вторжения

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

Итоговый анализ

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

Подготовка отчета

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

Однако, документируя окончательный отчет, необходимо учитывать следующие моменты:

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

Тестирование на проникновение - метод оценки безопасности ИТ-инфраструктуры компании через санкционированное моделирование атак злоумышленников.

Узнать стоимость тестирования

×

Заполните форму обратной связи, вам будет выслан опросный лист для определения стоимости услуги

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

Работы по тестированию на проникновение направлены на:

Получение независимой и комплексной оценки текущего уровня защищенности.

Получение независимой оценки осведомленности сотрудников в вопросах информационной безопасности.

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

Задачи, решаемые при проведении анализа защищенности:

  • Выявление уязвимостей ИБ и способов их эксплуатации.
  • Проверка возможности проникновения из внешних сетей в локальную вычислительную сеть.
  • Разработка рекомендаций по повышению уровня защищенности за счёт устранения выявленных уязвимостей.

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

Если в ходе работ по анализу защищенности принимается решение о необходимости немедленного устранения выявленных уязвимостей, то осуществляются следующие действия:

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

Этапы проведения тестирования

При выполнении работ по анализу защищенности используются универсальные сканеры уязвимостей, позволяющие обнаруживать уязвимости приложений, ОС и сетевой инфраструктуры, а также специализированное ПО. Работы по тестированию на проникновение проводятся в три этапа и включают следующие стадии:

Этап 1 – внешний анализ защищенности:

  • Составление плана проведения внешнего анализа защищенности и его согласование с рабочей группой

Этап 2 – внутренний анализ защищенности:

Работы проводятся на объекте заказчика.

  • Составление плана внутреннего анализа защищенности и его согласование с рабочей группой
  • Анализ результатов, составление отчета и его согласование с рабочей группой

Этап 3 – тестирование методами социальной инженерии:

Работы проводятся удаленно с использованием внешних сетей передачи данных (сеть Интернет).

  • Составление плана тестирования методами социальной инженерии и его согласование с рабочей группой
  • Анализ результатов, составление отчета и его согласование с рабочей группой

Проведение внешнего анализа защищенности

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

Анализ защищённости проводится по модели «черного ящика» (отсутствие санкционированного доступа, исходных данных о конфигурации и применяемых средствах защиты информации).

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

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

Проведение внутреннего анализа защищенности

Целью настоящего этапа работ является проверка возможностей злоумышленника по осуществлению несанкционированного доступа (далее – НСД) к ресурсам и конфиденциальной информации.

Анализ защищённости проводится по модели «серого ящика» (с предоставлением санкционированного доступа к системам).

В рамках внутреннего анализа защищенности выполняются следующие типы работ:

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

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

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

Проведение тестирования методами социальной инженерии

Целью настоящего этапа работ является оценка осведомленности сотрудников заказчика в вопросах ИБ.

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

  • Фишинг - осуществляется атака посредством электронной почты. Пример атаки: Сотруднику высылается ссылка от лица компании с «новым и очень полезным сервисом» для его работы. В письме есть описание сервиса и как он именно должен помочь в работе конкретному сотруднику. Так же, в письме есть просьба проверить функционал и всё ли корректно работает. Работы нацелены на то, чтобы сотрудник зашёл на этот сервис и попытался зарегистрироваться с использованием доменных учётных данных.
  • Троянский конь - осуществляется атака посредством электронной почты. Пример атаки: Сотруднику высылается исполняемый файл, при этом содержание письма может быть разным, в зависимости от должности сотрудника: договор для менеджера, список ошибок для программиста и др. Работы нацелены на то, чтобы сотрудник запустил программу на локальном компьютере и на фиксацию факта запуска такой программы.
  • Атака по телефону - осуществляется атака посредством телефонного звонка. Работы нацелены на то, чтобы войти в доверие к сотруднику, придумывая правдоподобную легенду, а затем узнать конфиденциальную информацию или учетные данные сотрудника. Пример легенды: «Новый сотрудник тех. поддержки делает первое задание по разворачиванию сервиса и надо проверить, что он корректно работает. Просит сотрудника о помощи: зайти самостоятельно или сказать свой логин и пароль».

Анализ результатов

Результатом работ является отчет, содержащий следующую информацию.

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

Объектами тестирования могут быть как отдельные информационные системы, например: CMS (система управления содержимым), CRM (система управления взаимоотношениями с клиентами), интернет клиент-банк, так и вся инфраструктура в целом: периметр сети, беспроводные сети, внутренняя или корпоративная сеть, а так же внешний периметр.

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

Тестирования на проникновение принято делить на BlackBox, WhiteBox и GreyBox:

BlackBox — «черный ящик». Специалист располагает только общедоступной информацией о цели исследования, её сети и параметрах. Данный вариант максимально приближен к реальной ситуации. В качестве исходных данных для тестирования исполнителю сообщается только имя компании или ее сайт, а всю остальную информацию, такую как используемые компанией IP-адреса, сайты, точки выхода офисов и филиалов компании в сеть Интернет, исполнителю придётся выяснять самому.

WhiteBox – полная противоположность BlackBox. В данном случае, специалисту предоставляется максимум необходимой для него информации, вплоть до административного доступа на любые сервера. Данный способ позволяет получить наиболее полное исследование уязвимости объекта. При WhiteBox исполнителю не придётся тратить время на сбор информации, составления карты сети, и другие действия перед началом тестирования, а так же сократит время самого тестирования, т.к. часть проверок просто не придется делать. Плюс данного метода в более полном и комплексном подходе к исследованию. Минус в том, что это менее приближено к ситуации реальной атаки злоумышленника.

GrayBox – это средний вариант между WhiteBox и BlackBox, когда исполнитель действует по варианту BlackBox и периодически запрашивает информацию о тестируемой системе, для того чтобы сократить время исследования или более эффективно приложить свои усилия. Такой вариант самый популярный, так как позволяет провести тестирование без траты лишнего времени на сбор информации, и больше времени уделить поиску уязвимостей, при этом данный вариант остается достаточно близким к реальной ситуации действия злоумышленника.

1. ОСОБЕННОСТИ ПРОНИКНОВЕНИЯ НА УДАЛЕННУЮ КОМПЬЮТЕРНУЮ СИСТЕМУ.

Любое объективное и полноценное тестирование на проникновение обладает рядом особенностей и должно выполняться с учетом рекомендаций и правил.

Правила и рамки информационного тестирования на проникновение представлены в методологиях OSSTMM и OWASP. Впоследствии полученные данные можно легко адаптировать для проведения оценки соответствия с какими-либо промышленными стандартами и «лучшими мировыми практиками», такими как, Cobit, стандартами серии ISO/IEC 2700x, рекомендациями CIS/SANS/NIST/etc и стандартом PCI DSS.

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

Что касается тестирования на проникновение в соответствии с требованиями стандарта по защите информации в индустрии платежных карт, – он не намного отличается от обычного тестирования, проводимого с использованием методик OSSTMM и OWASP. Более того, стандартом PCI DSS рекомендуется придерживаться правил OWASP при проведении как пентеста (AsV), так и аудита (QSA).

Основные отличия тестирования по PCI DSS от тестирования на проникновение в широком смысле этого слова заключаются в следующем:

  • Стандартом не регламентируется (а значит и не требуется) проведение атак с использованием социальной инженерии.
  • Все проводимые проверки должны максимально минимизировать угрозу «Отказа в обслуживании» (DoS). Следовательно, проводимое тестирование должно осуществляться методом «серого ящика» с обязательным предупреждением администраторов соответствующих систем.
  • Основная цель такого тестирования – это попытка осуществления
    несанкционированного доступа к данным платежных карт (PAN, Cardholder Name и т.п.).

Метод GrayBox позволяет снизить риск отказа в обслуживании при проведении подобных работ в отношении информационных ресурсов, функционирующих в режиме 24/7.

В общем случае тестирование на проникновение по требованиям PCI должно удовлетворять следующим критериям:

  • п.11.1(b) – Анализ защищенности беспроводных сетей
  • п.11.2 – Сканирование информационной сети на наличие уязвимостей (AsV)
  • п.11.3.1 – Проведение проверок на сетевом уровне (Network-layer
    penetration tests)
  • п.11.3.2 – Проведение проверок на уровне приложений (Application-layer penetration tests)

Определение границ проводимого исследования. В первую очередь необходимо выявить границы тестирования на проникновение, определиться и согласовать последовательность выполняемых действий. В лучшем случае со стороны подразделения ИБ может быть получена карта сети, на которой схематично показано, каким образом процессинговый центр взаимодействует с общей инфраструктурой. В худшем – придется общаться с системным администратором, который знает собственные недоработки и получение исчерпывающих данных об информационной системе будет затруднено его нежеланием делиться своими данными об ИС. Так или иначе, для проведения пентеста по PCI DSS, как минимум, требуется получить следующую информацию:

  • сегментация сети (пользовательская, технологическая, ДМЗ, процессинг и т.д.);
  • межсетевое экранирование на границах подсетей (ACL/МСЭ);
  • используемые Web-приложения и СУБД (как тестовые, так и продуктивные);
  • используемые беспроводные сети;
  • какие-либо детали обеспечения безопасности, которые необходимо учесть в ходе проведения обследования (например, блокировка учетных записей при N попытках неправильной аутентификации), особенности инфраструктуры и общие пожелания при проведении тестирования.

2. ЭТАПЫ ТЕСТИРОВАНИЯ НА ПРОНИКНОВЕНИЕ

Рассмотрим возможные этапы проведения тестирования на проникновение. В зависимости от располагаемой информации (BlackBox/ WhiteBox/ GreyBox), последовательность действий может быть различной: сбор данных, сетевое сканирование, взлом системы, вредоносное ПО, социальная инженерия.

2.1 Сбор данных.

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

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

Так же информацию могут предоставлять внутренние URL сайта, адреса e-mail, телефонные номера, факсы, DNS-сервер, диапазон IP-адресов, сведения о маршрутизации.

С развитием интернета широкое распространение получили WHOIS-сервисы. Whois (от английского «who is» - «кто такой») – сетевой протокол, базирующийся на протоколе TCP. Его основное предназначение – получение сведений о «регистранте» (владельце домена) и «регистраторе» (организации, которая домен зарегистрировала), имена DNS серверов, дату регистрации и дату истечения срока действия. Записи об IP адресах сгруппированы по диапазонам (например, 8.8.8.0 - 8.8.8.255) и содержат данные об организации, которой этот диапазон делегирован.

2.2 Сетевое сканирование.

Сетевое сканирование можно разделить на составляющие:

1. Сканирование диапазона IP-адресов для определения «живых» хостов

2. Сканирование портов

3. Обнаружение служб и их версий

4. Сканирование для определения ОС

5. Сканирование уязвимостей

1. Сканирование диапазона IP-адресов.

Фундаментальная задача при исследовании любой сети это сократить набор IP-диапазонов до списка активных хостов. Сканирование каждого порта каждого IP адреса медленно и необязательно. Интерес к исследованию определенных хостов во многом определяется целями сканирования. Задачи администраторов по обнаружению работающих хостов в сети могут быть удовлетворены обычным ICMP-пингом, людям же, которые тестируют способность сети противостоять атакам из вне, необходимо использовать разнообразные наборы запросов с целью обхода брандмауэра.

Задачу обнаружения хостов иногда называют пинг сканированием (ping scan), однако она намного превосходит использование обычных ICMP запросов ассоциирующихся с вездесущими ping утилитами. Сканировать сеть предпочтительно с помощью произвольных комбинаций мультипортовых TCP SYN/ACK, UDP и ICMP запросов. Целью всех этих запросов является получение ответов, указывающих, что IP адрес в настоящее время активен (используется хостом или сетевым устройством). В большинстве сетей лишь небольшой процент IP адресов активен в любой момент времени. Это особенно характерно для адресных пространств вида 10.0.0.0/8. Такие сети имеют 16 млн. IP адресов, но бывают случаи, когда они используются компаниями, в которых не более тысячи машин. Функция обнаружения хостов может найти эти машины в этом необъятном море IP адресов.

2. Сканирование портов.

Существует множество различных приемов сканирования портов и выбираются для конкретной задачи подходящий (или комбинацию из нескольких). Рассмотрим наиболее популярные приемы сканирования:

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

Различные типы UDP сканирования
В то время как большинство сервисов Интернета используют TCP протокол, UDP службы также широко распространены. Тремя наиболее популярными являются DNS, SNMP и DHCP (используют порты 53, 161/162 и 67/68). Т.к. UDP сканирование в общем случае медленнее и сложнее TCP, то многие специалисты по безопасности игнорируют эти порты. Это является ошибкой, т.к. существуют UDP службы, которые используются атакующими.

TCP NULL, FIN и Xmas сканирования
Эти три типа сканирования используют незаметную лазейку в TCP RFC, чтобы разделять порты на открытые и закрытые.\

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

3. Обнаружение служб и их версий.

При сканировании удаленной системы может быть выявлено, что порты25/tcp,80/tcp, и 53/udp открыты. Используя сведения можно узнать, что эти порты вероятно соответствуют почтовому серверу (SMTP), веб серверу (HTTP), и серверу доменных имен (DNS) соответственно. Эта информация обычно верна, т.к. подавляющее большинство служб, использующих 25 TCP порт, фактически, почтовые сервера. Тем не менее, не следует полностью полагаться на эту информацию. Люди могут и запускают службы с использованием нестандартных портов.

После обнаружения каких-либо TCP и/или UDP портов происходит процедура их идентификации с целью определения какие приложения (службы) их используют. Используя базу данных запросов для обращения к различным службам и соответствующие выражения для распознавания и анализа ответов можно определить протоколы службы (напр. FTP, SSH, Telnet, HTTP), имя приложения (e.g. ISC BIND, Apache httpd, Solaris telnetd), номер версии, имя хоста, тип устройства (напр. принтер, роутер), семейство ОС (напр. Windows, Linux) и иногда различные детали типа: возможно ли соединится с X сервером, версию протокола SSH, или имя пользователя.

4. Сканирование для определения ОС.

Возможно определить ОС на удаленной системе на основе анализа работы стека TCP/IP. Посылается серия TCP и UDP пакетов на удаленный хост и изучается практически каждый бит в ответах. После проведения множества тестов таких как TCP ISN выборки, поддержки опций TCP, IP ID выборки, и анализа продолжительности процедуры инициализации, сравнивается результаты сбазой данных, содержащей известные наборы типичных результатов для различных ОС и, при нахождении соответствий, можно сделать вывод об установленной ОС.

5. Сканирование уязвимостей.

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

2.3 Взлом системы.

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

Однако имеются подходы, которым может быть подвергнута практически любая операционная система:

  1. Кража пароля.
  2. Наблюдение за пользователем в момент его ввода пароля, дающего право на работу с операционной системой.
  3. Получение пароля из файла, в котором этот пароль был сохранен пользователем.
  4. Поиск пароля, который пользователи зачастую записывают на бумажном носителе.
  5. Кража внешнего носителя парольной информации (дискеты или электронного ключа, на которых хранится пароль пользователя, предназначенный для входа в операционную систему).
  6. Полный перебор всех возможных вариантов пароля.
  7. Подбор пароля по частоте встречаемости символов и биграмм, с помощью персональных словарей и наиболее часто применяемых паролей.
  8. Сканирование жестких дисков компьютера.
  9. Сборка «мусора».
  10. Превышение полномочий (используя ошибки в программном обеспечении или в администрировании операционной системы, исследователь получает полномочия, превышающие полномочия, предоставленные ему согласно действующей политике безопасности).
  11. Запуск программы от имени пользователя, имеющего необходимые полномочия, или в качестве системной программы (драйвера, сервиса, демона и т. д.).
  12. Подмена динамически загружаемой библиотеки, используемой системными программами, или изменение переменных среды, описывающих путь к таким библиотекам.
  13. Модификация кода или данных подсистемы защиты самой операционной системы.
  14. Отказ в обслуживании (целью этой атаки является частичный или полный вывод из строя операционной системы).
  15. Захват ресурсов (подконтрольная программа производит захват всех имеющихся в операционной системе ресурсов, а затем входит в бесконечный цикл).
  16. Бомбардировка запросами (подконтрольная программа постоянно направляет операционной системе запросы, реакция на которые требует привлечения значительных ресурсов компьютера).
  17. Использование ошибок в программном обеспечении или администрировании.

2.4 Вредоносное программное обеспечение.

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

Вредоносное ПО – программное обеспечение, которое разрабатывается для получения несанкционированного доступа к вычислительным ресурсам ЭВМ, а также данным, которые на ней хранятся. Такие программы предназначены для нанесения ущерба владельцу информации или ЭВМ, путем копирования, искажения, удаления или подмена информации.

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

  1. Удаление данных
  2. Блокирование данных
  3. Изменение данных
  4. Копирование данных
  5. Замедление работы компьютеров и компьютерных сетей.

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

  1. Бэкдоры. Троянская программа бэкдор предоставляет злоумышленникам возможность удаленного управления зараженными компьютерами. Такие программы позволяют автору выполнять на зараженном компьютере любые действия, включая отправку, получение, открытие и удаление файлов, отображение данных и перезагрузку компьютера. Троянцы-бэкдоры часто используются для объединения группы компьютеров-жертв в ботнет или зомби-сеть для использования в криминальных целях.
  2. Эксплойты. Эксплойты - это программы с данными или кодом, использующие уязвимость в работающих на компьютере приложениях.
  3. Руткиты . Руткиты - это программы, предназначенные для сокрытия в системе определенных объектов или действий. Часто основная их цель - предотвратить обнаружение вредоносных программ антивирусным ПО, чтобы увеличить время работы этих программ на зараженном компьютере.

2.5 Социальная инженерия.

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

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

Техники социальной инженерии:

  • Претестинг. Претекстинг - это набор действий, проведенный по определенному, заранее готовому сценарию (претексту).
  • Фишинг. Фишинг (англ. phishing, от fishing - рыбная ловля, выуживание) - это видинтернет-мошенничества, целью которого является получение доступа к конфиденциальным данным пользователей - логинам и паролям. Целью фишинга является незаконное получение конфиденциальной информации.
  • Quid pro quo . Квид про кво (отлат. Quid pro quo - «то за это») - в английском языке это выражение обычно используется в значении «услуга за услугу». Зачастую социальный инженер представляется сотрудником технической поддержки, который сообщает о возникновении технических проблем на рабочем месте сотрудника и предлагает помощь в их устранении.

Проведенное в 2003 году исследование в рамках программы Информационная безопасность показало, что 90% офисных работников готовы разгласить конфиденциальную информацию, например свои пароли, за какую-либо услугу или вознаграждение.

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

Организация псевдоатаки.

Для организации псевдоатаки на компьютерную систему используем программные средства Social Engineering Toolkit (SET) и Metasploit Framework (MFS). Эти утилиты по умолчанию включены в дистрибутив Backtrack 5, предназначенный для тестирования возможности системного и сетевого взлома. Так же используем две виртуальные машины с такими ОС как: Windows 7 и Backtrack 5.

Генерация бэкдора. SET будем использовать для создания бэкдора с обратным TCP, а MFS для создания handler’a (обработчик), чтобы обрабатывать пакеты от созданного бэкдора, который будет поддерживать канал связи между потенциальным злоумышленником и системой, на которой будет запущен бэкдор.

Все действия производятся в консольном режиме на ОС Backtrack 5. Создание полезной нагрузки достигается через утилиту SET, п. 4 Create a Payload and Listerer

Создание полезной нагрузки с обратным TCP (для установления обратной связи) производится путем выбора п. 2 Windows Reverse TCP Meterpreter и затем п. 16 Backdoored Executable . Данная операция завершает создание бэкдора. При его создании также указывается номер порта, через который будет происходить обратная связь. В папке / pentest / exploits / SET будет сформирован msf.exe, на основе выбранных нами опций.

Настройка эксплойта. Эксплоит предназначен для получения запросов TCP от созданного бэкдора. Его настройка производится через запуск MFS и выбор эксплоита handler (прослушиватель): use exploit/multi/handler .

Вследствие этого MFS переключается в контекст обработчика эксплоита. Дальнейшая задача состоит в конфигурировании полезной нагрузки для этого эксплоита. Поскольку бэкдор ориентирован (создан) с Revers_TCP Meterpretor, то обмен информацией происходит через TCP соединение: set / payload windows / meterpreter / revers _ tcp . Кроме того необходимым является указание в опциях Local Host (ip-адреса потенциального злоумышленника).

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

Для моделирования данного процесса запуск бэкдора производится на второй виртуальной машине. После этого в meterpretor будет доступна сессия на эту систему, то есть наш бэкдор предоставляет канал связи, и мы получаем управление над зараженной машиной.

Базовым инструментарием, используемым для проверки защищенности системы, являются средства для автоматического сбора данных о системе и тестирования на проникновение. Предлагаем рассмотреть принцип работы подобных средств на примере продукта Rapid7 Metasploit от компании Rapid7 - одного из ведущих производителей аналитических решений для информационной безопасности, который с высокими оценками входит в рейтинги влиятельных исследовательских и консалтинговых компаний, включая Gartner и Forrester.

Введение

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

В Российской Федерации значимым фактором, определяющим необходимость проводить тестирование на проникновение, являются требования регуляторов. Последние рассматривают проверку эффективности системы защиты как крайне важную меру, и соответствующие положения включены в нормативно-методические документы. В первую очередь в этой связи уместно упомянуть нормативные документы, под действие которых подпадает значительное число информационных систем, - приказы ФСТЭК России № 17 и 21.

В этих документах определена мера защиты в виде «испытания системы защиты информации путем осуществления попыток несанкционированного доступа (воздействия) к информационной системе в обход ее системы защиты информации» на этапе аттестации. Аттестация информационных систем, предполагающая проверку эффективности системы защиты, востребована также для информационных систем, обрабатывающих государственную тайну.

В международном масштабе целесообразно отметить стандарт безопасности данных индустрии платежных карт PCI DSS (Payment Card Industry Data Security Standard). Соответствие положениям стандарта PCI DSS является обязательным для всех организаций, вовлеченных в обработку платежных карт Visa и MasterCard: торгово-сервисных предприятий, процессинговых центров, эквайеров, эмитентов и поставщиков услуг, а также всех прочих организаций, которые хранят, обрабатывают или передают данные о держателях карт и чувствительные аутентификационные данные. Положениями стандарта предусмотрено проведение анализа уязвимостей и тестирования на проникновение как внутри, так и снаружи сети информационной системы. Внешний и внутренний тесты на проникновение должны проводиться не реже одного раза в год и после любых значительных модификаций или обновлений инфраструктуры/приложений.

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

Очевидно, что для всех перечисленных целей наиболее востребовано интегрированное решение для управления угрозами, охватывающее сетевую безопасность, безопасность веб-приложений, безопасность баз данных и стратегии тестирования проникновения, и содержащее функциональность, достаточную как для соответствия требованиям отечественных и международных нормативных документов, так и для использования в процессе обучения. К числу таких решений относится Rapid7 Metasploit производства компании Rapid7, которая была основана в 2000 году и является одним из лидирующих производителей продуктов для анализа и организации систем обеспечения информационной безопасности в ИТ-средах. Важным преимуществом программного обеспечения Rapid7 является возможность обзора состояния безопасности активов и пользователей в пределах любых сред, включая виртуальные и мобильные, а также публичные и частные облака.

Для оценки решения Rapid7 Metasploit можно воспользоваться решением того же производителя - демонстрационной уязвимой виртуальной машиной Metasploitable, оснащенной Ubuntu Linux. Виртуальная машина совместима с VMWare, VirtualBox и другими распространенными платформами виртуализации.

Важным подспорьем является то, что Rapid7 Metasploit совместим со сканером уязвимостей Rapid7 Nexpose, может инициировать его запуск, а также использовать результаты работы последнего.

Рассмотрим общий порядок работы с Rapid7 Metasploit.

Как работать с Rapid7 Metasploit

В общем виде работа с Rapid7 Metasploit состоит из следующих этапов:

  1. Создание проекта. Проект содержит рабочее пространство, которое используется для создания теста на проникновение, и конфигурацию планируемых к выполнению задач. Каждый тест на проникновение запускается из собственного проекта.
  2. Сбор информации. На этом этапе Rapid7 Metasploit собирает информацию о целевой сети: установленные операционные системы, открытые порты, запущенные хосты и процессы. На этом этапе также может использоваться сканер уязвимостей Rapid7 Nexpose. Во время проведения сканирования все полученные данные автоматически сохраняются в проект.
  3. Использование эксплойтов. Атака может выполняться вручную или с использованием базы эксплойтов. Здесь используются данные о сети, полученные на этапе 2.
  4. Действия над скомпрометированной системой. После получения доступа используется полезная нагрузка эксплойта, с помощью которой инициируются интерактивные сеансы для сбора дополнительной информации а также появляется возможность использовать постэксплуатационные модули для автоматического сбора сохраненных в операционной системе и приложениях паролей, скриншотов, снимков с веб-камер, записи нажатий клавиш, сбора конфигурационных файлов, запуска приложений и др.

Сравнение редакций Rapid7 Metasploit

Rapid7 Metasploit выпускается в нескольких редакциях, различающихся между собой объемом предоставляемых функций и типом лицензии на использование. На текущий момент доступны следующие редакции продукта:

  • Framework
  • Community
  • Express

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

  • Сбор данных о характеристиках компонентов и сетевых уязвимостях.
  • Тестирование на проникновение.
  • Выполнение задач фишинга.
  • Тестирование веб-приложений.
  • Формирование отчетов.
  • Управление.

Таблица 1. Сравнение редакций Rapid7 Metasploit

Характеристика Pro Express Community
Импорт данных сканирования
(Scan data import)
Сканирование с обнаружением
(Discovery scan)
Интеграция с системой управления уязвимостями Nexpose
(Nexpose scan integration)
Экспорт данных
(Data export)
Ручной запуск эксплойтов
(Manual exploitation)
Веб-интерфейс
(Web interface)
Управление сеансами
(Session management)
Управление учетными данными
(Credential management)
Проникновение через опорный пункт
(Proxy pivot)
Модули, исполняемые после компрометации
(Post-exploitation modules)
Очистка сеанса
(Session clean up)
Методом подбора
(Bruteforce)
Сбор свидетельств
(Evidence collection)
Протоколирование проверки
(Audit Report)
Отчетность о деятельности
(Activity Report)
Отчетность о скомпрометированных и уязвимых хостах
(Compromised and Vulnerable Hosts Report)
Отчетность об учетных данных
(Credentials Report)
Отчетность о работе сервисов
(Services Report)
Повторное использование учетных данных
(Credentials reuse)
Попытка обхода антивируса
(Anti-virus evasion)
Попытка обхода систем обнаружения и предотвращения вторжений
(IPS/IDS evasion)
Перезапуск сеанса
(Session rerun)
Технологический процесс компрометации
(Exploitation workflow)
Воспроизведение задач
(Task replay)
Маркировка данных
(Tagging data)
Отчетность о соответствии PCI DSS
(PCI Report)
Отчетность о соответствии FISMA
(FISMA Report)
"Мастер" для быстрого тестирования на проникновение
(Quick PenTest Wizard)
"Мастер" для проверки уязвимостей
(Vulnerability Validation Wizard)
Интеграция с системой сканирования качества кода Sonar
(Project Sonar integration)
"Мастер" для фишинга
(Phishing Wizard)
Социотехнический анализ
(Social engineering)
"Мастер" для тестирования веб-приложений
(Web App Testing Wizard)
Тестирование веб-приложений
(Web app testing)
Проникновение через опорный пункт с использованием VPN-туннелирования
(VPN pivoting)
Генератор полезных нагрузок
(Payload generator)
Макросы, исполняемые после компрометации
(Post-exploitation macros)
Постоянные сеансы
(Persistent sessions)
Мета-модули
(MetaModules)
Работа в команде
(Team collaboration)
Цепочки задач
(Task chains)
Резервирование и восстановление
(Back up and restore)
Настраиваемая отчетность
(Custom reporting)
Социотехническая отчетность
(Social Engineering Report)
Отчетность по оценке веб-приложений
(Web Application Assessment Report)

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

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

Выводы

Rapid7 Metasploit имеет широкий спектр функциональных возможностей. Решение может работать как через веб-интерфейс, так и интерфейс командной строки - вариант определяется по желанию пользователя. При этом полный набор функций доступен только при работе с помощью веб-интерфейса. Rapid7 Metasploit поддерживает операционные системы семейства Windows и Linux.

Еще несколько отличительных характеристик Rapid7 Metasploit:

  • Возможность выбора редакции, удовлетворяющей потребностям в частном случае.
  • Возможность использовать результаты анализа уязвимостей от сторонних решений.
  • Возможность тренировки на специально разработанной уязвимой системе.
  • Интеграция продукта (в редакции Framework) с Linux-дистрибутивами:
    • Kali linux
    • Backtrack linux (поддержка прекращена)
    • Pentoo
    • BlackArch
    • Backbox

Rapid7 Metasploit имеет несколько ограничений уровня эксплуатации, которые целесообразно учитывать:

  • Установка и последующее корректное функционирование продукта возможны только после отключения брандмауэра и антивируса.
  • Рекомендуется установка Rapid7 Nexpose и Metasploit на отдельных средствах вычислительной техники. При этом возможна установка Rapid7 Metasploit в виртуальную машину.
  • Отсутствие полноценного перевода эксплуатационной документации на русский язык. С руководством по эксплуатации на английском языке можно ознакомиться на сайте производителя в разделе Metasploit.