Облачные услуги — это реалии сегодняшнего дня. Их популярность нарастает, количество предложений и провайдеров растет. Но многие заказчики до сих пор с осторожностью смотрят в сторону облаков, и главная причина их беспокойства — безопасность.
Для большинство это стало уже прописной истиной: любой облачный проект непременно следует начинать не только с рассмотрения путей реализации его функциональной прикладной части, но и с оценки всего, что связано с безопасностью при вынесении данных и программ за пределы внутренней корпоративной инфраструктуры. Эти вопросы относятся к числу наиболее важных при реализации облачных проектов.
Чего хотят заказчики? Они ожидают получить тот же уровень управляемости и защищенности в облаке, к которому привыкли при работе с «домашней» корпоративной инфраструктурой. Так рассуждают представители ИТ-служб.
Бизнес-руководители смотрят на облачные проекты немного иначе. Для них выбор облака — это возможность возложения ответственности на провайдера облачных услуг. Если его гарантии их устраивают, то проблем вроде бы и нет.
Реальность находится где-то посередине. Ответственность за безопасность не утрачивается, а перекладывается на плечи облачных провайдеров и отчасти остается и на самих заказчиках. Это немного сложней, чем раньше, но не обязательно хуже. Появляются новые «правила игры», где все участники принимают новый подход.
Рассмотрим эти вопросы более подробно, опираясь на материал Сони Грессер (Sonja Gresser), архитектора клиентских систем компании IBM Security Software, который был недавно опубликован в онлайн-издании IBM Security Intelligence.
Требования по безопасности в облаке
Безопасность приложений в облаке — это задача со многими переменными. Их эффективная защита предполагает обеспечение конфиденциальности при обмене данных, контроль целостность, доступности, аутентичности, идентифицируемость данных, проверку на достоверность и персональную принадлежность.
Но вряд ли этот список требований кого-то удивил: они являются классическими для выстраивания обороны для традиционных корпоративных систем. Их переложение на облачные системы очевидно, но сделать это напрямую нельзя: в облаке параллельно сосуществуют разные архитектурные решения, разные модели использования облачных сервисов. Да и сами клиенты облачных услуг предъявляют различные требования по безопасности. Поэтому единого универсального решения не существует, и приходится адаптировать их индивидуально для каждого проекта.
«Законодателем» в выработке правил для руководства и управления облачными корпоративными системами выступает сегодня ISACA — международная организация, занимающаяся вопросами накопления знаний по безопасности в различных областях ИТ, их применению для корпоративных систем, сертификации, обучению. Там был разработан свод правил (COBIT), предписываемый для исполнения в корпоративном секторе для реализации необходимо качества и обеспечения безопасности их информационных систем с учетом возникающих рисков и для обеспечения нужной степени контроля.
Средства управления безопасностью корпоративных ИТ-систем в облаке делятся на четыре уровня:
1) контроль за работой пользователей;
2) защита информации;
3) защита приложений;
4) безопасность инфраструктуры.
На практике сегодня встречаются три облачных модели: IaaS, PaaS и SaaS. Однако реальные облачные проекты часто имеют более сложную конфигурацию и представляют собой сочетание элементов нескольких облачных моделей.
Проблема безопасности в этом случае проецируется следующим образом. При IaaS облачный провайдер берет на себя функции предоставления надежной аппаратной инфраструктуры и поддержки виртуальных систем, тогда как пользователю предоставляется роль администратора, управляющего сетевой и системной конфигурациями, прикладными системами и данными.
При PaaS обеспечение безопасности для инфраструктуры возлагается на провайдера, в том числе ответственность за безопасность всех системных компонентов класса middleware (например, базы данных). На долю пользователя остается контроль защищенности приложений и данных.
При SaaS полный контроль в системе лежит на облачном провайдере, начиная от физического доступа к аппаратной инфраструктуры и до прикладных программ. Функции безопасности в проекции на пользователя сводятся к обеспечению достоверности предоставляемых в облако данных и контролю за правильностью алгоритмов при работе с ними.
Управление доступом и защита данных
Обеспечение безопасности облачных приложений обычно раскладывается на следующие части:
· управление доступом;
· управление учетными записями;
· контроль и управление привилегированными пользователями.
При IaaS управление учетными записями и контроль доступа относятся к ответственности самих пользователей. Это объясняется тем, что провайдер контролирует доступ только к физической инфраструктуре и виртуальным конфигурациям. То, что находится внутри, выходит за рамки его зоны контроля.
В PaaS и SaaS доли ответственности меняются. Если контроль за доступом продолжает оставаться на стороне пользователя, то обеспечение безопасности программных интерфейсов (API) и аудит событий в системе оказываются в зоне ответственности провайдера. Функции управления учетными записями, в том числе ведение контроля над действиями привилегированных пользователей, возлагается на обе стороны — провайдера и пользователя.
Реализацию функций безопасности данных часто связывают с выполнением следующих обязательных операций:
· сбор данных в одном месте и их классификация;
· шифрование и маскирование данных;
· мониторинг изменений данных и контроль за файловой активностью;
· контроль за доступом к данным;
· надежное уничтожение данных.
В IaaS ответственность за защиту данных лежит на пользователе. При использовании модели PaaS провайдер обязан принять необходимые меры для обеспечения надежной защиты баз данных. Для этого он привлекает доступные инструменты, обеспечивающие мониторинг активности и защиту доступа. За пользователем закрепляется контроль достоверности контента и целостности данных.
Безопасность приложений и контроль за аппаратной инфраструктурой
При SaaS устанавливается коллективная ответственность за безопасность приложений. От компании-клиента требуется следить за безопасностью своих данных и их передачей, на облачного провайдера возлагается задача обеспечения безопасности используемого приложения.
Контроль безопасности приложений предусматривает:
· учет необходимых требований на этапе проектирования и обеспечение контроля за исходным кодом;
· проведение тестов на проникновение и на случай возникновения сбоев в работе системы контроля безопасности;
· контроль на этапе развертывания приложений;
· защиту от подмены данных и иных угроз при эксплуатации.
В SaaS на провайдера возлагается ответственность за безопасность при разработке приложений и их поддержки в эксплуатации, контроль за надежностью предоставляемых сервисов. На всех этапах разработки и применения провайдер осуществляет сканирование прикладного кода, ведет контроль за безопасностью применения, выявляет уязвимости.
В IaaS и PaaS вся полнота ответственности за надежную работу приложений лежит на плечах пользователя. Главное правило, которого он должен придерживаться: использовать подключение к облачным службам уже со стадии проектирования приложений. Это позволит своевременно выявить и отработать требуемые элементы для защиты будущего приложения.
При IaaS и PaaS основное внимание следует уделять:
· защите оконечных точек;
· безопасности в сети передачи данных;
· шифрованию трафика;
· контролю за физическим доступом к объектам защиты и предотвращению проникновения неуполномоченных лиц.
С точки зрения пользователей при SaaS на них возложена ответственность за безопасность оконечных точек, что должно быть учтено при выборе инфраструктуры. При IaaS на пользователя возлагается ответственность за безопасность передачи данных по сети и поддержку шифрования трафика, если необходимо.
В случае перехода на PaaS или SaaS названные функции передаются на сторону провайдера. Это объясняется тем, что при этих моделях облачного применения у провайдера есть в распоряжении все необходимые технологии. На него также всегда возлагается функция контроля за физическим доступом.
Следует однако уточнить, что средства безопасности, применяемые провайдером, не всегда являются готовыми продуктами. Встречаются случаи, когда они разрабатываются самостоятельно под индивидуальную пользовательскую ИТ-инфраструктуру. Часто облачные провайдеры предлагают также собственные инструменты для отдельных задач: управление учетными записями, контроль доступа.
Облачные провайдеры могут также выдавать пользователям сертификаты на соответствие используемых решений отраслевым рекомендациям. Это могут быть SOC-2, COBIT и другие, выдаваемые на соответствие требованиям по безопасности при управлении доступом, выявлении уязвимостей, комплаенс-контроле, на пин-тесты.