СИСТЕМА УПРАВЛЕНИЯ ПОТОКАМИ ДАННЫХ
DATA FLOW CONTROL SYSTEM

Область техники:
[0001] Изобретение относится к области сетевых технологий для передачи цифровой информации и обработки передаваемых данных.
Уровень техники:
[0002] В настоящее время существует множество систем, предназначенных для управления потоками данных между вычислительными устройствами. Одним из примеров таких систем является система управления и мониторинга потоков данных, описанная в источнике US 2016/0359740 A1. Данное решение предусматривает систему управления потоками данных, которые могут быть дополнены функциями или атрибутами из других доменов, такими как атрибуты хоста источника и/или хоста назначения потока, атрибуты процесса, инициирующего поток, и/или атрибуты владельца или пользователя процесса. Сеть в известном решении может быть сконфигурирована для захвата атрибутов заголовка сети или пакета первого потока и определения дополнительных атрибутов первого потока с использованием сенсорной сети. Сенсорная сеть может включать в себя датчики для сетевых устройств (например, маршрутизаторов, коммутаторов, сетевых устройств), физических серверов, гипервизоров или механизмов контейнеров и виртуальных разделов (например, виртуальных машин или контейнеров). Сеть может вычислить вектор признаков, включая атрибуты заголовка пакета и дополнительные атрибуты, чтобы представить первый поток. Сеть может сравнивать вектор признаков первого потока с соответствующими векторами признаков других потоков, чтобы определить применимую политику и применять эту политику для последующих потоков.
[0003] Однако известному решению присущи недостатки. В числе недостатков известного решения имеется низкая точность обработки сетевого трафика (потоков данных), высокий уровень ошибок при принятии решений посредством использования политик принятия решений (безопасности) и правил обработки трафика. Также в числе недостатков имеется низкий уровень таргетированности обработки сетевого трафика (потоков данных), поскольку в известном решении при обработке используются лишь признаки уровней L2-L4.
Раскрытие изобретения:
[0004] Задачей изобретения является устранение указанных выше недостатков.
[0005] Техническим результатом при этом является повышение точности обработки сетевого трафика (потоков данных) с одновременным снижением ошибок при принятии решений посредством использования политик принятия решений (безопасности) и правил обработки трафика.
[0006] Дополнительным техническим результатом является повышение таргетированности обработки сетевого трафика (потоков данных) с одновременной реализацией политик сетевой безопасности при сохранении и/или повышении скорости обработки обработки трафика за счет использования признаков не только уровней L2-L4, а в целом уровней L2-L7.
[0007] В соответствии с заявленным изобретением предложена система управления потоками данных, содержащая: контроллер 102 управления коммуникационным процессором 101, выполненный с возможностью передачи команд для формирования потоков, контролируемых признаками уровней L2-L4 сетевого пакета, коммуникационному процессору 101, передачи метаданных потоков блоку 104 принятия решений, а также возможностью приема пакетов сетевого трафика от коммуникационного процессора 101 с возможностью их обработки и возврата на коммуникационный процессор 101 для передачи в один из N сетевых интерфейсов, где N > 0 и целое число, а метаданные потоков являются данными статистики использования потоков в реальном времени; коммуникационный процессор 101, выполненный с возможностью: приема сетевого трафика от N сетевых интерфейсов, где N > 0 и целое число; создания копии пакетов упомянутого сетевого трафика для их дальнейшей передачи блоку 103 анализа признаков; проверки совпадения признаков уровней L2-L4 принятого от сетевых интерфейсов сетевого пакета и признаков, указанных в заданных на процессоре правилах протокола управления процессом обработки данных OpenFlow, при этом при совпадении признаков уровней L2-L4 к пакету применяется наиболее приоритетное правило для обработки, где под наиболее приоритетным правилом для обработки подразумевается правило с наивысшим значением приоритета, указанным в свойствах правила, и пакет перенаправляется, с одновременным изменением служебных полей признаков уровней L2-L4 по заданным алгоритмам в упомянутом правиле, в один из N сетевых интерфейсов, а в случае отсутствия совпадений перенаправляет копию пакета блоку 102 контроллера; блок 103 анализа признаков сетевого пакета, выполненный с возможностью сигнатурного анализа копий пакетов, принятых от коммуникационного процессора 101 и передачи результатов анализа блоку 104 принятия решений, где сигнатурный анализ анализирует копии пакетов посредством анализа всех уровней L2-L7 полей пакета, включая поля полезной нагрузки, на предмет их соответствия признакам протоколов уровней L2-L7 сетевой модели стека сетевых протоколов OSI/ISO и/или на предмет выявления попытки эксплуатации той или иной уязвимости оконечного устройства (адресата или передатчика пакета) на уровнях L2-L7; блок 104 принятия решений, выполненный с возможностью приема результатов анализа от блока 103 анализа признаков и сопоставления политик безопасности и сетевой связанности, приема проанализированных данных и информации служебных полей пакета уровней L2-L4, при этом в результате сопоставления блок 104 принятия решений формирует набор правил обработки трафика и передает сформированные правила контроллеру 102 управления коммуникационным процессором 101, где каждому правилу присваивается время жизни правила (TTL), где под временем жизни подразумевается время, в течении которого действительно правило обработки трафика, при этом политика принятия решений заключается в наборе предикатов, определяющих необходимость принятия решения о блокировке трафика по признакам уровней L2-L4 или отсутствия таковой блокировки или применения дополнительных правил маршрутизации пакета, при этом блок 104 выполнен с возможностью учета метаданных потоков при принятии решений; блок 105 формирования политик, выполненный с возможностью хранения и формирования политик принятия решений и передачи упомянутых политик в блок 104 принятия решений; и блок 106 пользовательского интерфейса, выполненный с возможностью отображения пользователю метаданных данных, принятых от блока 104 принятия решений, и с возможностью изменения и/или передачи данных, определяющих политики безопасности блоку 105 формирования политик.
[0008] Дополнительно система включает MITM-модуль, предназначенный для обеспечения возможности сигнатурного анализа зашифрованной на транспортном уровне полезной нагрузки сетевых пакетов посредством предварительной расшифровки данных, зашифрованных согласно требований протокола шифрования транспортного уровня TLS или протокола шифрования прикладного уровня SSH, и принимающий копии пакетов от коммуникационного процессора 101 и передающий пакеты после вышеуказанной расшифровки блоку 103 анализа признаков.
[0009] Дополнительно система включает транслятор среднего уровня между контроллером и процессором, предназначенный для трансляции правил формирования потоков, заданных по протоколу OpenFlow, в машинные команды коммуникационного процессора.
[0010] Очевидно, что как предыдущее общее описание, так и последующее подробное описание даны лишь для примера и пояснения и не являются ограничениями данного изобретения.
Краткое описание чертежей:
[0011] Фиг. 1 – схематичное изображение заявленной системы управления потоками данных.
Осуществление изобретения:
[0012] Схематическое изображение заявленной системы 100 управления потоками данных показано на рисунке (Фиг. 1). Система 100 содержит N сетевых интерфейсов, коммуникационный процессор 101, контроллер 102 управления коммуникационным процессором, блок 103 анализа признаков сетевого пакета, блок 104 принятия решений, блок 105 формирования политик и блок 106 пользовательского интерфейса.
[0013] В качестве устройства, обеспечивающего физическую и/или логическую реализацию сетевых интерфейсов, в контексте заявленной системы, могут использоваться аппаратные, программно-аппаратные и программные SDN-коммутаторы, маршрутизаторы, концентраторы и т.д.
[0014] Коммуникационный процессор 101 обеспечивает прием сетевого трафика от N сетевых интерфейсов, где N > 0 и целое число, создания копии пакетов упомянутого сетевого трафика для их дальнейшей передачи блоку 103 анализа признаков, проверку совпадения признаков уровней L2-L4 принятого от сетевых интерфейсов сетевого пакета и признаков, указанных в заданных на процессоре правилах протокола управления процессом обработки данных OpenFlow. В зависимости от заданных правил зеркалирования перенаправляет копию пакета на блок 103 анализа трафика. При совпадении признаков уровней L2-L4 к пакету применяется наиболее приоритетное правило для обработки, где под наиболее приоритетным правилом для обработки подразумевается правило с наивысшим значением приоритета, указанным в свойства правила, и пакет перенаправляется, с одновременным изменением служебных полей признаков уровней L2-L4 по заданным алгоритмам в упомянутом правиле, в один из N сетевых интерфейсов. В случае отсутствия совпадений перенаправляет «по умолчанию» копию пакета блоку 102 контроллера.
[0015] Блок 103 анализа признаков сетевого пакета выполнен с возможностью сигнатурного анализа копий пакетов, принятых от коммуникационного процессора 101 и передачи результатов анализа блоку 104 принятия решений. Сигнатурный анализ анализирует копии пакетов посредством анализа всех уровней L2-L7 полей пакета, включая поля полезной нагрузки и служебные поля, на предмет их соответствия признакам протоколов уровней L2-L7 сетевой модели стека сетевых протоколов OSI/ISO и/или на предмет выявления попытки эксплуатации той или иной уязвимости оконечного устройства на уровнях L2-L7. Таким образом, блок 103 выполняет анализ на соответствие набору сигнатур, обычно включающему несколько десятков тысяч сигнатур, определяя соответствие пакета одной или нескольким сигнатурам. По результатам сигнатурного анализа определяется, что пакет относится к информационному потоку, обеспечивающему передачу данных по определенным протоколам уровней L5-L7 и/или пакет свидетельствует о потенциальной попытке эксплуатации той или иной уязвимости оконечного устройства. Результаты работы блока 103 анализа трафика (данные о срабатывании сигнатур) передаются в блок 104 принятия решений.
[0016] Блок 104 принятия решений выполнен с возможностью приема результатов анализа от блока 103 анализа признаков и сопоставления политик безопасности и сетевой связнности, приема проанализированных данных и информации служебных полей пакета уровней L2-L4, при этом в результате сопоставления блок 104 принятия решений формирует набор правил обработки трафика и передает сформированные правила контроллеру 102 управления коммуникационным процессором 101, где каждому правилу присваивается время жизни правила (TTL; время действия – от секунд до постоянного действия), где под временем жизни подразумевается время, в течении которого действительно правило обработки трафика, при этом политика принятия решений заключается в наборе предикатов, определяющих необходимость принятия решения о блокировке трафика по признакам уровней L2-L4 или отсутствия таковой блокировки или применения дополнительных правил маршрутизации пакета, при этом блок 104 выполнен с возможностью учета метаданных потоков при принятии решений. Например, правило маршрутизации потокового видео будет иметь TTL 5 минут (чуть больше средней длины ролика на Youtube), а правило запрета – несколько секунд (из-за динамического выбора портов на стороне защищаемой сети большая длительность не имеет смысла). Таким образом, блок 104 принятия решений сопоставляет политики и данные о срабатывании сигнатур, получая, при необходимости дополнительные данные, необходимые для формирования предикатов, от служебных источников сетевой идентификации (например, контроллера AD). Упомянутые правила транслируются в коммуникационный процессор и применяются в дальнейшем к другим пакетам этих сессий, где под сессией понимается соединение транспортного уровня «хост:порт-хост:порт»
[0017] Блок 105 формирования политик выполнен с возможностью хранения и формирования политик принятия решений и передачи упомянутых политик в блок 104 принятия решений.
[0018] Блок 106 пользовательского интерфейса выполнен с возможностью отображения пользователю метаданных данных, принятых от блока 104 принятия решений. Также блок 106 обеспечивает изменение и/или передачу данных, определяющих политики безопасности, блоку 105 формирования политик.
[0019] Также система 100 управления потоками данных может содержать MITM-модуль (англ. Man in the middle; не показан на фиг.). MITM-модуль обеспечивает возможность сигнатурного анализа зашифрованной на транспортном уровне полезной нагрузки сетевых пакетов посредством предварительной расшифровки данных, зашифрованных согласно требований протокола шифрования транспортного уровня TLS или протокола шифрования прикладного уровня SSH, путем приема копии пакетов от коммуникационного процессора 101 и передачи пакетов после вышеуказанной расшифровки блоку 103 анализа признаков.
[0020] Также система 100 управления потоками данных может содержать транслятор среднего уровня между контроллером и процессором, предназначенный для трансляции правил формирования потоков, заданных по протоколу OpenFlow, в машинные команды коммуникационного процессора.
[0021] Хотя данное изобретение было показано и описано со ссылкой на определенные варианты его осуществления, специалистам в данной области техники будет понятно, что различные изменения и модификации могут быть сделаны в нем, не покидая фактический объем изобретения.