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

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

Содержание

Что такое пентест?

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

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

  • White box — тестировщик получает полную информацию о системе (схемы сети, доступы и т. д.).

  • Grey box — предоставляется ограниченный объем данных (например, учетные записи).

  • Black box — тестировщику не дают никакой информации, что максимально приближает тест к реальной атаке.

Виды пентестов

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

1. Тестирование внутренней и внешней сети

Проверка сетевой инфраструктуры (локальной и облачной), включая маршрутизаторы, коммутаторы, фаерволы и серверы. Внешний пентест фокусируется на интернет-доступных системах, внутренний — на ресурсах внутри корпоративной сети. Чтобы определить объём теста, нужно знать количество внутренних и внешних IP-адресов, размер подсети и количество сайтов.

2. Тестирование беспроводных сетей

Проверка WLAN (беспроводной локальной сети) и протоколов, таких как Bluetooth, ZigBee и Z-Wave. Выявляются уязвимости шифрования, несанкционированные точки доступа и проблемы с WPA. Для определения объема теста необходимо знать количество беспроводных и гостевых сетей, местоположений и уникальных SSID, подлежащих проверке.

3. Тестирование веб-приложений

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

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

Проверка приложений для Android и iOS на предмет проблем с аутентификацией, авторизацией, утечками данных и управлением сессиями. Чтобы понять объём тестирования, провайдеру нужно узнать, на каких версиях операционных систем необходимо провести тестирование, сколько API-запросов будет использоваться, а также требования по джейлбрейку и выявлению root-прав.

5. Обзор сборки и конфигурации

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

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

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

7. Тестирование облачных инфраструктур

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

8. Гибкое тестирование безопасности (Agile-тестирование)

Непрерывное тестирование безопасности на всех этапах разработки (SDLC). Этот подход помогает обеспечивать безопасность каждого обновления — от мелких исправлений до крупных релизов.

Тестирование на проникновение: White box, Black box и Grey box

Объём информации, предоставленной перед проведением теста, может существенно повлиять на его результаты. Существует три основных подхода к тестированию: white box (белый ящик), black box (чёрный ящик) и grey box (серый ящик).

  • Тестирование на проникновение по методу “Белый ящик” (White Box)

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

  • Тестирование на проникновение по методу “Черный ящик” (Black Box)

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

  • Тестирование на проникновение по методу “Серый ящик” (Grey Box)

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

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

Читайте также: Краткое руководство по тестированию безопасности

Как часто следует проводить пентесты?

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

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

Комментарии (0)