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

Тестирование на проникновение при помощи Rapid7 Metasploit

Тестирование на проникновение при помощи Rapid7 Metasploit

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

 

 

 

  1. Введение
  2. Как работать с Rapid7 Metasploit
  3. Сравнение редакций Rapid7 Metasploit
  4. Выводы

 

Введение

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

В Российской Федерации значимым фактором, определяющим необходимость проводить тестирование на проникновение, являются требования регуляторов. Последние рассматривают проверку эффективности системы защиты как крайне важную меру, и соответствующие положения включены в нормативно-методические документы. В первую очередь в этой связи уместно упомянуть нормативные документы, под действие которых подпадает значительное число информационных систем, — приказы ФСТЭК России № 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
  • Pro

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

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

 

Таблица 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.
Полезные ссылки: 
Anti-Malware Яндекс ДзенПодписывайтесь на канал "Anti-Malware" в Telegram, чтобы первыми узнавать о новостях и наших эксклюзивных материалах по информационной безопасности.

RSS: Новые статьи на Anti-Malware.ru