Полная версия

Главная arrow Информатика arrow Актуальные вопросы защиты информации

  • Увеличить шрифт
  • Уменьшить шрифт


<<   СОДЕРЖАНИЕ ПОСМОТРЕТЬ ОРИГИНАЛ   >>

АНАЛИЗ БЕЗОПАСНОСТИ ИНФОРМАЦИОННЫХ СИСТЕМ МЕТОДОМ ТЕСТИРОВАНИЯ НА ПРОНИКНОВЕНИЕ

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

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

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

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

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

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

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

- Open Source Security Testing Methodology Manual (OSSTMM)

URL: http://www.isecom.org/research/osstmm.html

- NIST Special Publication 800-115: Technical Guide to Information Security Testing and Assessment (NIST SP 800-115)

URL: h ttp://csrc. n ist.gov/publications./n istpubs/800-115/SP800-115.pdf

- Information Systems Security Assessment Framework (ISSAF)

URL: https://www.scribd.eom/doc/l06731914/ISSAF-0-2-1B

- Penetration Testing Execution Standard (PTES)

URL: h ttp.V/www.pen test-standard, org/

- О WASP Testing Guide

URL: https://www. owasp. org/index.php/OWASP Testing Project

На рис. 7 представлен пример этапа атаки (NIST SP 800-115)[2].

Авторы методики NIST выделяют наиболее распространенные уязвимости, которые выявляются в процессе этапа атаки:

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

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

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

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

Методология тестирования на проникновение Information Systems Security Assessment Framework (ISSAF)[3] была разработана OISSG (Open Information Systems Security Group) в 2006 году. Эта методология охватывает все аспекты относящиеся к оценке безопасности: от организационного уровня (например, влияние на бизнес и организационные модели) к практическим техникам (например, проверка безопасности паролей, систем, сетей).

Методология тестирования на проникновение ISSAF включает три этапа: планирование и подготовка; тестирование; отчетность и удаление артефактов и содержит девять шагов, рис. 8.

Методика Penetration Testing Execution Standard (PTES)[4] была создана в 2011 году группой специалистов по информационной безопасности из разных сфер деятельности. PTES быстро набрал популярность среди пентестеров, поскольку содержал подробную информацию о большинстве аспектов пентеста. PTES состоит из семи основных секций, которые охватывают все аспекты тестирования на проникновение:

  • - предварительные согласования, где рассматриваются вопросы определения границ тестирования, его даты, метрики, порядок составления документации о тестировании и прочие вопросы, касающиеся предварительных процедур;
  • - сбор информации, где описываются техники исследования цели, позволяющие собрать о ней максимальное количество полезной для тестирования информации;
Схема этапа атаки (NIST SP 800-115)

Рис. 7. Схема этапа атаки (NIST SP 800-115)

Схема методологии тестирования на проникновение ISSAF

Рис. 8. Схема методологии тестирования на проникновение ISSAF

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

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

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

Особенности методики NIST:

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

Недостатки NIST:

  • - не содержит конкретных примеров тестирования;
  • - не описывает механизмы защиты от уязвимостей.

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

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

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

Особенности методики ISSAF:

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

Недостатки ISSAF:

- методика частично не завершена, не везде есть примеры и описание.

PTES, являясь руководством тестирования на проникновение, не содержит технических подробностей проведения пентеста. Однако, авторы составили отдельное техническое руководство в дополнение к основному. Техническое руководство PTES помогает определить процедуры, которым нужно следовать при проведении пентеста. Е[омимо отличной структуры, руководство содержит ссылки и скриншоты, а также описывает необходимые действия к каждой из множества его технических процедур.

Особенности методики PTES:

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

Недостатки PTES:

  • - некоторые ссылки документа ведут на несуществующие страницы;
  • - содержит описание только процедуры внешнего тестирования.

Результаты сравнительного анализа методик тестирования на проникновение: NIST, ISSAF и PTES приводятся в табл. 5, где выделены основные процедуры на каждом из этапов тестирования и отмечено наличие или отсутствие этих процедур в рассмотренных методиках.

Таблица 5

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

Критерии сравнения

NIST

ISSAF

PTES

Предварительные работы

Определение целей, рамок и масштабов тестирования

+

+

+

Определение подходов к тестированию

+

Подготовка и подписание Соглашения о Тестировании

+

+

+

Сбор информации

Анализ документации

+

+

Анализ логов

+

+

Анализ настроек сетевого оборудования

+

+

Анализ конфигурации устройств пользователей системы

+

+

Прослушивание трафика сети

+

+

+

Поиск информации в публичных источниках

+

+

+

Сбор информации о пользователях объекта

+

Анализ работы системы проверки целостности файлов

+

+

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

+

+

+

Окончание табл. 5

Критерии сравнения

NIST

ISSAF

PTES

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

Обнаружение устройств сети

+

+

+

Определение ОС на устройствах сети

+

+

+

Определение версий и типов приложений

+

+

+

Сканирование портов и служб

+

+

+

Использование автоматических сканеров уязвимостей

+

+

+

Использование специализированных сканеров

+

+

+

Сканирование беспроводных сетей

+

+

+

Поиск или написание кода для эксплуатации уязвимости

+

+

+

Эксплуатация уязвимостей

Уязвимости, доступные из внешнего контура

+

+

+

Уязвимости, доступные из внутреннего контура

+

+

Взлом паролей (в том ч. случайный перебор)

+

+

+

Ввод случайных значений в поля ввода (fuzzing)

+

Атака на беспроводные точки доступа

+

Тестирование неизвестных уязвимостей в изолированной среде

Тестирование каналов удаленного доступа

+

+

+

Действия после проникновения

Получение максимальных прав доступа

+

+

+

Сбор зашифрованных паролей

+

+

+

Сбор файлов куки

+

+

Установка бэкдоров

+

+

Скрытие следов проникновения

+

+

Общие положения

Отчетность

+

+

+

Описание уровня подготовки, необходимого для проведения тестирования

+

+

Примеры тестирования конкретных уязвимостей с описанием

+

+

Описание механизмов защиты от уязвимостей

+

+

Описание источников уязвимостей

+

+

+

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

+

+

+

Предоставление ссылок на интернет ресурсы

+

+

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

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

  • [1] Суханов А.В. Подход к построению защищенных информационных систем //Информационные технологии. - 2009. - № 6. - С. 57-61. 3 Баранова Е.К., Худышкин А.А. Особенности анализа безопасности информационных систем методом тестирования на проникновение // Моделирование и АнализБезопасности и Риска в Сложных системах: Труды Международной Научной ШколыМАБР - 2015 (Санкт-Петербург, 17-19 ноября, 2015) - СПб.: ГУ АП. -2015. - С. 200-206.
  • [2] Scarfone, К., Souppaya, М., Cody, А., & Orebaugh, А. (2008). Technical guide to information security testing and assessment. NIST Special Publication 800-115.
  • [3] Rathore, В., Brunner, М, Dilaj, М, Herrera, О., Brunati, Р., Subramaniam, R., Raman, S., Chavan, U. (2006). ISSAF 0.2.1 - Information Systems Security Assessment Framework.
  • [4] The penetration testing execution standard. URL: http://www.pentest-standard.org/index.php/Main_Page
 
<<   СОДЕРЖАНИЕ ПОСМОТРЕТЬ ОРИГИНАЛ   >>