Реферат по теме выпускной работы
Окончательное завершение: июнь 2018 года. Полный текст работы и материалы по теме могут быть получены у автора или его руководителя после указанной даты.
Содержание
Введение
Наиболее активно обсуждаемой темой многими мировыми IT-компаниями за последние 10 лет является Big Data
(Большие данные
). На сегодняшний день, большие данные являются одним из двигателей развития информационных технологий. Это связано с тем, что по всем пользователям интернета стало накапливаться огромное количество информации.
Термин Большие Данные
вызывает множество разногласий, многие предполагают, что это только объем накопленной информации, но также не нужно забывать и о технической стороне, данное направление включает в себя технологии хранения, вычисления, а также сервисные услуги.
Сфера использования технологий Больших Данных обширна. Например, с помощью Больших Данных можно узнать о предпочтениях клиентов, об эффективности маркетинговых кампаний или провести анализ рисков. Но наиболее популярное их использование замечено в торговле, здравоохранении, телекоммуникациях, в финансовых компаниях, а также в государственном управлении.
При использовании данной технологии в розничных магазинах можно накопить множество информации о клиентах, системе управления запасами, поставках товарной продукции. С помощью полученной информации можно прогнозировать спрос или поставки товара, а также оптимизировать затраты.
В финансовых компаниях большие данные предоставляют возможность проанализировать кредитоспособность заемщика, т. е. на основе выявленного оборота денежных средств подобрать выгодные и оптимальные условия кредитования, предложить дополнительные подходящие ему банковские услуги. Применение такого подхода позволит значительно сократить время рассмотрения заявок.
Операторы сотовой связи также, как и финансовые организации, имеют огромные базы данных, что позволяет им проводить детальный анализ накопленной информации. Помимо использования Big Data в целях предоставления качественных услуг технологию можно применить для выявления и предотвращения мошенничества.
Предприятия горнодобывающей и топливно-нефтяной промышленности могут накапливать информацию о количестве добытой продукции и на основании этих данных делать выводы об эффективности разработки месторождения, следить за состоянием оборудования, строить графики прогнозирования спроса на продукцию.
Все выше перечисленные применения технологии больших данных нуждаются в некоторой защите информации. Например, финансовой компании, которая только начала свою коммерческую деятельность, можно нанести немалый материальный ущерб, если конкурирующая фирма получит доступ к накопленным или обработанным данным. Но наибольший урон можно нанести топливно-энергетическим предприятиям, которые непосредственно связаны с государством, если не предпринимать попытки защитить свою информацию [1].
1. Актуальность темы
Актуальность работы обусловлена тем, что большие данные, которые обрабатывает распределенная система могут быть:
- конфиденциальными;
- обрабатываться у других провайдеров, предоставляющих облачную инфраструктуру как услугу (IaaS), например Amazon EC2, Google Compute Engine, Microsoft Azure и т. д.
Это требует предпринять ряд решений и мер по обеспечению многоуровневой защиты данных с возможностью добавления или удаления определенного уровня в зависимости от сетевой инфраструктуры и обрабатываемых данных, решающих определенную задачу.
2. Цель и задачи исследования, планируемые результаты
Цель магистерской работы заключается в исследовании существующих методов и средств защиты информации в распределенной системе.
Основные задачи исследования:
- Проанализировать угрозы информационной безопасности в распределенных информационных системах и методы их предотвращения. Выявить недостатки в методах защиты конфиденциальных данных при распределенной обработке в существующих решениях.
- Изучить подход к разработке распределенных алгоритмов на примере фреймворка Hadoop, выполнить анализ модели MapReduce с точки зрения безопасности. Усвоить процесс разработки приложения с дальнейшем развертыванием его в облачной инфраструктуре.
Объект исследования: методы и средства защиты информации.
В рамках данной работы требуется:
- исследовать распределенную систему Hadoop;
- проанализировать и настроить (сконфигурировать) средства защиты для Hadoop в облачной среде;
- в качестве практических результатов планируется проектирование и разработка работающего прототипа (Minimum Viable Product) административной панели, позволяющего пользователям использовать возможности распределенной обработки информации со встроенными в административную панель возможностями защиты конфиденциальной информации пользователя.
3. Обзор исследований и разработок
Тема защиты информации в распределенных информационных системах, которая может находиться в облачной инфраструктуре, является популярной не только в западных, но и в национальных научных сообществах.
3.1 Обзор международных источников
Существует множество книг и публикаций зарубежных авторов по теме защиты информации в распределенных системах.
Например, книга Practical Hadoop Security
[2] является отличным руководством для системных администраторов, которые собираются развернуть Hadoop в производственной среде и обеспечить защиту для данного кластера.
В статье Review on Big Data Security in Hadoop
(Обзор безопасности больших данных в Hadoop
) [3] описаны риски безопасности в файловой системе Hadoop, показано как можно выполнить шифрование/дешифрование данных в HDFS.
В статье A Survey on Data Security System for Cloud Using Hadoop
(Обзор системы безопасности данных для облачных вычислений с использованием Hadoop
) [4] предоставлен краткий обзор по безопасности Hadoop: описание работы протокола аутентификации Kerberos.
3.2 Обзор национальных источников
В русскоязычном научном сообществе можно выделить следующие публикации по безопасности данных.
Книга Защита информации в компьютерных системах и сетях
[5] посвящена методам и средствам многоуровневой защиты информации в компьютерных системах и сетях. В данной книге сформулированы основные понятия защиты информации и проанализированы угрозы информационной безопасности. Особое внимание уделяется международным и отечественным стандартам информационной безопасности.
В книге Информационная безопасность. Защита и нападение
[6] приводятся как техническая информация, описывающая атаки и защиту от них, так и рекомендации по организации процесса обеспечения информационной безопасности. Рассмотрены практические примеры для организации защиты персональных данных.
В книге Защита компьютерной информации от несанкционированного доступа
[7] рассмотрены вопросы защиты компьютерной информации от несанкционированного доступа на компьютеры в составе сети. Особое внимание уделено моделям и механизмам управления доступом к ресурсам, а также архитектурным принципам построения системы защиты.
В статье Исследование механизмов обеспечения защищенного доступа к данным, размещенным в облачной инфраструктуре
[8] проведено исследование, позволяющее более детально разобраться в вопросах безопасности, с которыми приходится сталкиваться при проектировании архитектуры облачных сред.
В статье Некоторые аспекты информационной безопасности в распределенной компьютерной системе
[9] рассмотрена архитектура распределенной компьютерной системы. Особое внимание уделяется особенности информационной безопасности.
3.3 Обзор локальных источников
Среди магистров ДонНТУ можно выделить следующие публикации.
В статье Анализ проблем безопасности архитектуры распределенных NoSQL приложений на примере программного каркаса Hadoop
[10] Чуприн В.И. выделил основные характеристики хранилищ для обработки больших массивов данных. Проанализировал особенности архитектуры распределенных приложений на примере программного каркаса Hadoop и предложил рекомендации по оптимизации подсистемы безопасности на основе приведенных проблем.
В работе Воротынцева Н.В. Исследование подхода использования распределенных модулей для обеспечения защиты информации
[11] рассказывается о понятиях в области компьютерных сетей и распределенных систем.
4. Анализ безопасности распределенной модели вычисления
В основу обработки данных в распределенных системах положена модель MapReduce. Главным достоинством такой модели является простая масштабируемость при наличии нескольких вычислительных узлов. Работа MapReduce состоит в основном из двух шагов: Map (отображение, распределение) и Reduce (свертка, редукция) [12].
На шаге отображения (Map) выполняется предварительная обработка входных данных. Для этого один из главных узлов (обычно называется master или leader node) получает входные данные решаемой задачи и разделяет их на независимые части. Например, файл с логами, содержащий 1000 строк, можно разделить на 10 частей по 100 строк. После того, как данные разделены, их передают другим рабочим узлам (slave или follower nodes) для дальнейшей обработки.
На шаге редукции (Reduce) происходит свертка обработанных данных. Узел, отвечающий за решение задачи, получает ответы от рабочих узлов и на их основе формируется результат.
Чтобы все составляющие функции MapReduce могли корректно и совместно выполнять вычисления, необходимо принять некоторое соглашение о единой структуре обрабатываемых данных. Оно должно быть достаточно гибким и общим, а также отвечать потребностям большинства приложений обработки данных. В MapReduce в качестве основных примитивов используются списки и пары ключ / значение. В роли ключей и значений могут выступать целые числа, строки или составные объекты, часть значений которых может быть проигнорирована при дальнейшей обработке [13].
На рисунке 1 показана упрощенная схема потока данных в модели MapReduce [14].
Как видно из рисунка 1, данная модель имеет много точек передачи данных и поэтому нуждается в определенной защите информации. Например, при передачи данных по сети после группировки по ключу, злоумышленник может добавить или убрать обработанные данные и тем самым нарушить общий результат задачи. Ситуацию может усугубить факт того, что обработка происходит не в своей частной локальной компьютерной сети, а используется инфраструктура других провайдеров. Одним из очевидных и простых решений может служить разделение конфиденциальных данных (имени, логина пользователя) и его обрабатываемых данных (количество взятых кредитов и т. д.). При этом в качестве ключа может использоваться хеш-значение конфиденциальных данных. Но данный подход не решает проблему, если сами значения обрабатываемых данных являются секретными. При такой ситуации необходимо шифровать и расшифровывать симметричными алгоритмами передаваемые данные во время обработки конкретным узлом.
5. Анализ существующих средств защиты для распределенных систем
Многие документно-ориентированные базы данных на сегодняшний день уже поддерживают встроенное в свой дистрибутив SSL/TLS шифрование. Например, CouchDB, начиная с версии 1.3, изначально поддерживает (при определенной настройке) передачу по протоколу HTTPS [15]. MongoDB также позволяет выбрать версию дистрибутива, как с поддержкой SSL/TLS, так и без нее [16]. Но помимо этого, в коммерческой версии (MongoDB Enterprise Server) существуют дополнительные средства защиты: шифрование данных в состоянии покоя, интеграция с протоколом LDAP и аутентификацией Kerberos [17]. Для остальных NoSQL БД, которые не поддерживают встроенное SSL/TLS шифрование, можно использовать SSL-туннель или VPN, если используется своя (доверенная) локальная сеть. При использовании услуг облачного провайдера, например BaaS (Backend as a service), неизвестно как защищена сетевая инфраструктура за обратным прокси-сервером (reverse proxy). Если передача данных и хранение данных на сервере не защищены дополнительными средствами, то это существенно повышает вероятность возникновения следующих рисков:
- утечки данных;
- подмены данных при ее обработке;
- полного или частичного уничтожения данных.
На рисунке 2 показан пример взаимодействия клиента с услугой облачного хранения данных.
Как и все распределенные системы, Hadoop использует сеть для взаимодействия между узлами. В качестве протокола передачи данных по умолчанию используется HTTP, но можно настроить поддержку и HTTPS [18]. Hadoop позволяет шифровать данные при передачи между узлами, но помимо этого у него есть решения, предназначенные для защиты данных с помощью инфраструктуры высоко детализированной авторизации.
Решение Sentry поддерживает созданную ранее модель доступа на основе ролей под названием (RBAC) (Role-based Access Control), которая функционирует поверх
формы представления данных. Модель RBAC имеет ряд функций, предназначенных для защиты корпоративной среды больших данных. Первая функция – это защищенная авторизация, которая обеспечивает обязательное управление доступом к данным для аутентифицированных пользователей. Пользователям присваиваются роли, а затем предоставляются соответствующие полномочия по доступу к данным. Такой подход с помощью шаблонов способствует масштабированию модели, разделяя пользователей на категории в соответствии с их ролями. Другая функция позволяет организовать администрирование пользовательских полномочий таким образом, чтобы распределить эту задачу между несколькими администраторами на уровне схемы или на уровне базы данных. Также Sentry реализует аутентификацию с помощью протокола аутентификации Kerberos, интегрированного в Hadoop.
Project Rhino – проект с открытым исходным кодом, разработкой которой занимается компания Intel. Он был создан с целью совершенствования платформы Hadoop: обеспечить дополнительные механизмы защиты. Главная цель этого проекта состоит в устранении брешей безопасности в стеке Hadoop и в обеспечении безопасности на всех уровнях в рамках экосистемы Hadoop. С этой целью Intel осуществляет разработку в сфере безопасности по нескольким направлениям и ориентируется на криптографические возможности.
Среди всех работ, выполняемых в рамках Project Rhino, наиболее интересны новые возможности для шифрования/дешифрования файлов в рамках нескольких моделей использования. Например, добавление общего уровня абстракции для криптографических кодеков реализует API-интерфейс, с помощью которого несколько таких кодеков можно зарегистрировать и использовать в некоторой среде. Для поддержки этой возможности разрабатывается соответствующая среда для распределения ключей и управления ими.
Apache Knox Gateway – это решение для защиты периметра Hadoop. В отличие от решения Sentry, которое предоставляет средства для высокодетализированного контроля доступа к данным, решение Knox Gateway обеспечивает контроль доступа к сервисам платформы Hadoop. Цель Knox Gateway – предоставить единую точку безопасного доступа к Hadoop-кластерам. Данное решение реализовано в виде шлюза, который представляет доступ к Hadoop-кластерам посредством REST API [19].
Выводы
В настоящее время накопленная информация представляет огромную ценность. С появлением глобальных компьютерных сетей, в частности сети Интернет, доступ к информации значительно упростился, что привело к повышению угрозы нарушения безопасности данных при отсутствии мер их защиты.
В рамках магистерской работы предполагается проанализировать с точки зрения безопасности распределенную модель обработки данных (MapReduce). Выполнить анализ существующих средств защиты для распределенных систем. Оценить их эффективность.
При проектировании средств защиты данных для распределенных систем необходимо учитывать то, что с одной стороны они должны надежно сохранять конфиденциальные данные, а с другой – поддерживать многоуровневую защиту с возможностью добавления или удаления определенного уровня в зависимости от сетевой инфраструктуры и обрабатываемых данных.
Список источников
1. Аналитический обзор рынка Big Data // Хабрахабр. [Электронный ресурс]. – Режим доступа: https://habrahabr.ru/company/moex/blog/256747/
2. Practical Hadoop Security // Amazon. [Электронный ресурс]. – Режим доступа: https://www.amazon.com/Practical-Hadoop-Security-Bhushan-Lakhe/dp/1430265442
3. Review on Big Data Security in Hadoop // International Journal Of Engineering And Computer Science. [Электронный ресурс]. – Режим доступа: https://www.ijecs.in/issue/v3-i12/28%20ijecs.pdf
4. A Survey on Data Security System for Cloud Using Hadoop // International Journal of Innovative Research in Computer and Communication Engineering. [Электронный ресурс]. – Режим доступа: https://www.ijircce.com/upload/2016/november/164_A%20SURVEY.pdf
5. Защита информации в компьютерных системах и сетях // Ozon. [Электронный ресурс]. – Режим доступа: https://www.ozon.ru/context/detail/id/28336100/
6. Информационная безопасность. Защита и нападение // Ozon. [Электронный ресурс]. – Режим доступа: https://www.ozon.ru/context/detail/id/139249153/
7. Защита компьютерной информации от несанкционированного доступа // Ozon. [Электронный ресурс]. – Режим доступа: http://www.ozon.ru/context/detail/id/17981339/
8. Исследование механизмов обеспечения защищенного доступа к данным, размещенным в облачной инфраструктуре // Cyberleninka. [Электронный ресурс]. – Режим доступа: https://cyberleninka.ru/article/n/issledovanie-mehanizmov-obespecheniya-zaschischennogo-dostupa-k-dannym-razmeschennym-v-oblachnoy-infrastrukture
9. Некоторые аспекты информационной безопасности в распределенной компьютерной системе // Молодой ученый. [Электронный ресурс]. – Режим доступа: https://moluch.ru/archive/25/2709/
10. Анализ проблем безопасности архитектуры распределённых NoSQL приложений на примере программного каркаса Hadoop // Портал магистров ДонНТУ. [Электронный ресурс]. – Режим доступа: http://masters.donntu.ru/2014/fknt/chuprin/library/_hadoop-security.htm
11. Исследование подхода использования распределенных модулей для обеспечения защиты информации // Портал магистров ДонНТУ. [Электронный ресурс]. – Режим доступа: http://masters.donntu.ru/2005/fvti/vorotyntsev/diss/index.htm
12. MapReduce // Википедия. [Электронный ресурс]. – Режим доступа: https://ru.wikipedia.org/wiki/MapReduce
13. Чак Лэм. Hadoop в действии. – М.: ДМК Пресс, 2012. – 424 с.: ил.
14. Introduction to MapReduce // sci2s. [Электронный ресурс]. – Режим доступа: http://sci2s.ugr.es/BigData#Big%20Data%20Technologies
15. Native SSL Support // CouchDB. [Электронный ресурс]. – Режим доступа: http://docs.couchdb.org/en/1.3.0/ssl.html
16. MongoDB Support // MongoDB. [Электронный ресурс]. – Режим доступа: https://docs.mongodb.com/v3.2/tutorial/configure-ssl/#mongodb-support
17. MongoDB Download Center // MongoDB. [Электронный ресурс]. – Режим доступа: https://www.mongodb.com/download-center#enterprise
18. Sandeep Karanth. Mastering Hadoop. – Packt Publishing, 2014. – 374 pages.
19. Безопасность данных Hadoop и решение Sentry // IBM developerWorks. [Электронный ресурс]. – Режим доступа: http://www.ibm.com/developerworks/ru/library/se-hadoop/
20. Егоров А.А., Чернышова А.В., Губенко Н.Е. Анализ средств защиты больших данных в распределенных системах // Первая международная научно-практическая конференция Программная инженерия: методы и технологии разработки информационно-вычислительных систем
(ПИИВС-2016). Донецк, 2016 г. – Сборник научных трудов. – ДонНТУ, Том 2, с. 28-33.
21. Егоров А.А., Чернышова А.В. Исследование инструментов распределенной системы Hadoop // Конференция Современные информационные технологии в образовании и научных исследованиях
(СИТОНИ-2017). Донецк, 2017 г. – Сборник научных трудов. – ДонНТУ