Гибридная ИТ-инфраструктура, содержащая физические и облачные компоненты, стала обычным явлением во многих компаниях. Админы, программисты и обычные пользователи быстро привыкают к новой реальности. Но несмотря на все преимущества нового мира, в нём имеется масса неочевидных опасностей. В этом посте мы расскажем о том, что и как нужно защищать в облачной ИТ-реальности.
Еще больше актуальной информации о мире облачных технологий узнай на глобальной конференции CLOUDSEC 16-18 ноября. Регистрация по ссылке.
В чем, собственно, проблема?
Если не погружаться в тему, может показаться, что проблема довольно надуманная. Какая разница, где находится сервер, если это всё та же Windows Server или всё тот же Linux. Просто железо, на котором он выполняется, размещено в дата-центре. Ставим привычный антивирус, IPS/IDS, подключаем к SIEM, и готово.
Но все, кто уже частично или полностью переместился в облако, понимают, что этого недостаточно, потому что облачная инфраструктура устроена и работает иначе, а ещё потому, что во многих случаях приходится работать с гибридной средой, когда имеются физические, виртуальные и облачные серверы. А ещё добавляются контейнеры, облачные хранилища и бессерверные вычисления, которые вообще непонятно как проверять. Ну, а если в компании имеются разработчики, то процессы DevOps только добавляют тумана неопределённости в и так непростую картину мира.
Серверы - физические, виртуальные, облачные
Важнейший компонент любой ИТ-инфраструктуры — это серверы. Учитывая постоянный рост числа и изощрённости вымогательских атак и атак через цепочки поставок, крайне важно обеспечить их максимальную защиту. Но «просто антивирусы» часто не позволяют управлять единым образом работой на облачных и on-premise-серверах. А это значит, что у администраторов прибавляется головной боли.
Мы считаем, что облачное решение для защиты серверов должно сочетать в себе функции традиционного антивируса, а также IPS, межсетевого экрана и сканера уязвимостей. Нелишним будет поведенческий контроль приложений, проверка целостности и мониторинг системных журналов. И в качестве вишенки на торте — поведенческий анализ с использованием машинного обучения и интеграция с песочницами для проверки подозрительного кода.
Всё это должно иметь удобный API и интеграцию с пайплайн-решениями и интеграцией с SIEM, XDR и пайплайн-решениями для обнаружения, блокировки и расследования инцидентов.
Ещё одно требование — поддержка всех распространённых операционных систем и облачных платформ от Windows и Linux до AWS и MS Azure.
Контейнеры и системы оркестрации
Уязвимости контейнерных платформ — довольно популярный вектор кибератак последних лет. Злоумышленники пытаются скомпрометировать Docker и Kubernetes, чтобы запустить на выполнение вредоносный контейнер, обойти аутентификацию или внедрить вредоносное ПО в популярный образ в репозитории.
Чтобы предотвратить это, защитная система должна не только знать о существовании контейнеров, но и уметь с ними работать, отслеживая:
обновление, даунгрейд или удаление ПО;
изменение атрибутов исполняемых файлов;
запуск процессов;
целостность критичных файлов;
правила iptables;
трафик контейнеров;
права на ключевые директории.
Для этого необходимо, чтобы система выполняла следующие действия:
сканирование образов контейнеров в процессе разработки на:
наличие уязвимостей, вредоносного ПО, секретов и индикаторов компрометации,
соответствие отраслевым требованиям (NIST, PCI, HIPAA);
контроль развёртывания на основе:
определённых правил контроля и управления,
политик для подов, образов и контейнеров;
защиту контейнеров во время работы:
обнаружение эксплуатации уязвимостей,
мониторинг недопустимых команд.
Файловые хранилища
Одна из особенностей облачной структуры — новый подход к хранению файлов. Это уже не файловый ресурс на Windows- или SAMBA-сервере, а некая сущность, доступ к которой можно получить по ссылке. Соответственно, и проверка файлов в таких хранилищах имеет ряд особенностей.
Например, чтобы проверить файл на вредоносность, обычно требуется загрузить его на проверяющий сервер с локальным антивирусом и уже там провести анализ. Такой подход возможен, но его реализация требует разработки всей цепочки технологий и на практике крайне редко реализуется. Гораздо эффективнее использование готовых «антивирусов для облачных хранилищ». В подобных решениях все необходимые интеграции уже реализованы.
Приложения
В облачной инфраструктуре в защите нуждаются не только серверы и сеть, но и приложения. Платформа должна понимать, как защищать различные API, как закрыть уязвимости веб-приложений и как обеспечить безопасное выполнение бессерверных функций типа AWS Lambda. Очевидно, что для решения этих задач традиционного WAF уже недостаточно. Оставаться в стороне уже не получится, нужно встраиваться в приложение.
Перечислим требования к такой платформе:
защита от эксплуатации уязвимостей и утечек данных, в том числе от:
SQL-инъекций, XSS, CSRF,
удалённого выполнения команд (RCE),
несанкционированного доступа к файлам;
минимальное влияние на производительность и процессы разработки;
полная видимость инцидента вплоть до строки кода;
поддержка используемого вами языка разработки, платформы и фреймворка.
Сетевая инфраструктура
Облачные платформы предлагают богатые средства разграничения сетевого доступа, но контроль того, какими данными обмениваются узлы, остается на пользователе. Проблема большинства современных решений по обеспечению сетевой безопасности, в частности, систем IPS/IDS, в том, что они с самого начала своего появления, инвестировали в разработку проприетарной аппаратной платформы, а программные реализации ориентировались на минимальные требования про пропускной способности. Сетевой трафик в облаках проверяют именно программные реализации, и компромиссная модель решения становится единственной доступной. Также привычная ручная подстройка параметров работы сетевых средств безопасности плохо подходит динамичным облачным средам.
В итоге использование традиционных средств сетевой безопасности в облаке приводит к следующим сложностям:
решения неудобны для развёртывания как в части архитектуры, так и по настройкам;
конфликты в динамичных DevOps-системах;
производительность может оказаться недостаточной;
могут быть несовместимы с существующей моделью трафика, стеком безопасности или средой.
Более эффективным инструментом защиты являются продукты сетевой безопасности нового поколения, которые будучи разработанными специально для облаков, предлагают простоту внедрения, прозрачность работы, автоматизированную настройку и необходимую пропускную способность.
Безопасность Open Source
В мире имеется множество различных лицензий, в той или иной степени ограничивающих возможность использования открытого кода в коммерческих приложениях. А открытость кода не означает, что в нём не содержится ошибок. Чтобы быть уверенным в безопасности продуктов, которые используют кодовую базу open source, требуется решение, которое:
проверяет зависимости и отслеживает все известные уязвимости и риски, связанные с лицензиями;
отслеживает риски open source кода в репозиториях и определяет их приоритеты;
помогает улучшить безопасность приложений во время сборки и выполнения благодаря сотрудничеству с командами разработчиков
Управляемость
Мощные средства безопасности особенно хороши, если работают не сами по себе, а в составе платформы, которая не просто группирует их, но и предоставляет доступ к панели управления — консоли, из которой можно получить доступ ко всем компонентам защитного решения. Так будет создана единая точка входа и регистрации для пользовательских и облачных аккаунтов, общая поддержка и документация, а также обеспечена масштабируемость.
Очевидно, что внедрение облачной инфраструктуры добавляет ряд операционных сложностей:
стремительный рост новых облачных служб,
необходимость обучения для создания правильных безопасных конфигураций,
множество команд, использующих облачные службы,
отсутствие видимости,
необходимость соблюдать требования регуляторов.
С переездом в облако мы приобретаем не только преимущества, но и непрерывную головную боль, которая становится невыносимой, если попытаться управлять процессами вручную.
Решение здесь — добавление в управляющую консоль функций автоматической проверки настроек и их коррекции на предмет соответствия лучшим практикам и стандартам от разработки до запуска. Это позволит быстрее решать проблемы благодаря самовосстановлению и интеграции с процессами DevOps.
Заключение
Мы не будем делать вид, что рассказывали об абстрактном защитном решении в вакууме. Практически все описанные системы и функции имеются в нашей комплексной системе защиты облачной инфраструктуры под названием Trend Micro Cloud One. Это совсем молодая платформа, поэтому сейчас очень легко получить её бесплатно, чтобы попробовать в течение месяца и решить, подходит ли она для вашей компании.