Способ защиты информационно-вычислительной сети от вторжений
Изобретение относится к вычислительной техники, а в частности к способам защиты информационно-вычислительной сети от вторжений. Технический результат заключается в повышении безопасности информационно-вычислительной сети при вторжениях за счет того, что используют шлюз, который будет позволять данным проходить только в одном направлении – от устройств автономных систем (АС) в сегмент сети за пределами шлюза, но не наоборот и возможности настраивать правила доступа к устройствам АС и используемые конфигурации безопасности. 8 ил.
ОБЛАСТЬ ТЕХНИКИ
[001] Данное решение относится в общем к вычислительной области техники, а в частности к способам защиты информационно-вычислительной сети от вторжений.
УРОВЕНЬ ТЕХНИКИ
[002] Сетевые протоколы TCP / IP (например, протокол управления передачей (TCP) и Интернет-протокол (IP)) были разработаны для создания больших, отказоустойчивых, надежных и устойчивых сетей.
[003] Однако такие протоколы изначально не были разработаны с учетом требований безопасности.
[004] Последующие разработки расширили такие протоколы, чтобы обеспечить безопасную связь между одноранговыми узлами (например, безопасный интернет-протокол (IPsec)), но сами сети остаются уязвимыми для атак (например, атак распределенного отказа в обслуживании (DDoS)).
[005] Как и любая сеть, сеть АС, соединяющая разнообразные устройства, является уязвимой к разного рода атакам со стороны злоумышленника. Примерами таких атак могут быть получение контроля над устройствами АС, например исполнительными элементами, или получение неправомерного доступа к данным относительно протекающих в АС технических процессов. Одним из способов защиты сети АС является создание приватной сети, доступ которой можно осуществить только с устройств, находящихся в физических пределах некоторой области. Однако полностью ограничить таим образом сеть АС - не лучшее решение, особенно, когда необходимо иметь удаленный доступ к некоторым потокам данных, формируемым устройствами АС.
[006] Альтернативным решением проблемы защиты устройств в сети АС будет являться использование шлюза, который будет выполнять функцию «диода данных», т.е. будет позволять данным проходить только в одном направлении - от устройств АС в сегмент сети за пределами шлюза, но не наоборот.
[007] Из уровня техники известно техническое решение GB 2558055 A «Publishing data across a data diode for secured process control communications)) (патентообладатель: Fisher Rosemount Systems Inc, опубликовано: 2018-07-04) в котором описана реализация такого «диода» при помощи нескольких шлюзов, один из которых является пограничным для сети АС, а другой обладает возможностью только передавать данные первому, но не принимать данные от него. Такая реализация «диода данных» обладает недостатком, связанным со сложностью конфигурирования такой схемы в случае внесения каких-либо изменений в конфигурацию безопасности - набора требований, соблюдение которых обеспечит требуемый уровень безопасности для устройств АС. Таким образом, необходим подход, который бы и защищал устройства АС, и позволял бы легко настраивать правила доступа к устройствам АС и используемые конфигурации безопасности.
[008] Настоящее изобретение призвано преодолеть существующие недостатки известных подходов к защите сети АС и обеспечить безопасность устройств этой АС.
СУЩНОСТЬ ТЕХНИЧЕСКОГО РЕШЕНИЯ
[009] Технической проблемой или технической задачей, решаемой в данном техническом решении, является осуществление способа и системы защиты информационно-вычислительной сети от вторжений.
[0010] Техническим результатом, достигаемым при решении вышеуказанной технической проблемы, является повышение безопасности информационно-вычислительной сети при вторжениях.
[0011] Указанный технический результат достигается благодаря осуществлению способа защиты информационно-вычислительной сети от вторжений, выполняемым по меньшей мере одним вычислительным устройством и в котором на каждом шлюзе безопасности из множества шлюзов безопасности, взаимодействующих в точках пиринга с множеством различных автономных систем (АС) сетей, осуществляют прием этим шлюзом безопасности множества пакетов; определяют возникло ли состояние перегрузки по меньшей мере в одной сети, связанной со шлюзом безопасности, посредством применения алгоритма машинного обучения, причем если существует состояние перегрузки, применяют шлюзом безопасности первую группу правил фильтрации по меньшей мере к некоторой первой принятой части множества пакетов, причем правила содержат по меньшей мере один кортеж, указывающий на первый набор пакетов; осуществляют смягчение условий перегрузки посредством запрета конечным точкам, подозреваемым в размещении ботов, доступа в Интернет; определяют возникло ли смягчение условий перегрузки, причем если да, то применяют шлюзом безопасности вторую группу правил фильтрации по меньшей мере ко второй принятой части множества пакетов, которая содержит, по меньшей мере, один кортеж, указывающий на второй набор пакетов от множества пользователей, содержащих данные по меньшей мере для одного интернет-приложения, которому разрешено продолжать движение к их соответствующим адресатам, при этом множество пользователей коммуникативно связаны с множеством различных сетей АС, при этом применение второй группы правил фильтрации включает разрешение, по меньшей мере, второй части множества пакетов, попадающих во второй набор пакетов от множества пользователей, для передачи к их соответствующим адресатам.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[0012] Настоящее изобретение конкретно указано в прилагаемой формуле. Особенности изобретения станут более очевидными при рассмотрении этого описания в целом, включая чертежи, представленные здесь.
[0013] Некоторые особенности здесь проиллюстрированы в качестве примера, а не в качестве ограничения, на чертежах сопроводительных чертежей, на которых одинаковые ссылочные позиции относятся к аналогичным элементам.
[0014] Фиг. 1 иллюстрирует примерную сетевую среду, в которой могут быть реализованы один или несколько аспектов раскрытия.
[0015] Фиг. 2 иллюстрирует примерную сетевую среду со шлюзами безопасности пакетов, расположенными на границах сети АС, такими как точки пиринга и точки доступа абонента в Интернет.
[0016] Фиг. 3 иллюстрирует примерную политику фильтрации пакетов, которая может выполняться шлюзом безопасности пакетов, расположенным в точке пиринга.
[0017] Фиг. 4 иллюстрирует примерную политику фильтрации пакетов, которая может выполняться шлюзом безопасности пакетов, расположенным в точке доступа в Интернет.
[0018] Фиг. 5 иллюстрирует примерную политику фильтрации пакетов, которая может выполняться шлюзом безопасности пакетов и которая может позволить определенным пользователям или определенным Интернет-приложениям обмениваться данными.
[0019] Фиг. 6 иллюстрирует примерную сетевую среду со шлюзами безопасности пакетов, расположенными на границах сети АС, такими как точки пиринга и точки доступа абонента в Интернет, индивидуального ISP, который обеспечивает защиту своих подписчиков.
[0020] Фиг. 7 иллюстрирует примерный способ защиты сети от условий перегрузки, позволяя определенным пользователям и Интернет-приложениям обмениваться данными по сети.
[0021] Фиг. 8 иллюстрирует примерный шлюз безопасности пакетов.
ПОДРОБНОЕ ОПИСАНИЕ ИЗОБРЕТЕНИЯ
[0022] В нижеследующем описании различных иллюстративных вариантов осуществления сделана ссылка на сопроводительные чертежи, которые составляют его часть и на которых в качестве иллюстрации показаны различные варианты осуществления, в которых аспекты раскрытия могут быть реализованы на практике. Следует понимать, что могут использоваться другие варианты осуществления, а также могут быть выполнены структурные и функциональные модификации, не выходящие за рамки объема настоящего раскрытия.
[0023] Различные соединения между элементами раскрыты ниже в следующем описании.
[0024] Эти соединения являются общими и, если не указано иное, могут быть прямыми или косвенными, проводными или беспроводными. В этом отношении описание не ограничивается.
[0025] Ниже будут подробно рассмотрены термины и их определения, используемые в описании технического решения.
[0026] В данном изобретении под системой подразумевается компьютерная система, ЭВМ (электронно-вычислительная машина), ЧПУ (числовое программное управление), ПЛК (программируемый логический контроллер), компьютеризированные системы управления и любые другие устройства, способные выполнять заданную, четко определенную последовательность операций (действий, инструкций), централизованные и распределенные базы данных, смарт-контракты.
[0027] Под устройством обработки команд подразумевается электронный блок либо интегральная схема (микропроцессор), исполняющая машинные инструкции (программы), смарт-контракт, виртуальная машина Ethereum (EVM) или подобное. Устройство обработки команд считывает и выполняет машинные инструкции (программы) с одного или более устройства хранения данных. В роли устройства хранения данных могут выступать, но, не ограничиваясь, жесткие диски (HDD), флеш-память, ПЗУ (постоянное запоминающее устройство), твердотельные накопители (SSD), оптические приводы.
[0028] Программа - последовательность инструкций, предназначенных для исполнения устройством управления вычислительной машины или устройством обработки команд.
[0029] Пиринг - соглашение интернет-операторов об обмене трафиком между своими сетями, а также техническое взаимодействие, реализующее указанное соглашение. Он может осуществляться по схеме «точка-точка» между двумя сетями, либо через точку обмена трафиком, где множество провайдеров обмениваются трафиком.
[0030] Шлюз безопасности (англ. security gateway), далее «шлюз» - точка соединения между сетями, между сегментами сетей или между программными приложениями в различных доменах безопасности, предназначенная для защиты сети в соответствии с существующей политикой безопасности (ГОСТ Р ИСО/МЭК 27033-1-2011). В рамках заявленного изобретения под шлюзом будем пониматься вычислительно устройство, соединяющее сегменты сетей, где одной из таких сетей является сеть, соединяющая устройства АС. Шлюз представляет собой физический сервер. На практике, множество шлюзов может быть объединено в кластер шлюзов при необходимости. Один виртуальный IP адрес (именуемый для краткости «vip») присваивается шлюзам в каждом кластере шлюзов, то есть, каждый шлюз в кластере шлюзов соответствует одному и тому же vip, причем каждый шлюз в кластере шлюзов имеет свой собственный IP адрес, отличный от упомянутого выше vip.
[0031] Фиг. 1 иллюстрирует примерную сетевую среду, в которой могут быть реализованы один или несколько аспектов настоящего изобретения. Обращаясь к Фиг. 1, сетевая среда 100 может быть сетевой средой TCP / IP (например, сетью Интернет).
[0032] Сетевая среда 100 может включать в себя сети 101, 102, 103, 104, 105, 106, 107 и 108 автономных систем (АС). Сети 101-108 АС могут принадлежать или управляться различными поставщиками услуг Интернета. Сети АС 101-108 могут функционировать как транзитные сети (например, они могут не иметь подключенных к ним конечных точек с Интернет-адресацией и, следовательно, не могут заканчивать какие-либо потоки пакетов, генерируемые Интернет-приложениями). Например, пакеты, которые входят в одну или несколько сетей АС 101-108, также могут выходить из сети АС.
[0033] Межсетевые соединения между любыми двумя сетями АС 101-108 могут быть точками пиринга (например, канал между сетью АС 101 и сетью АС 107 может быть точкой пиринга).
[0034] Сети 110, 111, 112, 113, 114 и 115 могут принадлежать или управляться различными предприятиями. Одна или несколько сетей 110-115 могут быть или не быть сетью автономной системы. Одна или несколько сетей 110-115 могут не быть транзитной сетью и могут быть частной (непубличной) сетью и, следовательно, могут не предоставлять услуги Интернета (например, организация, владеющая или эксплуатирующая одну или несколько сетей 110-115, может не быть Интернет-провайдером). Одна или несколько конечных точек (не показаны на Фиг. 1), такие как настольные компьютеры, серверы, телефоны и т.д., могут быть связаны с этими предприятиями и могут быть подключены к одной или нескольким сетям 110-115. Такие конечные точки могут содержать экземпляры различных Интернет-приложений, таких как веб-серверы и веб-клиенты (например, веб-браузеры), серверы и клиенты обмена текстовыми сообщениями, системы IP-телефонии и т.д.
[0035] Владелец или оператор одной или нескольких сетей 110-115 могут хотеть, чтобы конечные точки, подключенные к их сети, могли связываться с другими конечными точками, подключенными к другой из сетей 115. Например, владелец или оператор сети 110 может захотеть разрешить конечной точке, подключенной к сети 110, связываться с конечной точкой, подключенной к сети 115, которая может принадлежать или управляться другой организацией, нежели организация, которая владеет или эксплуатирует сеть 110. Для обеспечения такой межсетевой связи между сетями 110-115 владельцы или операторы сетей 110-115 могут подписаться на одного или более Интернет-провайдеров. Интернет-провайдер может подключить одну или несколько своих сетей к сети абонента. Например, ISP, который владеет или управляет сетью АС 103, может соединить сеть 103 с сетью 112, которая может принадлежать или эксплуатироваться организацией, которая подписалась на ISP. Соединения между абонентскими сетями и сетями ISP, такие как соединение между сетью 112 и сетью 103, могут быть точками доступа в Интернет.
[0036] Интернет-провайдеры могут устанавливать маршрутизаторы, поддерживающие протокол управления граничным шлюзом (BGP), называемые маршрутизаторами BGP, на границах своих сетей АС. Маршрутизатор BGP может знать, какие IP-адреса могут быть достигнуты через его интерфейсы.
[0037] Если для подключения к интернету используется несколько провайдеров, то необходимо указать несколько шлюзов. Пример настройки сети с двумя провайдерами:
[0038] Интерфейс port1 с IP-адресом 192.168.11.2 подключен к Интернет-провайдеру 1. Для выхода в Интернет с этого провайдера необходимо добавить шлюз с IP-адресом 192.168.11.1
[0039] Интерфейс port2 с IP-адресом 192.168.12.2 подключен к Интернет-провайдеру 2. Для выхода в интернет с этого провайдера необходимо добавить шлюз с IP-адресом 192.168.12.1
[0040] При наличии двух или более шлюзов возможны 2 варианта работы:
[0041] Балансировка трафика между шлюзами. Установить флажок балансировка и указать вес каждого шлюза. В этом случае весь трафик в Интернет будет распределен между шлюзами в соответствии с указанными весами (чем больше вес, тем большая доля трафика идет через шлюз).
[0042] Основной шлюз с переключением на запасной. Выбрать один из шлюзов в качестве основного и настроить проверку сети, нажав на одноименную кнопку в интерфейсе. Проверка сети проверяет доступность хоста в Интернет с указанной в настройках периодичностью, и в случае, если хост перестает быть доступен, переводит весь трафик на запасные шлюзы в порядке их расположения в консоли.
[0043] По умолчанию проверка доступности сети настроена на работу с публичным DNS-сервером Google (8.8.8.8), но может быть изменена на любой другой хост по желанию администратора.
[0044] Состояние шлюза (доступен - зеленый, не доступен - красный) определяется следующим образом:
[0045] Проверка сети отключена. Шлюз считается доступным, если могут получить его МАС-адрес с помощью ARP-запроса. Проверка наличия доступа в Интернет через этот шлюз не производится. Если МАС-адрес шлюза не может быть определен, шлюз считается недоступным.
[0046] Проверка сети включена. Шлюз считается доступным, если: могут получить его МАС-адрес с помощью ARP-запроса, проверка наличия доступа в Интернет через этот шлюз завершилась успешно. В противном случае шлюз считается недоступным.
[0047] Используя протокол BGP, BGP маршрутизатор может анонсировать информацию о своей доступности одному или нескольким маршрутизаторам BGP, расположенным на границе разных сетей АС. Например, маршрутизатор BGP может анонсировать другой протокол BGP. Данный маршрутизатор BGP может не связываться с любым другим маршрутизатором BGP в Интернете. Маршрутизатор BGP может использовать информацию о доступности, полученную от других маршрутизаторов BGP, для вычисления локальной таблицы маршрутизации. Таблица маршрутизации маршрутизатора может содержать записи, которые связывают IP-адрес с одним из сетевых интерфейсов маршрутизатора. Когда маршрутизатор получает пакет, он может найти IP-адрес назначения пакета в таблице маршрутизации, а затем переслать пакет через сетевой интерфейс, указанный в записи таблицы маршрутизации. Сетевой интерфейс сам может быть подключен к сетевому интерфейсу (например, входящему сетевому интерфейсу) другого маршрутизатора, который может повторять процесс поиска и пересылки. В конце концов, пакет может достичь конечной точки назначения.
[0048] Использование протокола BGP может иметь решающее значение для включения службы маршрутизации пакетов в сети. В одной или нескольких реализациях маршрутизатора BGP протокол BGP также может использоваться для определения того, работают ли одноранговые маршрутизаторы BGP, например, с помощью сообщений KEEPALIVE. Если маршрутизатор BGP не получает ответ KEEPALIVE от однорангового маршрутизатора BGP (например, после настроенного периода времени ожидания), то BGP маршрутизатор может определить, что одноранговый маршрутизатор BGP больше не работает, и может прекратить пересылку пакетов на одноранговый маршрутизатор BGP. Соответственно, чтобы сеть, такая как Интернет, могла предоставлять свою услугу маршрутизации пакетов, может потребоваться поддержание связи по протоколу BGP между одноранговыми маршрутизаторами BGP.
[0049] Интернет-приложения могут представлять машиночитаемые IP-адреса конечных точек (например, 173.194.75.103) с использованием удобочитаемых доменных имен (например, www.google.com). Когда экземпляр Интернет-приложения отправляет пакеты через Интернет в конечную точку, пакеты могут потребовать, чтобы они содержали IP-адрес конечной точки в IP-адресе назначения. Интернет-приложение может знать доменное имя конечной точки назначения, но может не знать ее IP-адрес. Экземпляр интернет-приложения может отправить запрос в систему доменных имен (DNS) для преобразования имени домена в IP-адрес, и DNS может ответить на запрос IP-адресом, соответствующим доменному имени. DNS может быть набором серверов, распределенных по Интернету, которые преобразуют доменные имена в IP-адреса. DNS и конечные точки, использующие DNS, могут использовать протокол DNS для взаимодействия. Хотя Интернет может не требовать, чтобы DNS предоставляла свою службу маршрутизации пакетов, и хотя теоретически Интернет-приложениям может не потребоваться DNS для взаимодействия, на практике DNS может иметь решающее значение для функции и работы многих Интернет-приложений.
[0050] Протокол сетевого времени (NTP) - это протокол для синхронизации часов между компьютерными системами, подключенными к сети TCP / IP (например, Интернет). NTP может быть архитектурно подобен DNS в том, что может существовать иерархический набор часов и связанных серверов, распределенных по Интернету, к которым могут иметь доступ компьютерные системы. Интернет-приложения могут зависеть от синхронизированного времени для правильной работы. Таким образом, возможно, потребуется поддерживать связь по протоколу NTP между серверами времени и Интернет-приложениями.
[0051] Могут существовать другие системы и протоколы, связанные с сетью, которые, возможно, должны быть функциональными или эффективно взаимодействовать, чтобы сеть или одно или несколько важных сетевых приложений функционировали правильно.
[0052] Условия перегрузки могут возникнуть в сети (например, в Интернете) при возникновении любого из нескольких сценариев. Один сценарий может заключаться в том, что многие пользователи, которые могут быть широко распределены по сети, запрашивают услуги (например, загрузки веб-страниц) из одного и того же ресурса (например, сервера веб-приложений) или из набора ресурсов, которые подключены к той же подсети. Например, многие пользователи, выполняющие клиенты Интернет-приложений (например, веб-браузеры), размещенные на конечных точках, подключенных к сетям 110-114, могут запрашивать обслуживание у сервера Интернет-приложений (например, сервера веб-приложений), подключенного к сети 115, во время того же небольшого временного окна. Поскольку пакеты, содержащие запросы, проходят через Интернет и сходятся в сети 115 или на конечном сервере приложений Интернета, объем совокупного пакетного трафика может превышать пропускную способность одного или нескольких сетевых элементов (например, маршрутизаторов, коммутаторов, сетевых каналов, шлюзов и т.д.), которые расположены рядом с сервером Интернет-приложений или непосредственно перед ним. Очереди конечных пакетов, содержащиеся в различных сетевых элементах, могут переполняться, вызывая отбрасывание пакетов. Соответственно, один или несколько запросов, содержащихся в отброшенных пакетах, могут не обслуживаться сервером Интернет-приложений (например, запрашивающим пользователям и приложениям может быть отказано в обслуживании из-за состояния перегрузки).
[0053] Также может случиться так, что даже если входящие запросы не вызывают состояние перегрузки, объем пакетов, содержащих ответы на запросы, может вызвать состояние перегрузки, например, в сетевых элементах, расположенных непосредственно ниже по потоку от сервера Интернет-приложений. Например, этот сценарий может иметь место, когда Интернет-приложение асимметрично (например, когда средний размер ответов в байтах превышает средний размер запросов). Даже если все запросы могли быть должным образом обслужены сервером Интернет-приложений, некоторые пакеты, содержащие ответы, могли быть отброшены. Таким образом, с точки зрения лиц, запрашивающих услуги, в обслуживании может быть отказано, поэтому что они могут никогда не получить ответы на свои запросы.
[0054] В другом сценарии, объем запросов может не вызывать условия перегрузки в сетевых элементах непосредственно перед сервером Интернет-приложений, однако сервер Интернет-приложений может не иметь возможности обработки для обслуживания всех запросов. Например, если мгновенная скорость входящих запросов превышает скорость обслуживания сервера Интернет-приложений, запросы могут быть поставлены в очередь. Если избыточное состояние сохраняется в течение достаточного периода времени, очередь запросов может переполняться, вызывая отбрасывание некоторых запросов, тем самым отказывая в обслуживании пользователям, которые отправили отброшенные запросы.
[0055] Состояния перегрузки также могут быть вызваны одним или несколькими вредоносными агентами. Состояние перегрузки, вызванное вредоносными агентами, может быть DoS-атакой. В DoS-атаке, логическая сеть или ботнет вредоносных агентов или ботов может генерировать трафик пакетов атаки, когда так называемый агент управления и контроля направляет пакет для запуска атаки. Ботнеты могут быть созданы, когда злоумышленник может заразить множество конечных точек, распределенных через Интернет, вредоносным ПО, реализующим точки доступа. Бот-сети могут состоять из сотен, тысяч или даже миллионов ботов, которые были идентифицированы в Интернете.
[0056] Сетевая архитектура DoS-атаки может быть аналогична сетевой архитектуре состояния перегрузки, вызванной пользователями. Например, агент ботнета может быть размещен на одной или нескольких конечных точках, подключенных к сетям 110-114. По указанию командно-управляющего агента ботнета боты могут отправлять множество сервисных запросов на сервер интернет-приложений, подключенный к сети 115. Эти злонамеренные сервисные запросы или связанные с ними ответы могут превышать пропускную способность сетевых элементов непосредственно вверх или вниз от сервера Интернет-приложений, или запросы злонамеренных служб могут превышать емкость сервера Интернет-приложений. Соответственно, некоторым обычным пользователям может быть отказано в обслуживании.
[0057] Независимо от причин состояния перегрузки, некоторым пользователям может потребоваться доступ к Интернету или одному или нескольким Интернет-приложениям для их использования во время состояния перегрузки (например, чтобы не было отказано в предоставлении услуг, предоставляемых Интернетом или Интернет-приложениями). Один из подходов к выполнению этого требования может заключаться в предотвращении прохождения пакетов от ненужных пользователей, агентов, конечных точек и Интернет-приложений через Интернет до их соответствующих пунктов назначения, одновременно позволяя пакетам от необходимых пользователей, агентов, конечных точек и Интернет-приложений перемещаться по Интернету и достигать своих пунктов назначения. В одном варианте осуществления такой подход может использовать один или несколько шлюзов безопасности пакетов для различения пакетов, которые должны быть разрешены, и пакетов, которые должны быть заблокированы.
[0058] Фиг. 2 иллюстрирует примерную сетевую среду со шлюзами безопасности пакетов, расположенными на границах сети АС, такими как точки пиринга и точки доступа абонента в Интернет. Обращаясь к Фиг. 2, шлюзы безопасности пакетов (PSG) 200-220 могут быть развернуты в сетевой среде 100 с целью фильтрации требуемых и ненужных пакетов таким образом, чтобы в условиях перегрузки услуги не могли быть запрещены для определенных пользователей, агентов, конечных точек или Интернет-приложения. Шлюзы безопасности пакетов должны быть расположены в граничных точках сетей АС 101-108 и абонентских сетей 110-115 (например, в точках пиринга и точках доступа в Интернет). Во время состояния перегрузки один или несколько шлюзов 200-220 защиты пакетов могут применять одну или несколько политик (например, набор правил фильтрации пакетов), которые могут определять, какой пакетный трафик блокируется, а какой разрешен. Политики, применяемые шлюзами безопасности пакетов, могут изменяться с течением времени, чтобы изменить определение того, какой пакетный трафик блокируется, а какой разрешен. Например, в начале состояния перегрузки объем блокируемого или разрешенного пакетного трафика может быть широким или узким, соответственно, чтобы гарантировать, что большая часть трафика, вызывающего состояние перегрузки, заблокирована, или чтобы гарантировать, что требуемая связь разрешена и полностью поддерживается Интернетом или одним или несколькими связанными Интернет-приложениями. Со временем, по мере того как источники трафика, вызывающие условия перегрузки, выявляются и смягчаются или, возможно, очищаются от вредоносных приложений, таких например как боты, политики могут быть изменены, чтобы сузить объем блокируемого пакетного трафика или расширить объем передаваемого пакетного трафика.
[0059] При обнаружении состояния перегрузки первый набор политик может быть применен шлюзами безопасности пакетов 200-220, чтобы смягчить состояние перегрузки и гарантировать, что некоторые пользователи, конечные точки или Интернет-приложения могут взаимодействовать через сетевую среду 100. Независимо от того, какие интернет-коммуникации пользователей, конечных точек или интернет-приложений поддерживаются этим первым набором политик, между сетевыми элементами и системами может существовать критически важная связь, которая может нуждаться в поддержке для интернет-приложений, чтобы функционировать должным образом. Эти важные коммуникации могут быть разрешены в первом наборе политик и во всех последующих наборах политик. Например, эти сообщения могут включать одно или несколько из следующих: BG связь между одноранговыми маршрутизаторами BGP, расположенными в граничных точках сетей АС, управляемых ISP, и некоторыми абонентскими сетями; связь по протоколу DNS между Интернет-приложениями и DNS-серверами, распределенными по Интернету; и NTP связь между элементами Интернета, приложениями или серверами, распределенными по Интернету. Дополнительно или в качестве альтернативы могут быть другие протоколы, которые считаются критическими. Соответственно, первый набор политик может также поддерживать связь для этих других протоколов.
[0060] Фиг. 3 иллюстрирует примерную политику фильтрации пакетов, которая может выполняться шлюзом безопасности пакетов, расположенным в точке пиринга. Обращаясь к Фиг. 3, политика 300 может содержать одно или несколько представлений правил фильтрации. Например, шлюзы безопасности пакетов могут фильтровать пять (5) полей в IP-пакете: поля IP-адреса источника и пункта назначения, поля порта источника и пункта назначения (например, содержащиеся в инкапсулированном пакете транспортного протокола, если таковой имеется) и протокол (для IP версии 4, как показано) или следующего заголовка (для IP версии 6, не показан). Эти пять полей могут называться «кортежем из пяти».
[0061] Правила фильтрации из пяти кортежей могут указывать значения для любого количества из пяти полей (например, правило фильтрации может фильтровать пакеты только в одном поле, таком как исходный IP-адрес или правило фильтрации может фильтровать любую комбинацию из двух, трех или четырех полей или всех пяти полей). Каждое правило может быть связано с действием по обработке пакета, которым может быть, например, блокирование (например, отбрасывание пакета) или разрешение (например, пересылка пакета к его месту назначения).
[0062] Правила в политике 300 могут разрешать определенные связи по протоколу BGP, по протоколу DIMS и определенная связь по протоколу NTP. Политика 300 может, например, выполняться шлюзом безопасности пакетов, расположенным в точке пиринга между двумя транзитными сетями. Например, шлюз 220 безопасности пакетов может быть расположен в точке пиринга между сетью АС 107 и сетью АС 108. Маршрутизатор BGP (не показан) может быть расположен на каждом конце сетевого канала, соединяющего сеть АС 107 и сеть АС 108. Владелец или оператор сети АС 107 может назначить IP-адрес версии 4 123.56.89.0 сетевому интерфейсу на маршрутизаторе BGP на границе сети АС 107, а владелец или оператор сети АС 108 может назначить IP-адрес версии 4 87.65.21.0 сетевому интерфейсу на маршрутизаторе BGP на границе сети АС 108. Сетевая ссылка может соединять интерфейс 123.56.89.0 с сетевым интерфейсом 87.65.21.0. Эта сетевая ссылка может проходить через шлюз безопасности пакетов 220, но, поскольку сетевые интерфейсы шлюза безопасности пакетов 220 могут не иметь назначенных им IP-адресов, шлюз 220 безопасности пакетов может быть прозрачным для маршрутизаторов BGP.
[0063] Правило 1301 политики 300 может разрешать пакеты BGP, отправляемые клиентом BGP с сетевого интерфейса 123.56.89.0 и с любого исходного порта (как обозначено символом подстановки «*») на сетевой интерфейс 87.65.21.0 и порт 179 (например, порт, связанный с прослушивателем BGP или сервером BGP). Правило 2 302 может разрешить клиенту BGP отправку пакетов BGP с сетевого интерфейса 87.65.21.0 и с любого исходного порта на сетевой интерфейс 123.56.89.0 и порт 179. Правило 3 303 и правило 4 304 могут соответственно разрешать пакеты, содержащие ответы на любые запросы или сообщения, содержащиеся в пакетах, разрешенные правилом 2 302 или правилом 1 301 для отправки обратно их запрашивающим. BGP может использовать TCP в качестве транспортного протокола, соответственно, значение поля протокола в правилах 1-4 301-304 может быть установлено на TCP.
[0064] Правило 5 305 и правило 6 306 могут разрешать пакетам протокола DNS проходить через шлюз 220 безопасности пакетов. Правила 5 305 и 6 306 могут не включать ограничения на исходные IP-адреса и IP-адреса назначения. Например, потому что DNS-клиенты и DNS серверы могут быть расположены в абонентских сетях, подключенных к границе сетевой среды 100 (например, сети 110-115), правила фильтрации пакетов применяются шлюзом безопасности пакетов, расположенным в точке пиринга между двумя транзитными сетями (например, шлюзом 220 безопасности пакетов, расположенным между транзитными сетями 107 и 108) могут не иметь ограничений на IP-адреса источника и назначения пакетов протокола DNS (например, потому что потенциально любая пара клиентов и серверов DNS может обмениваться данными через точку пиринга). Правило 5 305 может разрешать пакеты, содержащие запрос любого DNS-клиента и предназначенные для любого DNS-сервера, который может прослушивать запросы на одном или нескольких портах (например, на порте 53). Правило 6 306 может разрешать пакеты, содержащие DNS ответы сервера на любые запросы, содержащиеся в пакетах, разрешенных правилом 5 305. DNS протокол может передаваться с использованием TCP или протокола пользовательских дейтаграмм (UDP). Соответственно, поле протокола в правиле 5 305 и правиле 6 306 может допускать любое значение. Правило 7 307 и правило 8 308 могут разрешать пакетам протокола NTP проходить через шлюз безопасности пакетов 220. Подобно DNS, клиенты NTP и серверы NTP могут быть расположены в абонентских сетях, подключенных к границе сетевой среды 100 (например, сети 110-115). Таким образом, правила фильтрации пакетов, применяемые шлюзом безопасности пакетов, расположенным в точке пиринга между двумя транзитными сетями (например, шлюз безопасности пакетов 220, расположенный между транзитными сетями 107 и 108), могут не иметь ограничений на IP-адреса источника и назначения пакетов протокола NTP, потому что потенциально любая пара NTP клиента и сервера могут обмениваться данными через точку пиринга. Правило 7 307 может разрешить пакеты, содержащие запрос любого клиента NTP и предназначенные для любого NTP сервера, который может прослушивать запросы на одном или нескольких портах (например, 123). Правило 8 308 может разрешать пакеты, содержащие ответы сервера NTP, на любые запросы, содержащиеся в пакетах, разрешенных правилом 7 307. NTP может использовать UDP в качестве своего транспортного протокола. Соответственно, поле протокола в правиле 7 307 и правиле 8 308 может быть установлено на UDP. Правило 9 309 может блокировать любой пакет, который не соответствует ни одному из правил 1-8 301-308. Например, шлюз 220 безопасности пакетов может применять правила к пакетам в том порядке, в котором они появляются в политике, которая их содержит. Соответственно, правило 9 309 может блокировать пакеты, которые не соответствуют ни одному из правил 1-8 301-308 (например, один или несколько пакетов, связанных с созданием условия перегрузки).
[0065] Политика 300 может выполняться одним или несколькими шлюзами безопасности пакетов в любой точке пиринга или точки доступа к Интернету в сетевой среде 100. В некоторых вариантах осуществления более строгие правила могут содержаться в политиках, применяемых шлюзами безопасности пакетов, расположенными вблизи границы сетевой среды 100 (например, в точках доступа в Интернет), например, для смягчения или даже устранения условий перегрузки в местах рядом с краем. В одном из типов DoS-атак, известных как атака с открытым преобразователем DNS, бот-сеть может заставить многие DNS-серверы отправлять пакеты на целевой ресурс (например, точки доступа в Интернет абонентской сети или общедоступный веб-сервер электронной коммерции компании), расположенный по адресу. Правило 5 305 и правило 6 306 политики 300 не могут блокировать такие пакеты. Однако в точке доступа в Интернет IP-адреса DNS клиенты и серверы, которые, как ожидается, будут взаимодействовать через точку доступа в Интернет, могут быть известны операторам либо абонентской сети, либо сети Интернет-провайдера, подключенной точкой доступа в Интернет. Правила фильтрации пакетов, которые фильтруют пакеты протокола DNS и определяют конкретные IP-адреса конечных точек DNS в полях их исходных и конечных IP-адресов, могут применяться шлюзами безопасности пакетов, расположенными в точках доступа в Интернет могут блокировать большую часть или все пакеты, сгенерированные атакой открытого DNS-резолвера, тем самым смягчая или устраняя любые условия перегрузки, вызванные такой атакой.
[0066] Фиг. 4 иллюстрирует примерную политику фильтрации пакетов, которая может выполняться шлюзом безопасности пакетов, расположенным в точке доступа в Интернет. Обращаясь к Фиг. 4 правила 10, 401 и 11, 402 могут содержаться в политике 400. Политика 400 может выполняться шлюзом 200 безопасности пакетов, который может быть расположен в точке доступа в Интернет между абонентской сетью 110 и сетью АС 102. Абонентская сеть 110 может выделять IP-адреса версии 4 с префиксом подсети 32.10.87.0/24. DNS-клиенты, подключенные к сети 110, могут направлять все свои DNS-запросы на DNS-сервер с IP-адресом 13.57.92.46, который может быть внешним по отношению к сети 110 и который может считаться доверенным для операторов сети 110. Правило 10 401 может разрешать пакеты, содержащие запросы от клиентов DNS, подключенных к сети 110 и предназначенных для порта 53 к DNS серверу 13.57.92.46. Правило 11 402 может разрешать пакеты, содержащие ответы от DNS-сервера 13.57.92.46 и предназначенные для одного или нескольких DNS-клиентов, подключенных к сети 110.
[0067] Состояние перегрузки может быть в значительной степени уменьшено или даже устранено за счет того, что шлюзы безопасности пакетов 200-220 в сетевой среде 100 применяют первый набор политик, который состоит из политик, подобных политике 300 и политике 400. Этот первый набор политик может тем не менее не позволять одному или нескольким пользователям или их интернет-приложениям обмениваться данными через сетевую среду 100. Например, условия перегрузки могут возникать при большой DoS-атаке или множестве DoS-атак. Состояния перегрузки также могут возникать при широко распространенной чрезвычайной ситуации, когда многие пользователи пытаются получить доступ к одним и тем же ресурсам (например, системе телефонии или новостному веб-сайту). Пока применяется первый набор политик, операторы сети могут предпринимать действия для смягчения или устранения источников пакетов, которые вызвали исходные условия перегрузки. Например, сетевые операторы могут запретить конечным точкам, подозреваемым в размещении ботов, доступ в Интернет или сетевым операторам.
[0068] Для реализации технического решения может потребоваться местное законодательство или нормативные акты, чтобы некоторым пользователям (например, службам быстрого реагирования) гарантировались услуги из Интернета или из определенных Интернет-приложений, несмотря на условия перегрузки. Чтобы обеспечить такие гарантии, второй набор политик может быть реализован одним или несколькими шлюзами безопасности пакетов 200-220 в сетевой среде 100. Эти политики могут содержать все правила, содержащиеся в первом наборе политик, и одно или несколько дополнительных правил, которые позволяют определенным пользователям (например, первым респондентам) или определенным Интернет-приложениям взаимодействовать через сетевую среду 100.
[0069] Например, всем пользователям с конечными точками, подключенными к сети 110, и всем пользователям с конечными точками, подключенными к сети 112, может быть разрешено общаться, используя протокол HTTP, с серверами веб-приложений, подключенными к сети 113. Сетям 110 могут быть выделены IP-адреса версии 4 с префиксом подсети 10.10.87.0/24. Сети 112 могут быть назначены IP-адреса с префиксом подсети 12.12.87.0/24, а сети 113 могут быть назначены IP-адреса с префиксом подсети 13.13.87.0/24.
[0070] Фиг. 5 иллюстрирует примерную политику фильтрации пакетов, которая может выполняться шлюзом безопасности пакетов и которая может позволить определенным пользователям или определенным Интернет-приложениям обмениваться данными. Обращаясь к Фиг. 5, политика 500 может включать в себя одно или несколько правил из политики 300 или политики 400. Политика 500 также может содержать правила 504. Правило 13 501 может разрешать пакеты, полученные от клиентов HTTP (например, веб-браузеров), подключенных к сети 110 и предназначенных для одного или нескольких серверов HTTP (например, один или несколько серверов веб-приложений на порте 80), подключенных к сети 113. Правило 14 502 может разрешать пакеты, полученные от серверов HTTP, подключенных к сети 113 и предназначенные для конечных точек, подключенных к сети 110. Такие пакеты могут, например, содержат ответы на HTTP запросы, отправленные HTTP-клиентами, подключенными к сети 110. Правило 15 503 и правило могут быть аналогичны правилу 13 501 и правилу 14 502, за исключением того, что они могут разрешать пакеты, содержащие запросы клиентов HTTP и ответы сервера HTTP между сетями 112 и 113.
[0071] Состояние перегрузки может быть в значительной степени уменьшено или даже устранено, и некоторым пользователям или определенным Интернет-приложениям может быть разрешено взаимодействовать через сетевую среду 100, если шлюзы безопасности пакетов 200-220 в сетевой среде 100 будут обеспечивать соблюдение правил.
[0072] В некоторых вариантах осуществления может потребоваться, чтобы шлюзы безопасности пакетов были расположены во всех точках пиринга или точках доступа к Интернету в сетевой среде 100. В других вариантах осуществления эта практика может быть ослаблена, при этом все еще обеспечивая защиту от условий перегрузки и в то же время обеспечивая некоторых пользователей и Интернет-приложения с услугами связи. Например, отдельный интернет-провайдер может предложить защиту от условий перегрузки и по-прежнему поддерживать выбранную связь для своих абонентов.
[0073] Фиг. 6 иллюстрирует примерную сетевую среду со шлюзами безопасности пакетов, расположенными на границах сети АС, такими как точки пиринга и точки доступа абонента в Интернет, отдельного ISP, который обеспечивает защиту своих подписчиков. Обращаясь к Фиг. 6, ISP (например, SecureISP) может владеть или управлять сетями АС 102, 103 и 106 в сетевой среде 100. SecureISP может располагать шлюзами безопасности пакетов (например, шлюзы безопасности пакетов 200-207, 210, 213, 214 и 215) на всех пиринговых точках и точках доступа в Интернет своих сетей.
[0074] Состояние перегрузки может возникнуть в сети 113, которая может принадлежать или управляться подписчиком SecureISP. Применяя одну или несколько политик, аналогичных политике 300, в точках пиринга и применяя политики, аналогичные политике 400, в точках доступа в Интернет, SecureISP может устранить или значительно снизить состояние перегрузки в сети 113. Например, независимо от источника пакетный трафик, который вызвал состояние перегрузки (например, любая комбинация конечных точек, подключенных к сетям 110, 111, 112, 114 и 115), трафик может быть отфильтрован политикой, включенной в первый набор политик, потому что трафик может попытаться пройти через один из шлюзов безопасности пакетов, управляемых Secure ISP, при маршрутизации к сети 113. Пока применяется первый набор политик, Secure ISP может предпринимать действия для смягчения или устранения одного или нескольких источников трафика, вызывающих состояние перегрузки. Например, Secure ISP может предпринимать действия по уменьшению или устранению одного или нескольких источников трафика, подключенных к сетям его подписчиков.
[0075] Позже, после применения первого набора политик, Secure ISP может захотеть разрешить всем пользователям с конечными точками, подключенными к сети 110 своего абонента, и всем пользователям с конечными точками, подключенными к сети 112 своего абонента, общаться, используя протокол HTTP, с сервером, подключенные к абонентской сети 113. Сетям 110 могут быть выделены IP-адреса версии 4 с префиксом подсети 10.10.87.0/24. Сетям 112 могут быть выделены IP-адреса с префиксом подсети 12.12.87.0/24. Сетям могут быть выделены IP-адреса с префиксом подсети 13.13.87.0/24. Применяя второй набор политик, аналогичных политике 500, в своих точках пиринга и своих точках доступа в Интернет, Secure ISP может устранить или значительно снизить состояние перегрузки в сети 113, позволяя клиентам HTTP (например, веб-браузерам) подключаться к сетям своих подписчиков 110 и 112 для связи с HTTP-серверами (например, серверами веб-приложений), подключенными к сети 113 своего подписчика.
[0076] В зависимости от политик маршрутизации, используемых в сетевой среде 100, пакетный трафик, генерируемый HTTP-клиентами и HTTP-серверами, подключенными к сетям 110, 112, может потребоваться для прохождения через одну или несколько сетей АС 101, 104, 105, 107, и 108, которые могут не иметь шлюзов безопасности пакетов, расположенных в их точках пиринга и точках доступа в Интернет. Пакетный трафик, генерируемый HTTP-клиентами и HTTP-серверами, подключенными к сети 110, 112 и 113 могут проходить через сети АС, которые также могут транспортировать трафик, который может вызывать условия перегрузки в различных абонентских сетях 110-115.
[0077] Учитывая архитектуру, работу и поведение сетевой среды 100, маловероятно, что одна или несколько сетей АС 101, 104, 105, 107 и 108 сами испытывают условия перегрузки, которые могут нарушить связь между HTTP-клиентами и HTTP-серверами, подключенными к сетям 110, 112 и 113. Соответственно, Secure ISP может предложить своим подписчикам эффективную защиту от условий перегрузки, даже если другие интернет-провайдеры могут не предлагать аналогичную защиту и могут передавать часть или большую часть трафика, который может вызывать условия перегрузки в сетях подписчиков Secure ISP.
[0078] Фиг. 7 иллюстрирует примерный способ защиты сети от условий перегрузки, позволяя определенным пользователям и Интернет-приложениям обмениваться данными по сети. Обращаясь к Фиг. 7, на этапе 702 могут быть приняты пакеты. Например, шлюз 200 безопасности пакетов может принимать пакеты из сети 110. На этапе 704, в ответ на определение того, что произошло состояние перегрузки, первая группа правил фильтрации пакетов может применяться по меньшей мере к некоторым из пакетов. Например, в сети 113 может возникнуть состояние перегрузки, и в ответ на определение того, что произошло условие перегрузки в сети 113, шлюз 200 безопасности пакетов может применить одно или несколько правил 1-9 301-309 политики 300 по меньшей мере к некоторым пакетам, принятым из сети 110. На этапе 706 в ответ на определение того, что условие перегрузки было смягчено, вторая группа правил фильтрации пакетов может применяться по меньшей мере к некоторым из пакетов. Например, в ответ на определение того, что состояние перегрузки в сети 113 было уменьшено, шлюз 200 безопасности пакетов может применить одно или несколько правил 13-16, 501-504, по меньшей мере, к некоторым пакетам, принятым из сети 110.
[0079] Фиг. 8 иллюстрирует примерный шлюз безопасности пакетов. Обращаясь к Фиг. 8, как указано выше, шлюз 220 безопасности пакетов может быть расположен между сетями 107 и 108. Например, шлюз 220 безопасности пакетов может быть расположен на границе сети 802. Шлюз 220 безопасности пакетов может включать в себя один или несколько процессоров 804, память 806, сетевые интерфейсы 808 и 810, фильтр 812 пакетов и интерфейс 814 управления. Процессор (ы) 804, память 806, сетевые интерфейсы 808 и 810, фильтр 812 пакетов и интерфейс 814 управления могут быть взаимосвязаны через шину 816 данных. Сетевой интерфейс 808 может соединять шлюз 220 безопасности пакетов с сетью АС 107. Точно так же сетевой интерфейс 810 может соединять шлюз 220 безопасности пакетов с сетью АС 108. Память 806 может включать в себя один или несколько программных модулей, которые при исполнении процессором (-ами) 804 могут конфигурировать шлюз 220 безопасности пакетов для выполнения одной или нескольких различных функций, описанных в данном документе.
[0080] Шлюз 220 безопасности пакетов может быть сконфигурирован для приема политики (например, одной или нескольких политик 300, 400 или 500) от одного или нескольких серверов управления политиками безопасности (не показаны). Например, шлюз 220 безопасности пакетов может принимать политику 818 от сервера управления политиками безопасности через интерфейс 814 управления (например, через внеполосную сигнализацию) или сетевой интерфейс 808 (например, через внутриполосную сигнализацию). Шлюз 220 защиты пакетов может включать в себя один или несколько фильтров пакетов или дискриминаторов пакетов, или логику для реализации одного или нескольких фильтров пакетов или дискриминаторов пакетов. Например, шлюз 220 безопасности пакетов может включать в себя фильтр 812 пакетов, который может быть сконфигурирован для проверки информации, связанной с пакетами, принятыми шлюзом 220 безопасности пакетов, и пересылки таких пакетов одному или нескольким операторам 820, 822 или 824 на основе проверенной информации. Например, фильтр 812 пакетов может проверять информацию, связанную с пакетами, принятыми шлюзом 220 безопасности пакетов (например, пакеты, принятые из сети AC 107 через сетевой интерфейс 808), и пересылать пакеты одному или нескольким операторам 820, 822 или 824 на основе изученная информация.
[0081] Политика 818 может включать в себя одно или несколько правил, а конфигурация фильтра 812 пакетов может быть основана на одном или нескольких правилах, включенных в политику 818. Например, политика 818 может включать в себя одно или несколько правил, определяющих, что пакеты имеют указанную информацию, должны быть переадресованы оператору 820, что пакеты, имеющие другую заданную информацию, должны быть отправлены оператору 822, и что все другие пакеты должны быть отправлены оператору 824. Операторы 820, 822 и 824 могут быть сконфигурированы для выполнения одной или нескольких функций с пакетами, которые получают от фильтра 812 пакетов. Например, один или несколько операторов 820, 822 или 824 могут быть сконфигурированы для пересылки пакетов, полученных от фильтра 812 пакетов, в сеть АС 108, пересылки пакетов, полученных от фильтра 812 пакетов, в стек IPsec (не проиллюстрирован), имеющий ассоциацию безопасности IPsec, соответствующую пакетам, или отбрасывать пакеты, полученные от фильтра 812 пакетов. В некоторых вариантах осуществления один или несколько операторов 820, 822 или 824 могут быть в красном режиме, чтобы отбрасывать пакеты, отправляя пакет в локальный "бесконечный приемник" (например, файл устройства / dev / null в LINUX).
[0082] Для классификации и определения атаки и внедрения в сети в данном техническом решении могут использоваться алгоритмы машинного обучения. Ниже расписан пример на основании искусственной нейронной сети.
[0083] Нейронная сеть представляет собой граф взаимосвязанных нелинейных блоков обработки (процессоров), которые могут обучаться, чтобы аппроксимировать комплексные отображения между входными данными и выходными данными. Отметим, что входными данными является, например, сигнал присутствия в цифровом виде (набор координат живого объекта), а выходом является, например, решение классификации (в простейшем случае +1/-1, что означает "да", в сети есть атака, или "нет", в сети нет атаки). Каждый нелинейный процессор (или нейрон) состоит из взвешенной линейной комбинации своих входов, к которым применяется нелинейная функция активации.
[0084] Нейронная сеть определяется ее структурой связности, ее нелинейной функцией активации и ее весами.
[0085] В нижеследующих вариантах осуществления используется концепция, которая может называться и называется в последующем описании распространением релевантности. Она перераспределяет доказательство (основание) для конкретной структуры в данных, как моделируется выходными нейронами, обратно на входные нейроны. Таким образом, она стремится дать объяснение своего собственного предсказания с точки зрения входных переменных (например, есть в сети атака или нет). Отметим, что эта концепция работает для любого типа (не имеющей петель) нейронной сети, независимо от количества слоев, типа функции активации и т.д. Таким образом, ее можно применять ко многим популярным моделям, так как многие алгоритмы могут быть описаны в терминах нейронных сетей.
[0086] Ниже приведена иллюстрация процедуры распространения релевантности для сети, состоящей из слоев свертки/субдискретизации, за которыми следует последовательность полностью связанных слоев.
[0087] В частности, нижеприведенный пример показывает реализацию искусственной нейронной сети упрощенным примерным образом. Искусственная нейронная сеть состоит из нейронов. Нейроны взаимосвязаны друг с другом или взаимодействуют друг с другом. Как правило, каждый нейрон соединен с расположенными ниже по потоку (нисходящими) соседними (или последующими) нейронами, с одной стороны, и расположенными выше по потоку (восходящими) соседними (или предшествующими) нейронами, с другой стороны. Термины "восходящий", "предшествующий", "нисходящий" и "последующий" относятся к общему направлению распространения, вдоль которого работает нейронная сеть, когда она применяется к набору элементов, чтобы отображать набор элементов на выход сети, то есть выполнять предсказание.
[0088] Первый или самый нижний слой нейронов образует своего рода вход искусственной нейронной сети. То есть, каждый нейрон этого нижнего слоя принимает в качестве своих входных значений по меньшей мере поднабор из набора элементов, то есть, по меньшей мере поднабор значений нагрузки сети. Объединение поднаборов элементов из набора, значения которых вводятся в некоторый нейрон нижнего слоя. Иными словами, для каждого элемента набора, его значение вводится по меньшей мере в один из нейронов нижнего слоя.
[0089] На противоположной стороне нейронной сети, то есть на ее нисходящей/выходной стороне, сеть содержит один или несколько выходных нейронов, которые отличаются от нейронов тем, что у первых нет нисходящих соседних/последующих нейронов. После применения к набору данных о нагрузках и атаках сети и после завершения обработки, значения, хранящиеся в каждом выходном нейроне, образуют выход сети. То есть, выход сети может, например, быть скаляром. В этом случае будет присутствовать только один выходной нейрон, и его значение после операции сети будет формировать выход сети. Такой выход сети может, например, быть мерой вероятности того, что набор элементов, то есть набор численных значений нагрузки сети или атаки, принадлежит к определенному классу или нет. Выход сети может, однако, альтернативно быть вектором. В этом случае существует более одного выходного нейрона, и значение каждого из этих выходных нейронов, как получено в конце операции сети, формирует соответствующий компонент выходного вектора сети. Каждый компонент выхода сети является мерой, измеряющей вероятность того, что набор принадлежит к соответствующему классу, ассоциированному с соответствующим компонентом. Другие примеры также возможны и будут представлены ниже.
[0090] Таким образом, суммируя вышеизложенное, нейронная сеть включает в себя нейроны, связанные между собой, чтобы отображать, в операции прямого распространения или нормальной операции, набор элементов на нейронный выход. Подобно выходным нейронам, значение которых в конце операции сети формирует выход сети, элементы набора, то есть численные значения нагрузки сети или атак в примерном случае могут рассматриваться как входные нейроны сети с нейронами и слоями, образованными при этом, являющимися промежуточными нейронами или промежуточными слоями, соответственно. В частности, входные нейроны могут соответственно рассматриваться как восходящие соседние или предшествующие нейроны промежуточных нейронов, также как выходные нейроны могут образовывать нисходящие соседние/последующие нейроны промежуточных нейронов, образующих, например, самый высокий промежуточный слой сети или, если интерпретировать один или несколько выходных нейронов как образующие самый верхний слой сети, второй по высоте слой сети.
[0091] Нейронная сеть может быть реализована, например, в форме компьютерной программы, работающей на компьютере или процессорном устройстве, то есть в программном обеспечении, но реализация в аппаратной форме, например, в виде электрической схемы, также будет осуществима. Каждый нейрон при обучении вычисляет, как описано выше, активацию на основе своих входных значений, используя нейронную функцию, которая, например, представлена как нелинейная скалярная функция g(⋅) линейной комбинации входных значений. Как описано, нейронные функции, ассоциированные с нейронами, могут быть параметризируемыми функциями. Например, в одном из конкретных примеров, описанных ниже, нейронные функции для нейрона j являются параметризируемыми с использованием смещения bj и веса wij для всех входных значений i соответствующего нейрона. Эти параметры могут быть получены путем обучения сети. С этой целью сеть, например, повторно применяется к тренировочному (обучающему) набору для наборов элементов, для которого известен корректный выход сети, то есть обучающему набору маркированных значений нагрузки сети или атаки в иллюстративном случае. Однако также могут существовать и другие возможности. Даже комбинация может быть осуществимой. Варианты осуществления, описанные ниже, не ограничиваются каким-либо источником или способом определения параметров. Например, восходящая (передняя) часть сети, состоящая из слоев, продолжающихся от набора данных, т.е. входа сети, до промежуточного скрытого слоя, может быть искусственно сгенерирована или обучена, чтобы эмулировать извлечение признака данных нагрузки сети посредством сверточных фильтров, например, так, что каждый нейрон (нисходящего) последующего слоя представляет собой значение признака из карт признаков. Каждая карта признаков, например, ассоциирована с определенной характеристикой или признаком или импульсным откликом или тому подобным. Соответственно, каждая карта признаков может, например, рассматриваться как разреженно (суб-) дискретизированная отфильтрованная версия входного сигнала присутствия, причем одна карта признаков различается по ассоциированному признаку/характеристике/импульсному отклику ассоциированного фильтра от другой карты признаков. Если, например, набор имеет XY элементов, а именно, значений сигнала присутствия, то есть X столбцов и Y строк значений сигнала, каждый нейрон будет соответствовать одному значению признака одной карты признаков, значение которого будет соответствовать локальной оценке признака, ассоциированной с определенной частью значений нагрузки сети. В случае N карт признаков с P Q выборками оценок признаков, например, Р столбцами и Q строками значений признаков, число нейронов в нисходящем последующем слое части будут равно, например, N P Q, которое может быть меньше или больше, чем XY. Для установки нейронных функций или параметризации нейронных функций нейронов внутри части можно было бы использовать перевод (преобразование) описаний признаков или фильтров, лежащих в основе карт признаков, соответственно. Однако вновь отметим, что существование такой "переведенной", а не "обученной" части сети не является обязательным для настоящей заявки и ее вариантов осуществления, и что такая часть может альтернативно отсутствовать. В любом случае, устанавливая, что, возможно, нейронные функции нейронов могут быть равны среди всех нейронов или равны среди нейронов одного слоя или т.п., нейронная функция может, однако, быть параметризируемой, и хотя параметризируемая нейронная функция может быть одинаковой среди этих нейронов, параметр(ы) функции этой нейронной функции может (могут) варьироваться среди этих нейронов. Количество промежуточных слоев также является произвольным и может быть равно одному или больше одного.
[0092] Подводя итог вышеизложенному, применение сети в нормальном рабочем режиме выглядит следующим образом: набор числовых значений нагрузки сети или атаки, подвергается воздействию или вводится в сеть. То есть, данные значения образуют входные значения для нейронов первого слоя. Эти значения распространяются, как описано, вдоль прямого направления по сети и дают в результате выход сети. В случае наличия повышенной нагрузки, например, выход сети будет, указывать, что это входной сигнал относится к третьему классу, то есть к классу сигналов, показывающих очень высокую нагрузку сети, связанную с ботнетами. Более точно, в то время как выходной нейрон, соответствующий классу "высокая нагрузка", завершался бы высоким значением, другие выходные нейроны, иллюстративно соответствующие в данном случае классам "низкая нагрузка" и " средняя нагрузка ", завершались бы в низких (меньших) значениях.
[0093] Однако, как описано во вводной части спецификации настоящей заявки, информация о том, показывает ли или нет нагрузка сети, то есть информация может оказаться недостаточной. Скорее, было бы предпочтительнее иметь информацию на уровне детализации значений данных по нагрузке, указывающую, какие числа, т.е. элементы набора, были релевантны для решения сети, а какие нет, например, какие значения о данных нагрузки отображают вторжение, а какие нет.
Функции и этапы, описанные в данном документе, могут быть воплощены в используемых компьютером данных или исполняемых компьютером инструкциях, например, в одном или нескольких программных модулях, выполняемых одним или несколькими компьютерами или другими устройствами для выполнения одной или нескольких функций, описанных в данном документе. Обычно программные модули включают в себя процедуры, программы, объекты, компоненты, структуры данных и т.д., которые выполняют конкретные задачи или реализуют определенные абстрактные типы данных при выполнении одним или несколькими процессорами в компьютере или другом устройстве обработки данных. Машиноисполняемые инструкции могут храниться на машиночитаемом носителе, таком как жесткий диск, оптический диск, съемный носитель данных, твердотельная память, RAM и т.д. Как будет понятно, функциональные возможности программных модулей могут быть объединены или распределены по желанию в различных вариантах осуществления. Кроме того, функциональные возможности могут быть реализованы полностью или частично в аппаратно-программных средствах или эквивалентах аппаратных средств, таких как интегральные схемы, специализированные интегральные схемы (ASIC), программируемые вентильные матрицы (FPGA) и т.п. Конкретные структуры данных могут использоваться для более эффективной реализации одного или нескольких аспектов раскрытия, и предполагается, что такие структуры данных находятся в пределах объема выполняемых компьютером инструкций и данных, используемых компьютером, описанных в данном документе.
[0094] Хотя это и не требуется, специалисту в данной области техники будет понятно, что различные аспекты, описанные в данном документе, могут быть воплощены как способ, устройство или как один или несколько машиночитаемых носителей, хранящих машиноисполняемые инструкции. Соответственно, эти аспекты могут принимать форму полностью аппаратного варианта воплощения, полностью программного воплощения, полностью микропрограммного воплощения или варианта воплощения, объединяющего программные, аппаратные и микропрограммные аспекты в любой комбинации.
[0095] Как описано в данном документе, различные методы и действия могут выполняться на одном или нескольких вычислительных серверах и в одной или нескольких сетях. Функциональные возможности могут быть распределены любым способом или могут располагаться на одном вычислительном устройстве (например, сервере, клиентском компьютере и т.д.).
[0096] Аспекты раскрытия были описаны в терминах его иллюстративных вариантов осуществления. Многочисленные другие варианты осуществления, модификации и вариации в пределах объема и сущности прилагаемой формулы изобретения будут очевидны специалистам в данной области техники из обзор данного раскрытия. Например, специалисту в данной области техники будет понятно, что этапы, проиллюстрированные на иллюстративных фигурах, могут выполняться не в указанном порядке, и что один или несколько проиллюстрированных этапов могут быть необязательными.
Способ защиты информационно-вычислительной сети от вторжений, выполняемый по меньшей мере одним вычислительным устройством и включающий следующие шаги:
на каждом шлюзе безопасности из множества шлюзов безопасности, взаимодействующих в точках пиринга с множеством различных автономных систем (АС) сетей, осуществляют:
прием этим шлюзом безопасности множества пакетов;
определяют, возникло ли состояние перегрузки по меньшей мере в одной сети, связанной со шлюзом безопасности, посредством применения алгоритма машинного обучения, причем, если существует состояние перегрузки, применяют шлюзом безопасности первую группу правил фильтрации по меньшей мере к некоторой первой принятой части множества пакетов, причем правила содержат по меньшей мере один кортеж, указывающий на первый набор пакетов;
осуществляют смягчение условий перегрузки посредством запрета конечным точкам, подозреваемым в размещении ботов, доступа в Интернет;
определяют, возникло ли смягчение условий перегрузки, причем, если да, то:
применяют шлюзом безопасности вторую группу правил фильтрации по меньшей мере ко второй принятой части множества пакетов, которая содержит, по меньшей мере, один кортеж, указывающий на второй набор пакетов от множества пользователей, содержащих данные по меньшей мере для одного интернет-приложения, которому разрешено продолжать движение к их соответствующим адресатам, при этом множество пользователей коммуникативно связаны с множеством различных сетей АС, при этом применение второй группы правил фильтрации включает разрешение, по меньшей мере, второй части множества пакетов, попадающих во второй набор пакетов от множества пользователей, для передачи к их соответствующим адресатам.