Методы автоматизации сетевых систем

(Ди Джорджио Този)
08/11/21

Ссылка на использование методов автоматизации и, возможно, AI (искусственного интеллекта) стала обычной практикой при решении многих проблем анализа данных, из которых можно извлечь информацию о будущем поведении сложных систем.

На самом деле возможность автономной реакции системы на определенные события с целью стандартизации поведения уже некоторое время присутствует во многих устройствах. В этих заметках мы рассмотрим пример функций, доступных на некоторых узлах корпоративных сетей (на сегодняшний день все основанные на протоколе IP), которые позволяют:

Признание конкретного события

Создание политики, которая будет применяться в случае возникновения рассматриваемого события

Применение политики к системе с последующей модификацией ее поведения.

Все основные производители сетевых IP-устройств (Cisco Systems, Juniper Networks, Arista Networks,…) предлагают такие функции под разными именами.

Не вдаваясь в специфику каждой системы, я просто хотел бы проиллюстрировать принцип работы, чтобы предложить представление о том, как есть, даже в области сетевых устройств, инструменты и функции, которые позволяют автоматизировать поведение узлов. перед лицом конкретных событий.

Распространение этих инструментов также может привести к решениям, которые в синергии с методами безопасности на основе ИИ (читать статью) позволяют эффективно вмешиваться при возникновении конкретных проблем, избегая того, чтобы угроза или попытка взлома могли достичь конечных систем (серверов или отдельных рабочих станций).

Поэтому я буду ссылаться на гипотетическое сетевое устройство. Рассматриваемый узел предоставляет среду разработки, ориентированную на реализацию функций автоматизации.

Очень часто эта среда разрабатывается на основе системы Linux, оптимизированной для работы на «вспомогательном» процессоре внутри сетевого узла. Большое преимущество такого решения заключается в возможности использования многих (хотя и не всех) библиотек и языков, доступных в Linux. В дополнение к этому должна быть добавлена ​​возможность, предлагаемая производителями сетевого узла, для доступа к основным функциям использования самого узла из этой среды Linux.

Таким образом, можно получить доступ к определенным параметрам интерфейсов через библиотеку (предоставленную производителем), которая позволяет узнать, например, количество пакетов, переданных при вводе-выводе из определенного порта, или идентифицировать неправильно сформированные пакеты (слишком большие или слишком маленький или с ошибками, ...). Эти функции не ограничиваются характеристиками интерфейса, но могут влиять на другие подсистемы узла, такие как уровень маршрутизации или некоторые физические характеристики системы (температура, состояние вентилятора и т. Д.).

Таким образом, я могу определить конкретное событие на основе наступления заранее определенного условия: превышение количества ошибок CRC на порту, изменение таблицы маршрутизации, превышение порогового значения, касающегося температуры системы, загрузки ЦП или использования памяти.

На этом этапе определенное таким образом событие можно использовать в качестве триггера для определенного действия (политики): отключить дверь, отправить сообщение (разными способами) системному администратору, вмешаться в конфигурацию, чтобы изменить маршрут по умолчанию и т. Д. на.

Все действия могут выполняться с помощью сценариев или исполняемых программ: обычно системы предлагают возможность использования основных языков, поэтому Python, Perl, Ruby и родную среду, основанную на собственном командном интерфейсе.

Эта функция открывает целый ряд возможных очень интересных последствий, в том числе с точки зрения сетевой безопасности.

Если бы было возможно, используя инструменты, внешние по отношению к системе и основанные на ИИ, с точки зрения, определенной в вышеупомянутой статье, чтобы должным образом проинструктировать и сообщить о наличии возможной идентифицированной угрозы системе, можно было бы немедленно вмешаться (или в очень короткие сроки). Таким образом, предполагаемое вмешательство блокирует конкретное соединение и в то же время реализует определенную ранее определенную политику, таким образом вмешиваясь в конфигурацию самой системы.

Таким образом можно было бы, например, изолировать конкретный домен, который считается ненадежным, обеспечивая при этом поддержание связи на глобальном уровне.

Естественно, взаимодействие между сетевым оборудованием и системами безопасности подлежит анализу и разработке всеми основными поставщиками, которые могут предложить инструменты для выявления и сдерживания киберугроз, которые при соответствующей настройке и использовании являются очень эффективными.