Перейти к статье

Этичный хакер или сканер уязвимостей: что выбрать

Команда безопасности CyberLord

Этичный хакер или сканер уязвимостей: что выбрать

«Зачем платить за тест на проникновение, если сканер показывает ноль критичных находок?» — этот вопрос я слышу от владельцев бизнеса почти каждую неделю. Он понятен: сканер действительно выдаёт отчёт, который выглядит как доказательство. Проблема в том, что «ноль критичных» означает не «риска нет», а «мы не нашли ничего, что совпало с известными шаблонами».

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

Ниже разбираем разницу по частям: что автоматика делает хорошо и дёшево, чего она не сделает никогда, как выглядит разделение труда на практике и как обосновать бюджет, когда коллега спрашивает: «Зачем нам человек?»

Что на самом деле делает сканер уязвимостей

Сканер (Nessus, OpenVAS, Qualys, Rapid7 InsightVM) подключается к хостам и сравнивает увиденное с публичными базами уязвимостей CVE и наборами правил конфигурации. Результат — список позиций с оценкой CVSS и меткой важности, от критичной до низкой.

Что у него получается хорошо:

  • непропатченное ПО с описанным CVE, например Apache 2.4.49 и CVE-2021-41773;
  • лишние сервисы, выставленные в интернет, учётные данные по умолчанию, анонимный FTP, открытые ресурсы SMB;
  • инвентаризация, включая устройства, о которых не знал отдел ИТ;
  • формальные требования, например ежеквартальные внешние сканы по PCI DSS;
  • непрерывная работа в конвейере сборки, которая ловит регрессии после каждого обновления.

Чего сканер не сделает:

  • не поймёт бизнес-процесс и намерения пользователя;
  • не свяжет три находки уровня «низкий» в один реальный путь атаки;
  • не проверит, эксплуатируется ли уязвимость именно в этой конфигурации, поэтому выдаёт много ложных срабатываний;
  • не протестирует социальную инженерию, регистрацию и работу поддержки;
  • не оценит авторизацию в глубину: видит ли клиент A документы клиента B.

Что добавляет тестировщик, работающий вручную

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

На практике работа идёт по правам доступа: что видит обычный пользователь, что видит сотрудник поддержки, что открывается после подмены идентификатора в адресе, проверяет ли API права на стороне сервера или просто прячет кнопку в интерфейсе. Именно там происходят реальные утечки — и почти никогда там нет готового CVE.

Слепое пятно бизнес-логики

Самый простой известный мне пример: интернет-магазин проходит все сканы чисто. Тестировщик входит в аккаунт, добавляет товар в корзину, перехватывает запрос и меняет цену с 1 299 рублей на 1 рубль. Заказ проходит. Сканер молчит, потому что код работает ровно так, как написан: ошибки синтаксиса нет, есть ошибка бизнес-правила.

Типичные находки, для которых нужен человек:

  • повышение привилегий подменой параметра: роль «user» меняется на «admin» в запросе, который сервер не проверяет;
  • IDOR — подмена идентификатора в адресе и доступ к документам другого клиента;
  • инъекции второго порядка: данные безопасны при записи, но опасны при последующей обработке;
  • состояние гонки в операциях с балансом, промокодами и лимитами выплат;
  • цепочки: SSRF в сервисе с низкими правами плюс доступ к метаданным облака и учётные данные.

Сравнение: сканер и тестировщик рядом

Критерий Автоматический сканер Тестировщик (пентест)
Время минуты или часы дни или недели
Частота постоянно или раз в неделю раз в квартал или в год
Стоимость от сотен до нескольких тысяч долларов в год 5 000–30 000 долларов за проект
Охват известные CVE и ошибки конфигурации логика, цепочки, обход авторизации
Ложные срабатывания много, нужна ручная проверка мало, находки подтверждены
Бизнес-логика нет да
Соответствие требованиям базовые требования к сканам полный отчёт для SOC 2 и ISO 27001
Результат автоматический отчёт отчёт с доказательствами, влиянием и планом исправлений

Что реально требуют аудиты

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

SOC 2 в отчёте типа II ожидает доказательств теста на проникновение, выполненного независимой третьей стороной. Распечатку из сканера аудитор в этой роли не примет.

ISO 27001, контроль 8.8 приложения A, требует проверки технических уязвимостей. На практике для систем, доступных из интернета, ожидается именно ручной тест, а не только скан.

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

Если соответствие строится только на сканах, аудит, скорее всего, закончится вопросом: где отчёт о тесте?

Как совместить оба подхода

Это не выбор «или». Уровни дополняют друг друга:

  1. Регулярное сканирование раз в месяц или квартал — гигиена: патчи, конфигурация, инвентарь. Критичные и высокие находки закрываются в установленные сроки.
  2. Пентест раз в год — вручную, по приложениям и периметру сети, обязательно после серьёзной смены архитектуры или крупного релиза.
  3. Тест социальной инженерии вместе с годовым пентестом — проверяет, узнаёт ли команда попытки обмана и сообщает о них.

Компании с повышенным риском — финтех, медтех, операторы критической инфраструктуры — добавляют второй тест в году, непрерывное сканирование и программу bug bounty, которая даёт внешним исследователям постоянный повод смотреть на их системы.

Сколько это стоит и как считать выгоду

Цены на пентест кажутся шоком, пока не сравнишь их со стоимостью инцидента:

  • веб-приложение средней сложности: обычно 5 000–15 000 долларов, то есть 3–5 дней работы опытного тестировщика;
  • небольшая сеть, около 50 хостов: 5 000–12 000 долларов;
  • утечка клиентской базы: штрафы, судебные издержки, уведомления, потеря доверия и простой — сумма обычно многократно превышает годовой бюджет на тесты.

Вопрос не в том, «можем ли мы позволить себе тест», а в том, «можем ли мы позволить себе инцидент, которого избежали бы».

Как выбрать исполнителя и оформить документы

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

Отдельно оговорите результат: отчёт с доказательствами (скриншоты, запросы, логи), описание влияния на бизнес по каждой находке, приоритеты исправлений и повторный тест в той же цене. Сертификаты OSCP, CREST или CEH — хороший сигнал, но они не заменят образец отчёта; как их читать, разбираем в материале о сертификатах по кибербезопасности.

Частые вопросы

Сколько длится тест на проникновение? Веб-приложение средней сложности — обычно 3–5 рабочих дней, небольшая сеть — 3–7 дней. К этому добавляется несколько дней на отчёт.

Может ли тест вывести систему из строя? Грамотно проведённый тест должен быть неразрушающим, а объём работ определяет, что разрешено. И всё же перед стартом стоит иметь проверенную резервную копию и согласованное окно обслуживания.

Как часто повторять? Минимум раз в год, а также после любого существенного изменения архитектуры или крупного релиза. При чувствительных данных и требованиях регуляторов — раз в полгода.

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

Хотите знать, может ли кто-то реально забрать данные ваших клиентов, а не только «не хватает ли патча»? Свяжитесь с командой Cyberlord, чтобы спланировать тест на проникновение в согласованном объёме и с письменным разрешением. Мы работаем теми же методами, что и реальные атакующие, — чтобы вы закрыли бреши раньше них.

Читайте также

WhatsApp