Технические науки
МОДЕЛИРОВАНИЕ СИСТЕМ ОБРАБОТКИ БОЛЬШИХ ДАННЫХ КИБЕРБЕЗОПАСНОСТИ
Петренко Сергей Анатольевич 1, Петренко А.С. 2

1. Санкт-Петербургский государственный электротехнический университет «ЛЭТИ» им. В.И. Ульянова (Ленина) (СПбГЭТУ «ЛЭТИ»)
2. Санкт-Петербургский государственный электротехнический университет «ЛЭТИ» им. В.И. Ульянова (Ленина) (СПбГЭТУ «ЛЭТИ»)

Резюме:

Актуальность задачи объясняется необходимостью извлечения и использования в дальнейшем полезных знаний из больших объемов структурированной и неструктурированной информации. Здесь источниками информации могут выступать корпоративные системы Internet/Intranet, промышленный Интернет и Интернет вещей (IIoT/IoT), социальные и медиа системы (Facebook, Instagram, Twitter, LinkedIn, ВКонтакте, Одноклассники), мессенджеры (Skype, Viber, WhatsApp, Telegram, FireChat) и пр.

Ключевые слова: Потоковая обработка больших данных, хранилище больших данных, прогнозная аналитика, количественные закономерности информационного противоборства


Моделирование сложных систем

УДК 004.89

Петренко С.А.,  д-р техн. наук, проф.,

Петренко А.С.,  аспирант

 

Санкт-Петербургский государственный

электротехнический университет "  ЛЭТИ"

им. В.И. Ульянова (Ленина)

 

МОДЕЛИРОВАНИЕ СИСТЕМ ОБРАБОТКИ

БОЛЬШИХ ДАННЫХ КИБЕРБЕЗОПАСНОСТИ

 

Актуальность. Актуальность задачи подтверждается принципиальной возможностью проводить «онлайн-анализ» пакетных и потоковых данных, выделять и обрабатывать значимые простые и сложные события кибербезопасности в реальном (или квазиреальном) масштабе времени. Существенно, что решение упомянутой задачи позволяет создать проактивные средства защиты информации и отслеживать надвигающиеся инциденты информационной безопасности еще до того, как они смогут катастрофически повлиять на устойчивость функционирования критической инфраструктуры[1].

Под технологиями Big Data в информационной безопасности будем понимать технологии производительной обработки динамически растущих объемов данных (структурированных и неструктурированных) в гетерогенных  системах Internet/Itranet и IIoT/IoT для решения актуальных задач безопасности. Практическая значимость технологий Big Data заключается в возможности обнаружения первичных и вторичных признаков подготовки и проведения компьютерных атак, выявлении аномального поведения контролируемых объектов и субъектов, классификации ранее неизвестных массовых и групповых кибератак (в том числе, новых DDOS и APT), обнаружении фактов сокрытия следов компьютерных преступлений и пр., т.е. во всех случаях, когда применение традиционных средств защиты информации (SIEM, IDS/IPS, СЗИ от НСД, СКЗИ,  антивирусы и пр.) оказывается мало эффективным на практике. 

Возможные способы моделирования. Для решения поставленной задачи воспользуемся подходами на основе:

-                   Представления Complex Event Processing (CEP), например, StreamBase;

-                   Модификации MapReduce, например, D-Streams;

-                   Задания акторами, например, Storm, S4 и Zont;

-                   Сочетания акторов и модификации MapReduce, например, Zont.

В первом подходе, возможно проводить поиск «значимых» событий кибербезопасности в потоке данных на некотором интервале времени, осуществлять корреляционный анализ событий и выделять соответствующие паттерны событий, которые требуют немедленного реагирования. Для автоматизации процесса разработки систем потоковой обработки данных на основе CEP предложен ряд инструментальных средств.  Например, среда разработки StreamBase с собственными декларативными языками программирования StreamSQL и EventFlow. Упомянутые языки эквивалентны по своим выразительным возможностям и содержат типовые процедуры ввода/вывода данных, обработки заданий в текстовом и графическом виде, вывода утверждений в терминах соответствующей реляционной алгебры и пр. Кроме того, в названных языках встроена  поддержка базовых конструкций языков программирования  Java, R и пр.

Практика применения CEP показала, что этот подход оптимален для сбора и обработки простых событий кибербезопасности. Например, для извлечения событий из нескольких потоков данных, их агрегации в сложные события, обратной декомпозиции и пр. Однако, реализация сложной логики обработки событий кибербезопасности затруднена. Для разрешения этой проблемы был задействован подход на основе обобщения MapReduce [2] на обработку потоковых данных.

Во втором подходе, была использована модель дискретных потоков D-Streams,  в которой потоковые вычисления были представлены в виде наборов не сессионных детерминированных пакетных вычислений на небольших интервалах временных рядов. Существенно, что такое представление вычислений позволило не только реализовать сложную логику обработки событий кибербезопасности, но и предложить более совершенные, по сравнению с традиционными репликацией и резервным копированием, методы восстановления. Дело в том, что на практике, в вычислительных сетях с большим количеством узлов (от сотни и более) неизбежно возникают отказы и «зависания» (или «медленные» узлы) и здесь оперативное восстановление данных в случае сбоя или отказа достаточно важно. Так как, даже минимальная задержка в 10-30 секунд может оказаться критичной для принятия нужного решения. 

Следует констатировать, что, по всей видимости, известные системы потоковой обработки данных Storm, MapReduce Online и др. уже достигли своих пороговых значений отказоустойчивости. Упомянутые системы основаны на модели «долгоживущих» сессионных операторов, которые при получении сообщения, обновляют внутреннее состояние и отправляют далее новое сообщение. В этом случае, восстановление системы происходит путем репликации на заранее подготовленную копию узла или путем резервного копирования в потоке данных, подразумевающего «перепроигрование» сообщений на каждой новой копии «упавшего» узла. В результате, использование механизма репликации приводит к затратному двух/трехкратному резервированию узла, а применение резервного копирования в потоке данных характеризуется существенными временными задержкамами, связанными с необходимостью ожидания «обновления» состояний узлов при повторном «прогоне» данных через операторы. Кроме того, ни один из приведенных подходов не справляется с «зависаниями». Системы с репликацией применяют протоколы синхронизации типа Flu для координации реплик и зависание замедляет обе реплики. При резервном копировании любое «зависание» считается отказом с последующим затратным восстановлением.

Модель D-Stream позволила предложить более совершенные методы восстановления. Например, метод восстановления на основе структуры данных «Resilient Distributed Datasets» (RDD), который позволяет в течение нескольких субсекунд восстанавливать данные прямо из памяти, не прибегая к репликации, или метод параллельного восстановления состояния «потерянного узла», в котором при «падении узла» инициируется «подключение» работоспособных узлов кластера к «перерасчету потерянной» структуры RDD. Отметим, что в традиционных системах непрерывной обработки данных [2] такое восстановление невозможно из-за сложных протоколов синхронизации. 

На практике, модель D-Stream была реализована в системе потоковой обработки данных, которая выгодно отличается своими характеристиками. В частности, позволяет  обрабатывать более 60 миллионов записей в секунду на 100 узлах при субсекундных задержках. Восстановление системы в случае сбоя или отказа  происходит также за субсекундное время. В целом, производительность предлагаемого решения в пересчете на один узел сравнима с коммерческими прототипами. При этом может линейно масштабироваться вплоть до 100 узлов и работать в 2-5 раз быстрее, чем известные системы Storm и S4.

Заметим, что использование модели D-Streams требует разбиения массива входных данных на потоки, что неизбежно приводит к потере некоторых событий. Кроме того, в случае образования крупных потоков система обработки данных перестает быть гибкой и масштабируемой. Время реакции системы на события замедляется и система все дальше отдаляется от режима реального времени. Для разрешения указанных проблем был предложен подход на основе модели акторов

В третьем подходе, под акторами понимаются некоторые примитивы параллельных вычислений. Основным преимуществом акторов стала  возможность хранить состояния, в том числе, получаемые из исторических данных, что может быть использовано для выделения значимых событий кибербезопасности. Разработка соответствующего прототипа была выполнена на языке программирования Java с использованием машины JMS для передачи асинхронных сообщений между конечными автоматами (Finite State Machine, FSM). Полученное решение оптимально подходит для работы с облаком сенсоров.

В четвертом подходе, были объединены достоинства второго и третьего подходов, что позволило создать системы потоковой обработки данных в реальном масштабе времени на основе сочетания модификации MapReduce и модели акторов.

Заключение. Полученные результаты свидетельствуют о целесообразности решения поставленной задачи на основе комбинации акторов и модификации MapReduce над распределенным облачным KV хранилищем данных. Решения на основе CEP оказались менее требовательными к памяти, т.к. позволили хранить данные в едином «окне» событий, но потребовали значительных  вычислительных ресурсов при анализе таких «окон». А решения на основе модели акторов оказались менее требовательными к вычислительным ресурсам, но более требовательными к памяти из-за необходимости дублирования данных для каждого события/объекта. Соответственно решения на основе модификации MapReduce заняли промежуточное положение.

 

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1.                Петренко С.А., Симонов С.В. Управление информационными рисками. Экономически оправданная безопасность (Информационные технологии для инженеров). М.: Изд. ДМК-Пресс, 2010. 384 с.

2.                Натан Марц, Джеймс Уоррен. Большие данные. Принципы и практика построения масштабируемых систем обработки данных в реальном времени. М.: Изд. Вильямс, 2016. 292 c.

 


Библиографическая ссылка

Петренко Сергей Анатольевич, Петренко А.С. МОДЕЛИРОВАНИЕ СИСТЕМ ОБРАБОТКИ БОЛЬШИХ ДАННЫХ КИБЕРБЕЗОПАСНОСТИ // . – . – № ;
URL: istmu2016.csrae.ru/ru/0-10 (дата обращения: 04.05.2024).


Код для вставки на сайт или в блог

Просмотры статьи

Сегодня: 420 | За неделю: 420 | Всего: 420


Комментарии (0)