Гайд по использованию технологий искусственного интеллекта для автоматизированного обнаружения угроз
Искусственный интеллект давно перестал быть чем-то неприменимым в профессиональной практике. Точность существующих на данный момент моделей позволяет применять их мощь даже в контексте обеспечения информационной безопасности, в частности, в автоматизированном обнаружении угроз.
В последнее время набирает обороты подход Retrieval Augmented Generation (RAG) – генерация с дополненной выборкой, при котором ИИ дают возможность взаимодействовать с определённой базой знаний, контекстом, на основании которого генерируются ответы на запросы пользователя.
Разберем кейс, когда аналитику необходимо получить данные о пользователях, упоминавшихся в инцидентах. Генеративная модель запрашивает данные, которые прямо или косвенно содержат информацию о пользователе, и генерирует ответ на основании полученного контекста.
Другая альтернатива применения RAG – дополнение уже зарегистрированных инцидентов рекомендациями по устранению причин угроз, автоматическое уведомление аналитиков о появлении взаимосвязанных инцидентов. База знаний в данном случае – перечень мер для устранения угроз. Даже при отсутствии конкретных уязвимостей в базе, генеративная модель всё равно способна сгенерировать меры защиты. Помимо этого, RAG используют для автоматического составления карточки инцидента.
Все перечисленные варианты могут применяться одновременно или по отдельности. Например, в продукте нашей компании STEP Security Data Lake внедрён интеллектуальный помощник сразу с несколькими функциями. Он не только находит ключевую информацию в инцидентах, но и предлагает меры по закрытию уязвимостей.
В этом гайде предлагаю разобрать, с чего начать интеграцию ИИ в ИБ-процессы и какие трудности могут возникнуть.
Шаг 1. Определите задачи и постройте визуальные модели взаимодействия
Есть мнение, что современные большие языковые модели «всемогущие», в реальности – встречаясь с актуальными задачами, они могут выдавать большое количество ошибок. Поэтому необходимо точно представлять, чего вы ожидаете от внедрения интеллектуального ассистента, какой именно процесс планируете автоматизировать. В случае построения системы по схеме RAG, определите базу знаний и способ её формирования.
Например, стоит задача автоматически формировать инциденты на основе событий из определённого источника. Здесь базой знаний будет набор правил корреляции, которые применимы к источнику. Потребуется настроить механизм наполнения описанной базы, определить способы дополнения их контекстной информации для упрощения поиска, выбрать роль большой языковой модели. В примере выше – поиск происходит не по запросу пользователя, а по тексту события источника. Наиболее подходящее правило обнаружения и само событие отдаются генеративному ИИ, который принимает решение о необходимости создания инцидента. Для недопущения утечек конфиденциальной информации я бы рекомендовал построить визуальную схему взаимодействия всех компонентов и использования локальных языковых моделей.
Шаг 2. Сформируйте базу знаний
Ключевой фактор эффективности внедрения RAG в процесс обнаружения угроз – качественная база знаний, которая будет служить контекстом для ответов. В первую очередь, определите структуру базы, условия наполнения и характеристику данных, которые планируете в ней хранить. Для корректной интерпретации данных они должны быть в двух форматах: векторное и текстовое представление информации.
Векторное – для поиска релевантных документов, в которых содержатся данные по вопросу пользователя. Текстовое – для передачи на вход генеративной модели в качестве контекста.
Оно должно быть понятным для большой языковой модели, чтобы при получении контекста сформировать точный ответ.
Во-вторых, если планируете хранить события с устройств, предусмотрите механизм парсинга событий, чтобы ИИ было проще анализировать содержимое логов. Парсинг разложит событие на более интерпретируемые составляющие: время, тип, источники, назначение и пр. Например, мы реализовали такой функционал в интеллектуальном помощнике STEP SDL.
Шаг 3. Выберите конкретные технические решения и постройте тестовый прототип
В текущих условиях для интеграции ИИ в архитектуру, в том числе с применением RAG, достаточно написать несколько десятков строк кода с применением открытых библиотек. Это не означает, что продуктовую версию решения стоит строить на таких библиотеках. Как правило, они излишне тяжёлые и разработчики не пользуются всем доступным им функционалом, тем самым расходуя ценные вычислительные ресурсы и место на диске. Однако это позволяет без больших трудозатрат строить тестовые прототипы решений для проверки их эффективности. Подберите перечень конкретных моделей: большую языковую для генерации текста, вспомогательную для векторизации данных и другие дополнительные модели. Выберите векторную базу данных для хранения вашей базы знаний и иные решения, которые могут потребоваться при реализации полноценного продукта.
Шаг 4. Протестируйте прототип, оцените его точность и скорость работы
Получившийся прототип рекомендую проверить на точность, и при необходимости заменить используемые модели. Например, если база знаний на русском языке, а модель векторизации обучена на английских данных, точность будет низкой. Это может привести к некорректной выдаче документов для контекста во время поиска. Неотъемлемая часть тестирования – проверка защищённости построенного прототипа.
Если пользователи, база знаний и другие компоненты системы взаимодействуют с чувствительной информацией, предусмотрите разграничение доступа к функциям ИИ или источникам данных.
Выводы
Залог успеха внедрения автоматизации обнаружения угроз с помощью ИИ заключается в тщательной подготовке данных, с которым впоследствии будет работать модель для генерации ответов. Внедрение RAG позволяет объединять несколько источников разнородных данных для формирования единого вывода, применение этому можно найти во многих аспектах обнаружения угроз: от помощи аналитику для ускорения решения рутинных задач, до создания полноценного механизма обнаружения инцидентов с помощью ИИ.
Источник: CISOCLUB