Как мне следить за тем, что делает тестировщик на проникновение?

Вопрос или проблема

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

Как я могу быть уверен, что после завершения работы эта система не будет постоянно скомпрометирована?

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

Решения, о которых я подумал:

  1. Уничтожить машину с орбиты.

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

  1. Отслеживать весь сетевой трафик в подсети.

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

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

Это также крайне дорого, приближается к судебному расследованию и подвержено ошибкам. Я, вероятно, могу провести тестирование на проникновение сам.

  1. Иметь железные контракты, работать только с надежными компаниями и доверять их сотрудникам.

Достаточно близко? Это единственное решение? Или есть другой способ лучше контролировать тестировщика на проникновение?

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

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

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

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

  1. Мониторить, что они делают

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

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

  1. Использовать фиктивную среду

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

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

  1. “Доверять им”

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

Ответ или решение

Мониторинг работы тестировщика на проникновение: что нужно знать

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

1. Первый шаг – создание безопасной среды

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

  • Тестовая среда: Создайте копию продакшн-системы, исключив из нее конфиденциальные данные.
  • Отсутствие доступа к продакшн: Минимизируйте доступ к рабочим системам, предоставив тестировщику альтернативные ресурсы.

2. Мониторинг действий тестировщика

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

  • Логгирование и протоколирование: Включите детальное логгирование всех действий пользователя. Записывайте команды, вводимые в терминале, а также действия, выполняемые с файлом и сетью.
  • Физическое присутствие: Наличие специалиста по безопасности, который будет наблюдать за работой тестировщика, поможет контролировать процесс и обеспечивает дополнительную защиту.
  • Документация действий: Попросите тестировщика вести журнал своих действий. Соотнесите его отчет с собранной информацией о проведенных тестах для выявления несоответствий.

3. Профилактика при использовании стороннего программного обеспечения

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

4. Назначение контроля безопасности

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

5. Доверие и репутация

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

Итог

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

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

Капча загружается...