Metasploit Penetration Testing Cookbook - часть 1

demo image

Это и есть один из ТХ(Tupi4ok Xakepa).
Предлагаю вам перевод введения и первой части новой книги "Metasploit Penetration Testing Cookbook".

Введение


На сегодняшний день тестирование на проникновение (penetration testing) является одним из основных сценариев анализа защищенности. Пен-тестирование включает в себя полный анализ системы путем осуществления реальных тестов безопасности. Это помогает выявлять потенциально слабые места в основных компонентах системы: аппаратном или программном обеспечении.



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

  1. метод черного ящика — осуществляется при отсутствии предварительной информации о цели. Для осуществления атаки, пен-тестеру приходится по крупицам собирать информацию о целевой системе
  2. метод белого ящика - осуществляется, когда пен-тестер имеет достаточно полную информацию о цели

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

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

Этих шагов может показаться мало, но тестирование на проникновение систем высокого уровня (high-end system) с большим количеством служб может занять дни если не месяцы. Причина, по которой тестирование на проникновение выполняется так долго состоит в том, что применяется техника «проб и ошибок» (хотя к скрипт-кидингу это не относится в большей мере… там взял и применил). Уязвимости во многом зависят от настройки системы, поэтому мы не беремся утверждать, что рабочий эксплоит будет работать.

Глава 1. Metasploit — короткие советы


  • Настройка Metasploit в Ubuntu/Debian
  • Metasploit + BackTrack
  • Создание пен-тест лаборатории
  • Настройка Metasploit в BackTrack + SSH
  • Создание базы данных в Metasploit
  • Использование базы данных для хранения результатов тестирования
  • Анализ результатов из БД

В настоящее время Metasploit наиболее «встречающееся» (buzzing) слово в области информационной безопасности. Причина, по которой Metasploit настолько популярен - широкий спектр задач, которые он может выполнять. Metasploit доступен для всех популярных операционных систем. В этой (статье) книге мы будем в основном работать в BackTrack 5, который поставляется с уже предустановленными программами.

Для начала кратко ознакомимся с терминами:
  • Metasploit Framework — бесплатный (открытый исходный код) пен-тест framework созданный H. D. Moore в 2003 году, который в последствии был куплен Rapid7. Написан на языке Ruby. Metasploit обладает крупнейшими базами данных эксплоитов и принимает около миллиона загрузок каждый год. Он также является одним из самых сложных проектов на сегодняшний день, написанных на Ruby.
  • Уязвимость (Vulnerability) — слабое место, которое позволяет злоумышленнику/пен-тестеру взламывать/скомпрометировать целевую систему. Уязвимость может существовать в операционных системах, программах, службах и т.д.
  • Эксплоит (Exploit) — код с помощью которого злоумышленник/пен-тестер может взломать систему, программу и т.п. Каждая уязвимость имеет свой собственный соответствующий эксплойт. Metasploit v4 имеет более чем 700 эксплоитов.
  • Payload — код, который выполняется после эксплоита. В основном используется для настройки связи между жертвой и атакующим. Metasploit v4 имеет более 250 payloads.
  • Модуль (Module) — это небольшие строительные блоки. Каждый модуль выполняет определенную задачу и система создается/строится путем объединения этих блоков в единое целое. Самым большим преимуществом такой архитектуры является то, что она легка для интеграции новых эксплоитов.

Рассмотрим архитектуру Metasploit'a поближе:



Metasploit использует различные библиотеки, которые играют ключевую роль в функционировании системы. Эти библиотеки представляют собой набор заранее определенных задач, операций и функций, которые могут быть использованы различными модулями системы. Самая фундаментальная часть фреймфорка является Ruby Extension (Rex). Некоторые компоненты Rex включают подсистему сокетов (wrapper socket subsystem), реализацию клиентских и серверных протоколов, регистрацию подсистемы (logging subsystem), exploitation utility classes, а также ряд других полезных классов.

Далее есть MSF Core библиотека, которая расширяет Rex. Core несет ответственность за выполнение всех необходимых интерфейсов (required interfaces), которые позволяют взаимодействовать с эксплоитами, модулями, сессиями и плагинами.

В Metasploit есть четыре так называемых пользовательских интерфейса: msfconsole, msfcli, msfgui и msfweb. Настоятельно рекомендуется изучить все 4 интерфейса. Однако в книге (статье) с основном будет использоваться msfconsole. Потому что msfconsole хорошо поддерживается во фреймворке и использует все функциональные возможности.

С теорией пока что покончено, переходим к практике.

Продолжение здесь (паблик Хабра)





Комментарии

Оставьте комментарий

Ads here

Мини Профиль

Среда | 09.10.2024 | 16:54:34
[ Управление профилем ]

Опрос

Готовы ли вы помочь проекту?

Статистика



Задавай вопросы с умом.
Онлайн всего: 1
Гостей: 1
Пользователей: 0

Please enable / Пожалуйста, включите JavaScript!
Veuillez activer / Por favor activa el Javascript!