Previous: 4.7.5 Виртуализация вычислительного процесса
UP:
4.7 Прикладные сети Интернет Next: 4.7.7 Унифицированные коммуникации (UC) |
Проблемы безопасности |
Атаки сервиса cloud computing |
Литература |
Около 10 лет назад встал вопрос об эффективном использовании вычислительной техники и снижении ее энергопотребления. Это дало толчок развития виртуализации процессов и машин. Как правило эта техника использовалась в отношении серверов, работающих в рамках одной фирмы или организации. Но вскоре стало ясно, что виртуализация открывает возможности предоставления самых разнообразных сервисов удаленным пользователям и фирмам. Облачные технологии открывают возможности экономии издержек. |
Понятие "cloud" довольно давно используется в отношении Интернет, хотя первоначально этот термин имел отношение к телефонии. Пользователь здесь часто даже не знает, где конкретно находится нужный ему сервер или сервис.
Coud computing способствует стандартизации и оптимизации вычислительной и ИТ инфраструктуры, а также динамическому перераспределению ресурсов.
Аналогично cloud computing не предполагает, что пользователь знает что-то об архитектуре и других особенностях вычислительных средств, которые он использует. Cloud computing является развитием процесса индустриализации в сфере ИТ. Приведу определение cloud computing, заимствованное из работы [28], где эта технология сравнивается с GRID.
Cloud computing - это парадигма распределенного широкомасштабного компьютинга, где набор абстрактных виртуализованных, динамически масштабируемых, дистанционно управляемых машин, устройств памяти, платформ и сервисов предоставляются по запросу удаленным пользователям через Интернет. |
Основная идея cloud computing заключается в том, что клиент не должен создавать свой вычислительный центр и обучать персонал инсталляции прикладных программ и обслуживанию системы. Следует также иметь в виду, ресурсы ВЦ оказываются недостаточными или избыточными. В обоих вариантах неизбежны дополнительные издержки. Кроме того компания бывает вынуждена нанимать и обучать системных администраторов, специалистов по базам данных, управлению ИТ-ресурсами и сетевой безопасности. Если для крупной компании это может быть позволительно, то для мелких и средних фирм это приводит к чрезмерным расходам. Динамика бизнеса может потребовать увеличения ИТ-ресурсов или их сокращения. Именно технология cloud computing способна решить все эти проблемы динамически. Расценки различных видов услуг (2009 год) можно найти в [2].
Технология cloud computing имеет некоторые общие черты с технологиями GRID, Utility computing и service computing. Смотри рис. 1. [28]
Рис. 1. Области использования различных видов computing.
Слева расположены технологии, ориентированные на приложения, а справа - ориентированные на услуги.
Может показаться, что cloud computing можно отождествить со слабосвязанными GRID, но это не так, прежде всего потому, что cloud computing много богаче функционально. Cloud computing является откликом на быстро и динамически растущие потребности в вычислениях и разнообразных сервисах. Этому способствует и снижение цен на аппаратные средства и появление многоядерных процессоров.
По существу cloud computing является новым шагом в развитии информационных технологий. Первым шагом на этом пути было появление услуги SaaS (Software as a Service), которая в начале особенно части применялась для удаленного резервного копирования. Определенный опыт в этой области дало использование сетей VPN (Virtual Private Network). В начале 2000-х годов, Компания Microsoft расширила границы SaaS, предоставляя также WEB-сервисы. Далее в этот ряд стали добавляться все новые виды сервисов. Заметному ускорению этого процесса способствовало развитие технологии виртуализации.
Инфраструктура cloud computing представляет собой систему предоставления вычислительных услуг информационными центрами, построенными на основе серверов. Такого рода сервисы стали возможны, когда уровень надежности и безопасности стал достаточно высок, а пропускная способность сетей сделала работу достаточно комфортной. Смотри InfoWorld. Cloud Computing Deep Dive. Special report. September 2009.
Вход в систему обычно производится через одну точку, что несколько улучшает безопасность. Облако предоставляет услуги на трех разных уровнях: IaaS, PaaS и SaaS. Этому способствует широкое внедрение виртуализации.
В последнее время (2009) появились новые виды услуг testing-as-a-service, security-as-a-service, database-as-a-service, process-as-a-service, application-as-a-service, platform-as-a-service и UC-as-a-service. Таким образом, технология охватывает помимо вычислений такие области, как хранение данных, информационные услуги, интеграцию, безопасность, организация определенных процессов, коммуникации и управление. Причем один и тот же провайдер может в принципе предлагать любой перечень услуг. Пользователь же может получать весь спектр услуг у одного провайдера, а может воспользоваться и разными провайдерами для определенных разновидностей сервисов. Имеющееся многообразие провайдеров и сервисов существенно усложняет процесс выбора для пользователя.
Рис. 1A. Категории сервис-провайдеров, которые позволяют пользователю реализовать определенные сервисы в рамках своей архитектуры [1]
Всего существует 17 вычислительных категорий cloud computing, но со временем это число может увеличиться.
Здесь названа лишь незначительная часть сервисов, это прежде всего сервисы, имеющие отношение к cloud computing. Помимо названных наиважнейшими разновидностями являются WEB-сервисы. Новейшим веянием является появление Cloud TV, что свидетельствует о росте средней пропускной способности каналов. Появились сервисы IT-as-a-service и Data-as-a-service и даже crimeware-as-a-service.
Рис. 2. Логическая схема cloud computing [5]
Категория хранение данных - предоставление по запросу нужного дискового пространства для конкретного приложения. Этот ресурс может располагаться удаленно.
Категория Базы данных - предоставление удаленного доступа к банкам и базам данных. Для пользователя это выглядит так, как если бы база данных была размещена локально.
Категория информация предполагает удаленный доступ к данным через интерфейс типа API. Это могут быть биржевые данные, кредитная информация, проверка адресов и идентификаций.
Категория процесс (это может быть в частности к бизнес-процесс) может относиться к провайдерам приложений, инфраструктуры и платформы. Эта категория относится к провайдерам платформ, приложений и инфраструктуры.
Категория приложение эквивалентна SaaS (Software-as-a-Service) и представляет собой любую программу, например, Salesforce SFA. Обычно подразумевается работа через WEB-интерфейс.
Категория платформа - это комплексная услуга, включающая в себя разработку приложений, интерфейсов, баз данных, программ тестирование и т.д..
Категория интеграция включает в себя приложения, управление информационными потоками, прикладной дизайн и все, что присутствует в традиционной EAI-технологии (Enterprise Application-Integration).
Категория безопасность - это предоставление через Интернет услуг безопасности. Хотя структура безопасности обычно строится локально, некоторые услуги реализуется удаленно, например, идентификация и сертификация, генерация, хранение и передача ключей доступа. Обычно это атрибут архитектуры.
Категория управление - это сервис удаленного управление другими cloud-сервисами, сюда входит виртуализация, управление доступом, реализация определенных политик (например, безопасности).
Категория тестирование - это предоставление возможности локального или удаленного тестирования различных видов сервисов, включая WEB-серверы.
Категория инфраструктура - это фактически информационный центр в качестве сервиса. Пользователь получает доступ к определенному серверу (или серверам), его ОС и приложениям.
Для того чтобы выбрать нужный тип сервисов, пользователь должен выполнить последовательно следующие действия:
Перейдя в cloud computing, клиент может забыть о проблемах резервного копирования, восстановления после сетевых атак, реконфигурировании системы, обновления используемого программного обеспечения и т.д.. Это, разумеется в теории, на практике клиенту следует быть внимательным при заключении договора с провайдерами, особенно в отношении сохранения конфиденциальности корпоративных данных.
В 2006 году компания Amazon.com Inc. начала проект EC2 (Elastic Compute Cloud) - инфраструктура в качестве сервиса (IaaS - Infrastructure as a Service) [2]. Это открыло развитие нового вида бизнеса. Данному бизнесу способствовал успех технологии виртуализации и разработки компьютерных структур, ориентированных на сервис, а также появление широкополосных сетей. Около 25% компаний планируют использовать IaaS путем аренды ресурсов у внешних провайдеров. Интерес к созданию внутренних "облаков" пока заметно ниже.
Намечается тенденция к тому, что сами информационные технологии становятся одним из видов сервиса. Cloud Computing является привлекательным решением для организаций, где требования, предъявляемые к вычислительным ресурсам, варьируются часто и в широких пределах. Клиенты должны заботиться о дедубликации данных, чтобы не тратить деньги впустую и минимизировать внешний трафик.
Вычислительная среда (облако) Amazon в настоящее время (2009) обслуживает 400.000 клиентов.
SaaS-сервис на конец 2009 года оставался самым востребованным. Зарегистрирована первая botnet в cloud computing (выявлена компанией Amazon). По этой причине безопасность остается определяющим фактором для прогресса в области cloud computing. Для решения этой проблемы создан альянс Cloud Security Alliance.
Ниже на рис. 3 и 4 представлены коичественные оценки плюсов и минусов cloud computing. Смотри From Silicon to Cloud: Building Up to Cloud
Рис. 3. Выгоды модели cloud по запросу
Рис. 4. Проблемы, возникающие при реализации модели cloud по запросу
Все виды cloud computing предполагают передачу данных провайдеру услуг. Это безусловно создает дополнительные уязвимости, ведь критическая информация оказывается вне зоны контроля ее владельца. Но даже когда такие данные находятся на сервере владельца, они не полностью защищены. Дело здесь не только во внешних хакерах. Наибольшую опасность представляют сотрудники самой органицации-владельца, имеющие доступ в том числе и к критической информации. Понятно, что передача данных должна осуществляться с привлечением криптозащиты. Вероятность ее несанкционированного прочтения, после того как она попала к провайдеру услуг, минимальна. Но при передаче следует помнить о возможности атаки "человек-по-середине", когда могут подменяться общедоступные ключи. По этой причине многоуровневое использование сертификатов является обязательным.
Если несанкционированное чтение у сервис-провайдера практически не возможно, то порча или стирание данных вполне вероятны. Постоянно нужно помнить о резервном копировании, хотя чем больше копий существует, тем больше вероятность утечки. Для особо важной информации следует применить методы катастрофоустойчивого резервного копирования.
При заключении договора нужно обговаривать определенное значение коэффициента доступности сервиса (uptime), а также время восстановления системы после отказа.
В случае cloud computing обеспечение безопасности с защиты сетей следует переместить в сферу безопасности услуг и приложений. Традиционные ранее политики безопасности (DMZ и защита периметра) здесь перестают работать.
Безопасность cloud computing обеспечивается теми же средствами, что и прежде. Нюансы возникают из-за того, что на общем сервере провайдера услуг могут находится данные и программы разных клиентов. Здесь оказывается особенно важно правильно выбрать провайдера [12], это особенно важно с точки зрения внешних физических аспектов безопасности. Следует учитывать, что современные провайдеры используют в основном самодельные программы. Далее нужно определить, что следует хранить и использовать локально, а что перенести в "облако". Если все элементы системы безопасности будут выполнены правильно, безопасность при переходе в "облако" может даже увеличиться.
Инфраструктура предприятия может содержать внутренние и внешние провайдеры сервисов, как это показано на рис. 5 [16].
Рис. 5.
Коммерческая эффективность внедрения cloud computing продемонстрирована на рис. 6 [21]. Преимущества начинают проявляться через 1,5 года после начала использования.
Рис. 6. Окупаемость внедрения cloud computing
Для развития этого вида бизнеса необходимо наличие эффективной юридической поддержки, способствующей сохранности информации.
Для рассматриваемой технологии типично смешение физических и виртуальных схем управления [22], что может обеспечить большую гибкость и безопасность, смотри рис. 7.
Рис. 7. Защита физических и виртуальных серверов с локальной и удаленной доступностью (P2V2V)
В настоящее время уровень безопасности для облака представляется еще недостаточно высоким. В качестве интерфейса используется WEB/SSL, а параметры безопасности выбирает сам пользователь. Он может аннулировать свой старый пароль и запросить прислать новый по e-mail (в незашифрованном виде). Но разработки в этом направлении ведутся и в самое ближайшее время уровень безопасности существенно повысится. Перечислим некоторые риски, сопряженные с cloud computing:
Поскольку безопасность является наиважнейшим аспектом cloud computing, в публикациях этому уделяется достаточно много места. В работе [23] выделяются семь стандартов безопасности:
Cloud coputing привлекает достаточно серьезные инвестиции, только компания Intel вложила в эту технологию более 20 млн долларов.
Ниже перечислены основные виды сетевых атак систем cloud copmuting.
В криптографии атакой бокового канала называется любая атака, которая базируется на информации, полученной от знания физической реализации криптосистемы, а не на лобовой попытке взлома или атаке теоретических уязвимостей алгоритма.
Так как облачные технологии часто сопряжены с необходимостью загружать программы с неизвестным текстом, такие программы могут содержать свои уязвимости. Кроме того, хакеры всегда будут стремиться подменить эти программы своими. Атакеры могут использовать сервис IaaS в качестве платформы для вредоносных программ. В облачных технологиях, как и во многих других, большую угрозу могут представлять инсайдеры. Определенные проблемы безопасности могут быть связаны с небезопасными интерфейсами и приложениями.
К числу возможных уязвимостей cloud computing можно отнести:
Компания Intel предлагает свои процессоры (Xeon серии 5500 и 5600), хорошо адаптированные для Cloud-приложений [30].
Широкое внедрение техники cloud computing в сильной мере зависит от надежности каналов. Клиент должен быть уверен, что он не будет неожиданно отключен от жизненно необходимых информационных ресурсов и услуг. Это особенно важно для услуг типа Security-as-a-Service. Крайне существенным параметром cloud-серверов становится процент недоступности.
В странах, где cloud computing используется широко, обсуждается проблема правовой защиты клиентов.
В конце 2010 года в связи с DDoS атаками против компаний, отказавшихся предоставлять ресурсы WikiLeaks, выяснилось еще одно преимущество технологии cloud computing. Атакованы были все компании, выступившие против WikiLeaks, но только Amazon оказалась нечувствительна к этим воздействиям, так как использовала средства cloud computing. ("Anonymous: serious threat or mere annoyance", Network Security, N1, 2011).
Корпоративные сети часто сильно распределены в пространстве, эта специфика отражается в архитектуре облачных решений для CNS (Cloud Network Service). На рис. 8 приведен пример такой сети из The 2011 Application & Service Delivery Handbook. Dr. Jim Metzler, Ashton Metzler
Рис. 8. Интернет-структура для CNS. (POP - Point of Presence; WOC - WAN Optimization Controller)
Для PaaS и некоторых других облачных приложений может использоваться язык Ruby поверх Rails.
В последнее время появляется много публикаций на облачные темы. В большинстве статей отмечаются положительные характеристики этой технологии. Но это не всегда так (см. Five myths of cloud computing. Business white paper. В частности, часто утверждается, что облака всегда позволяют экономить средства. Для ограниченных объемов вычислений это обычно действительно так. Но если вычисления носят регулярный, долгосрочный характер, эффективнее для них выделить отдельную машину.
Облачный хостинг за последние месяцы вырос весьма значительно (см. рис. 9). Основными провайдерами этого вида услуг являются Amazon, Alibaba, Hetzner, DigitalOcean, OVH и Shore Network Tech. Наибольший рост за полгода показан DigitalOcean (более 160%).
Рис. 9. Рост DigitalOcean
Обсуждается возможность создания общественных, общедоступных облаков. Такие облака созданы и в России, например, на mail.ru.
Рис. 10. Рост инвестиций в облачные технологии за 2010-2014гг
В обзоре Cloud Security Alliance по безопасности облачных технологий вделено 12 главных уязвимостей:
Довольно часто основным источником уязвимости облака являтся некорректная конфигурация системы.
Широкое внедрение разнообразных мобильных средств делает облачные технологии все более привлекательными. Прогноз процентов для облачных технологий в 2025 году представлен на рис. 11.
Рис. 11. Процент облачных вычислений в 2025 году
Рис. 12. Прогноз облачного трафика до 2020 года. Chip 07/2018, стр. 39
Облачные технологии находят применение для самых разных приложений (см. "Simplify your cloud strategy by taming cloud sprawl", Citrix). 95% пользователей так или иначе используют облачные сервисы, иногда даже несколько одновременно. На рис. 13 представлены доли клиентов, которые используют или планируют применять облачную технику в 2016- 2021 годах.
Рис. 13. Многооблачный мир в 2016-21
В обзоре Forcepoint рассматриваюся некоторые мифы, сопряженные с использованием облачных технологий (см. "The top 5 myths about cloud-based security", Alison DeNisco Rayome, November 15, 2018). Многие предприятия обращаются к использованию облаков, так как сами не хотят или не могут обеспечить безопасность для своих данных.
В последнее время в обиход вошло понятие fog-computing (туманные вычисления), которое предполагает распределенные вычисления с привлечением в том числе мобильных устройств. На рис. 14 показан рост прибылей туманных вычислений в 2018-22 годах (см.From cloud to edge: The next IT transformation.
Рис. 14. Рост прибылей в сфере туманных вычислений в 2018-22гг
Следует иметь в виду, что даже если вы храните данные в облаке, целесообразно осущестлять резервное копирование этой информации.
На рис. 15 представлен стек облачных сервисов (см. "HCI vs. cloud: The main differences". Robert Sheldon, 12 Aug 2020).
Рис. 15. Стек облачных сервисов
Рис. 16. Автоматизированные облачные сервисы
Previous: 4.7.5 Виртуализация вычислительного процесса
UP:
4.7 Прикладные сети Интернет Next: 4.7.7 Унифицированные коммуникации (UC) |