Хабрахабр

Книга «Kali Linux. Тестирование на проникновение и безопасность»

image Привет, Хаброжители! 4-е издание Kali Linux 2018: Assuring Security by Penetration Testing предназначено для этических хакеров, пентестеров и специалистов по IT-безопасности. От читателя требуются базовые знания операционных систем Windows и Linux. Знания из области информационной безопасности будут плюсом и помогут вам лучше понять изложенный в книге материал. Чему вы научитесь • Осуществлять начальные этапы тестирования на проникновение, понимать область его применения • Проводить разведку и учет ресурсов в целевых сетях • Получать и взламывать пароли • Использовать Kali Linux NetHunter для тестирования на проникновение беспроводных сетей • Составлять грамотные отчеты о тестировании на проникновение • Ориентироваться в структуре стандарта PCI-DSS и инструментах, используемых для сканирования и тестирования на проникновение

Структура издания

Глава 1 «Установка и настройка Kali Linux». В этой главе вы познакомитесь с Kali Linux 2018. Особое внимание уделяется различным методам использования системы. Глава написана так, что даже неопытный пользователь сможет запустить Kali Linux с Live DVD; установить и настроить систему на жестком диске, SD-карте, подключенном к USB-порту флеш-накопителе; установить Kali Linux на виртуальной машине. Кроме того, используя AWS, вы можете установить Kali Linux в облаке.

В этой главе рассказывается, как создать безопасную виртуальную среду, в которой можно на законных основаниях выполнять разработанные для каждой главы практические примеры. Глава 2 «Создание испытательной лаборатории». В главе также приведены подробные инструкции по настройке таких виртуальных машин, как Metasploitable 2 и Metasploitable 3, которые будут использоваться как целевые машины в экспериментах на проникновение (пентестах).

Здесь представлены различные методологии тестирования с целью планирования и определения масштабов пентестов. Глава 3 «Методология тестирования на проникновение». Вы также найдете описание практических шагов и технологий, предназначенных для испытаний на проникновение.

На первом этапе тестирования на проникновение применяется несколько распространенных инструментов, используемых для разведки, включая взлом базы данных Google. Глава 4 «Получение отпечатка и сбор информации». В этом издании вы найдете новую информацию о таких инструментах для автоматического сбора информации, как Devploit, RedHawk и Shodan.

В этой главе рассказывается, как с помощью мощнейшего инструмента Nmap обнаружить целевые объекты, узлы и сервисы. Глава 5 «Методы сканирования и уклонения». Кроме того, в этой главе рассматривается такой инструмент, как Nipe, предоставляющий пользователям конфиденциальность и анонимность. С помощью Netdiscover и Striker выполняется автоматизированное сканирование и сбор информации.

Здесь на практических примерах показано, как найти уязвимости в целевой машине. Глава 6 «Сканирование уязвимостей». Вы найдете новую информацию о Linux-инструменте Lynis, предназначенном для сканирования и проверки уязвимостей, и инструменте SPARTA, назначение которого — оценка и перечисление уязвимостей. Приводятся пошаговые инструкции по использованию таких мощных автоматизированных инструментов для оценки уязвимостей, как Nessus 7 и OpenVAS. Работа всех инструментов проводится в испытательной лаборатории, и гарантируется, что оценки реального типа точно моделируются.

Обсуждаются основные принципы и методы, применяемые профессиональными социальными инженерами для манипуляции людьми, чтобы те разглашали информацию или совершали иные действия. Глава 7 «Социальная инженерия».

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

Здесь вы узнаете, как повысить уровень доступа и взломать другие учетные записи в системе. Глава 9 «Повышение привилегий и поддержание доступа». Взломанные учетные записи будут использоваться для сохранения доступа к системе и получения дальнейшего доступа к сети.

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

В главе рассматривается настройка инструментов, предназначенных для захвата данных, необходимых для взлома беспроводных сетей и получения к ним доступа, включая настройку поддельных точек доступа. Глава 11 «Тестирование беспроводных сетей на проникновение».

В этой главе представлен практический подход к тестированию на проникновение с помощью мобильных устройств. Глава 12 «Мобильное тестирование на проникновение с Kali NetHunter». Подробно описывается установка и настройка необходимых приложений, а также демонстрируется процесс сканирования и оценки уязвимостей, атак типа «человек посередине» и беспроводных атак, которые могут выполняться мобильными приложениями.

Здесь вводится стандарт, описываются шесть задач и 12 требований, приводится обзорный тест на проникновение. Глава 13 «PCI DSS: сканирование и тестирование на проникновение». 3. Акцент делается на PCI DSS версий 11. 3. 1 и 11. 2.

Обсуждаются различные типы отчетов и процедуры, которые проводятся по окончании тестирования, а также демонстрируется использование платформы Dradis для организации и полного документирования теста на проникновение. Глава 14 «Инструменты для создания отчетов о тестировании на проникновение».

Отрывок. Методология тестирования на проникновение

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

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

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

Методология тестирования на проникновение

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

  • Методы «белого ящика». В этой группе тестов испытатель хорошо знает проверяемую систему и имеет полный доступ ко всем ее компонентам. Испытатели работают с клиентом и имеют доступ к закрытой информации, серверам, запущенному программному обеспечению, сетевым схемам, а иногда даже к учетным данным. Этот тип испытаний обычно проводится для проверки новых приложений перед их вводом в эксплуатацию, а также для регулярной проверки системы в рамках ее жизненного цикла — Systems Development Life Cycle (SDLC). Такие мероприятия позволяют выявить и устранить уязвимости раньше, чем они могут попасть в систему и навредить ей.
  • Методы «черного ящика». Эта группа тестов применима, когда испытателю ничего не известно об испытуемой системе. Этот тип тестирования в наибольшей степени похож на настоящие атаки злоумышленника. Испытатель должен получить всю информацию, творчески применяя имеющиеся у него в распоряжении методы и инструменты, но не выходя за рамки заключенного с клиентом соглашения. Но и этот метод имеет свои недостатки: хотя он и имитирует реальную атаку на систему или приложения, испытатель, используя только его, может пропустить некоторые уязвимости. Это очень дорогой тест, так как занимает большое количество времени. Выполняя его, испытатель изучит все возможные направления атаки и только после этого сообщит о результатах. Кроме того, чтобы не повредить проверяемую систему и не вызвать сбой, испытатель должен быть очень осторожным.
  • Методы «серого ящика». Тест учитывает все преимущества и недостатки первых двух тестов. В этом случае испытателю доступна только ограниченная информация, позволяющая провести внешнюю атаку на систему. Испытания обычно выполняются в ограниченном объеме, когда испытатель немного знает о системе.

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

  • Руководство по тестированию OWASP.
  • Руководство по тестированию на проникновение PCI.
  • Стандарт выполнения тестирования на проникновение.
  • NIST 800-115.
  • Руководство по методологии тестирования безопасности с открытым исходным кодом (OSSTMM).

Руководство по тестированию OWASP

Open Web Application Security Project (OWASP) — этот проект объединил разработчиков программных средств с открытым исходным кодом. Люди, входящие в данное сообщество, создают программы для защиты веб-приложений и веб-сервисов. Все приложения создаются с учетом опыта борьбы с программами, наносящими вред веб-сервисам и веб-приложениям. OWASP — это отправная точка для системных архитекторов, разработчиков, поставщиков, потребителей и специалистов по безопасности, то есть всех специалистов, которые принимают участие в проектировании, разработке, развертывании и проверке на безопасность всех веб-сервисов и веб-приложений. Другими словами, OWASP стремится помочь создавать более безопасные веб-приложения и веб-сервисы. Главным преимуществом руководства по тестированию OWASP является то, что по представленным результатам тестов можно получить всестороннее описание всех угроз. Руководство по тестированию OWASP определяет все опасности, которые могут повлиять на работу как системы, так и приложений, и оценивает вероятность их появления. С помощью описанных в OWASP угроз можно определить общую оценку выявленных проведенным тестированием рисков и выработать соответствующие рекомендации по устранению недостатков.

Руководство по тестированию OWASP в первую очередь сосредотачивает внимание на следующих вопросах.

  • Методы и инструменты тестирования веб-приложений.
  • Сбор информации.
  • Проверка подлинности.
  • Тестирование бизнес-логики.
  • Данные испытаний.
  • Тестирование атак типа «отказ в обслуживании».
  • Проверка управления сессиями.
  • Тестирование веб-сервисов.
  • Тест AJAX.
  • Определение степени рисков.
  • Вероятность угроз.

PCI-руководство по тестированию на проникновение

Здесь собраны нормативы для компаний, соответствующих требованиям PCI (Payment Card Industry — индустрия платежных карт). Причем в руководстве вы найдете нормативы не только по стандарту PCI v3.2. Оно создано Советом безопасности по стандартам PCI, в котором определены методы тестирования на проникновение в рамках программ управления уязвимостями.

2 был выпущен в апреле 2016 года Советом по стандартам безопасности индустрии платежных карт (PCI SSC). Стандарт PCI Data Security Standard (PCI DSS) версии 3. После обновления стандарта требования были уточнены, появились дополнительные указания и семь новых требований.

3. Для устранения проблем, связанных с нарушениями секретности личных данных владельцев карт, а также для защиты от существующих эксплойтов в стандарт PCI DSS V. В эти изменения были добавлены новые требования к тестированию на проникновение, согласно которым тестирование с сегментацией для поставщиков услуг выполнялось по крайней мере каждые шесть месяцев или после любых значительных изменений в элементах управления/методах сегментации. 2 были включены различные изменения, большинство из которых относятся к поставщикам услуг. Кроме того, в этом стандарте содержится несколько требований, обязывающих поставщиков услуг в течение года непрерывно отслеживать и поддерживать критически важные элементы управления безопасностью.

Стандартное проведение тестов на проникновение

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

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

Ниже в качестве основы для выполнения тестов на проникновение приведены основные разделы рассматриваемого нами стандарта.

  • Предварительное соглашение на взаимодействие.
  • Сбор разведданных.
  • Моделирование угроз.
  • Анализ уязвимостей.
  • Эксплуатация.
  • Пост-эксплуатация.
  • Составление отчета.

NIST 800-115

Специальное издание Национального института стандартов и технологий (National Institute of Standards and Technology Special Publication, NIST SP 800-115) является техническим руководством по тестированию и оценке информационной безопасности. Публикация подготовлена Лабораторией информационных технологий (Information Technology Laboratory, ITL) в NIST.

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

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

Он позволяет убедиться, что программа тестирования на проникновение соответствует рекомендациям. Стандарт NIST 800-115 предоставляет большой план для испытаний на проникновение.

Но он содержит большое количество актуальной и очень подробной информации по безопасности. Руководство по методологии тестирования безопасности с открытым исходным кодом
OSSTMM — документ, довольно сложный для чтения и восприятия. Причина такой популярности в следующем: эти инструкции примерно на десятилетие опережают все остальные документы в индустрии безопасности. Это также самое известное руководство по безопасности на планете с примерно полумиллионом загрузок ежемесячно. Данный документ предназначен для формирования наиболее подробного основного плана для тестирования, что, в свою очередь, обеспечит доскональное и всестороннее испытание на проникновение. Цель OSSTMM — в развитии стандартов проверки безопасности Интернета. Независимо от других организационных особенностей, таких как корпоративный профиль поставщика услуг по тестированию на проникновение, это испытание позволит клиенту убедиться в уровне технической оценки.

Фреймворк: общее тестирование на проникновение

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

Разведка. 1.

Сканирование и перечисление. 2.

Получение доступа. 3.

Повышение привилегий. 4.

Поддержание доступа. 5.

Заметание следов. 6.

Составление отчета. 7.

Рассмотрим каждый этап более подробно.

Разведка

Это первый и очень важный этап в тесте на проникновение. На него может уйти немало времени. Многие испытатели делят данный этап на две части: активную и пассивную разведку. Я же предпочитаю эти два этапа объединить, так как полученные результаты скажут сами за себя.

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

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

  • Социальная инженерия (это увлекательный метод).
  • Исследование в Интернете (с помощью поисковых машин Google, Bing, LinkedIn и т. д.).
  • Путешествие по мусорным бакам (можно испачкать руки).
  • Холодные звонки.

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

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

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

  • Имена контактов в организации.
  • Где располагается организация (если такие данные есть).
  • Адреса электронной почты (эти данные можно использовать позже для фишинга, то есть сбора конфиденциальных данных).
  • Номера телефонов важных персон, работающих в этой компании (пригодятся для фишинга).
  • Операционные системы, используемые в компании, например Windows или Linux.
  • Объявления о работе.
  • Резюме сотрудников (прошлое и настоящее).

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

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

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

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

» Более подробно с книгой можно ознакомиться на сайте издательства
» Оглавление
» Отрывок

Для Хаброжителей скидка 25% по купону — Kali Linux
По факту оплаты бумажной версии книги на e-mail высылается электронная книга.

Теги
Показать больше

Похожие статьи

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Кнопка «Наверх»
Закрыть