cyBERT

МЕНЮ


Искусственный интеллект
Поиск
Регистрация на сайте
Помощь проекту

ТЕМЫ


Новости ИИРазработка ИИВнедрение ИИРабота разума и сознаниеМодель мозгаРобототехника, БПЛАТрансгуманизмОбработка текстаТеория эволюцииДополненная реальностьЖелезоКиберугрозыНаучный мирИТ индустрияРазработка ПОТеория информацииМатематикаЦифровая экономика

Авторизация



RSS


RSS новости


Нейронная сеть, это технология; Чтобы освободить свой персонал от плохого регулярного выражения

Введение в журналы

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

Журналы кибербезопасности создаются во всей организации и охватывают конечные точки (например, компьютеры, ноутбуки, серверы), сетевые коммуникации и устройства периметра (например, узлы VPN, межсетевые экраны). Используя консервативную оценку для компании, состоящей из 1000 сотрудников, небольшая организация может рассчитывать на генерирование более 100 ГБ в день журнального трафика с пиковым значением EPS (число событий в секунду) более 22 000?. Некоторые из этих журналов создаются пользователями и активностью в сети, а другие журналы создаются сетевыми устройствами и устройствами безопасности, развернутыми по всей среде.

Зачем разбирать журнал?

Началось достаточно просто. Журналы должны быть сохранены для важных событий. Банковские операции должны были регистрироваться для целей проверки и аудита. По мере того как системы связи становились все более сложными, сохранялись дополнительные журналы, чтобы гарантировать надежность и надежность систем. Интернет открыл новую эру общения, торговли и обмена информацией. Ценная информация передавалась, и мы начали нуждаться в журналах, чтобы проверить подлинность и разрешенную связь. Когда цена хранилища упала, специалисты по безопасности призвали свои организации собирать больше журналов, чтобы собирать больше данных. И они были успешными.

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

  • Что происходит, когда вводится новый датчик / приложение и вместе с ним вводится новый формат журнала? Даже если текущие парсеры журнала могут обрабатывать данные, аналогичные этому новому формату журнала, новый парсер должен быть записан (регулярное выражение, это довольно жестко для этого).
  • Что происходит с поврежденными журналами? Весь конвейер выходит из строя или мы теряем весь этот журнал? SIEMкомпания или ISV может писать парсер для своих журналов, но ваш внутренний персонал должен анализаторами записи для внутренне созданных приложений , которые не прилипают к чрезвычайно общему формату.
  • Что если группа операций по обеспечению безопасности (secops) захочет получить эти журналы и оценить, какая информация из них является действующей и необходимой? Сегодня это может потребовать нескольких итераций, облагая налогом уже недоукомплектованную команду secops для оценки качества проанализированного журнала.

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

Что такое НЛП и почему мы должны его использовать?

Существует много способов обработки журналов и данных кибербезопасности. В этом случае мы сосредотачиваемся на анализе журналов, которые обычно определяются людьми для записи данных, которые фиксируют обмены между машинами. Обращение к такой технике, как обработка естественного языка ( NLP ), заслуживает изучения. НЛП традиционно используется для таких приложений, как перевод текста, интерактивные чат-роботы и виртуальные помощники. Первым шагом для современных методов НЛП является преобразование текста или речи в математическое представление. Эти представления могут быть такими же простыми, как поиск, который преобразует символы в числа, или они могут быть гораздо более сложными, например, с использованием выходных данных ранее обученной нейронной сети (например, Word2vec, GloVe, BERT, GPT-2). , Эти представления нейронной сети изучают отношения между словами в неконтролируемом методе на основе их совпадения с другими словами в очень большом учебном корпусе, как и во всей английской википедии. Модели машинного обучения затем разрабатываются с использованием этих представлений для достижения желаемого результата, такого как кластеризация или классификация. Предыдущая работа ? показывает, что просмотр данных о кибербезопасности как типа естественного языка может быть успешным.

Почему БЕРТ?

Учитывая их функциональность, нет недостатка в предварительно обученных представлениях слов, созданных для НЛП. Старые представления слов нейронной сети, такие как Word2vec, не зависят от контекста. Они создают вложение одного слова для каждого слова в словаре и не способны различать слова с несколькими значениями (например, файл на диске или отдельная строка файла). Более современные модели (например, ULMFit и ELMo ) имеют несколько представлений для слов на основе контекста. Они достигают этого, используя слово плюс предыдущие слова в предложении для создания представлений.

BERT (двунаправленные представления кодировщиков от Transformers) также создает контекстные представления, но учитывает окружающий контекст в обоих направлениях - как до, так и после слова. Кодирование этой контекстной информации важно для понимания кибер журналов из-за их упорядоченного характера.Например, для нескольких типов журналов адрес источника встречается перед адресом назначения. Дополнительная проблема применения модели естественного языка к кибер журналам заключается в том, что многие «слова» в кибер журналах не являются словами на английском языке; они включают в себя такие вещи, как пути к файлам, шестнадцатеричные значения и IP-адреса.Другие языковые модели возвращают запись «вне словаря», когда сталкиваются с неизвестным словом, но BERT разбивает слова в наших кибер-журналах на WordPieces в словаре. Например,ProcessIDстановится два в словаре WordPieces - Process и ##ID.Кроме того, BERT является привлекательной моделью для нашеговарианта использования, поскольку она была открыта Google в конце 2018 года, а библиотека преобразователей HuggingFaceсодержит простую в использовании предварительно обученную модель, реализованную в PyTorch. Библиотека преобразователя может легко добавлять слои тонкой настройки к слоям представления для нашей конкретной последующей задачи классификации Распознавания именованных объектов (NER). И последнее преимущество выбора модели BERT для анализа кибер-журналов заключается в том, что мы можем воспользоваться преимуществами эпического портманто - CyBERT.

Эксперимент CyBERT

cyBERT - это продолжающийся эксперимент по обучению и оптимизации трансформаторных сетей для задачи гибкого и надежного анализа журналов разнородных данных о кибербезопасности. Это часть CLX (читайте наш обзорный блог о CLX), набор киберспецифических приложений, созданных с использованием RAPIDS . Так как BERT был разработан для естественного человеческого языка и более традиционных задач НЛП, таких как ответы на вопросы, мы преодолели несколько проблем в нашей реализации. В отличие от гибкой организации предложений человеческого языка, жесткий порядок некоторых кибер журналов может заставить нашу модель изучать абсолютные позиции полей, а не их относительные позиции. Другая проблема заключается в том, что во многих наших журналах превышено максимальное число из 512 токенов, также называемых WordPieces, которые можно ввести как одну последовательность в BERT. Кроме того, более длинные последовательности непропорционально дороги, потому что время механизма внимания сети является квадратичным по отношению к длине последовательности. Чтобы добиться большей надежности и гибкости, мы настроили нашу модель на бревна различной длины и стартовые позиции. Перед выводом мы разбиваем журналы на перекрывающиеся части, чтобы учесть входной размер модели; помеченные журналы рекомбинируются в последующей обработке. До сих пор мы экспериментировали с входными последовательностями различной длины, размерами обучающих данных, количеством типов журналов и количеством обучающих эпох.

Например, вывод для модели BERT 512 составляет 20,3 мс. Однако это не говорит всю историю. Чтобы проанализировать журнал с размером последовательности WordPiece 256, в модель необходимо ввести более двух частей. Это необходимо для перекрытия частей журнала. Для достижения того же эффекта, что и при разборе журнала с одной последовательностью WordPiece длиной 512, необходимо выполнить 3 последовательности через модель последовательности WordPiece 256. На рисунке 1 показаны характеристики производительности (строки) и временные характеристики (столбцы) для различных размеров последовательностей WordPiece при анализе всего журнала.

Рисунок 1: Производительность вывода модели в зависимости от размера последовательности

Для журналов большого размера со средним числом токенов более 512 имеет смысл использовать максимально возможный размер WordPiece. Это дает не только самую высокую производительность, но и почти максимальную производительность по всем показателям оценки. Однако в реальном мире Центр операций безопасности (SOC ) может фактически не подходить к этим большим количествам токенов в своих журналах. В этом случае может быть достигнут баланс между максимальным количеством токенов и критериями производительности.

Рассмотрим размер WordPiece 64. Хотя для анализа всего журнала из нескольких последовательностей в нашем эксперименте требуется 15 последовательностей (по сравнению с одной последовательностью в 512), требуемое время увеличивается на ~ 5 мс. Если журналы обычно меньше, время вывода для одной последовательности с 64 токенами составляет 18,9 мс. Даже при уменьшенном количестве токенов производительность по всем показателям остается высокой. Все это означает, что не существует единого готового способа внедрения CyBERT, который бы работал для любой организации. Внимание должно быть уделено типу бревен и их общему составу. Наш код для CyBERT с параметрами, которые лучше всего работают для наших данных, можно найти в репозитории CLX.

Полученные результаты

Тонкая настройка предварительно обученной базовой модели BERT для маркировки записей кибер журналов с их именами полей достаточно мощная. Сначала мы обучили и протестировали нашу модель на целых бревнах, которые были достаточно малы, чтобы вписаться в одну входную последовательность, и получили оценку микро-F1 0,9995. Однако эта модель не может анализировать журналы, превышающие максимальную входную последовательность модели, и ее производительность пострадала, когда журналы из одного и того же набора тестирования были изменены на переменные начальные позиции (микро-F1: 0,9634) или были разрезаны на более мелкие куски (микро- F1: 0,9456).Чтобы помешать модели изучать абсолютные положения полей, мы перешли к обучению на бревнах. Эта тренировка приводит к точности, подобной фиксированным стартовым позициям, и хорошо работает на бревнах с переменными стартовыми позициями (micro-F1: 0.9938).

Мы достигаем наилучших результатов, когда обучаем нашу модель на бревнах и измеряем точность тестирования, разбивая каждый бревно перед выводом на перекрывающиеся бревна, а затем рекомбинируя и принимая прогнозы из средней половины каждого бревна. Это позволяет модели иметь максимальный контекст в обоих направлениях для вывода. Одной из самых интересных особенностей CyBERT является его способность анализировать типы журналов вне обучающего набора. Если обучить только 1000 примеров каждого из девяти различных типов журналов событий Windows, он может точно (micro-F1: 0.9645, см. Рисунок 2) проанализировать ранее не виданный тип журнала событий Windows.

Рисунок 2: Производительность для тестов, включая / исключая невидимые поля в обучении

Следующие шаги

После обнадеживающего начала с высокой точностью базовой модели BERT наши следующие шаги направлены на то, чтобы сделать CyBERT более надежным и гибким. Текущая модель обучается только в журналах событий Windows; мы планируем собрать более разнообразный набор журналов для обучения, включая дополнительные журналы событий Windows и веб-журналы apache. Язык кибер-журналов не совпадает с английским корпусом, на котором прошли обучение токенайзер BERT и нейронная сеть.Мы верим, что наша модель улучшит как скорость, так и точность, если мы перейдем к пользовательскому токенизатору и представлению, обученному с нуля на большом корпусе кибер-журналов. Например, текущий токенайзер BERT WordPiece разбивается на части, AccountDomainв A ##cco ##unt ##D ##oma ##inкоторые мы верим, что они более детализированы, чем значимые WordPieces AccountDomainв языке кибер журналов. Наш синтаксический анализатор должен двигаться со скоростью сети, чтобы не отставать от большого количества сгенерированных журналов. В будущем мы перенесем всю предварительную обработку, токенизацию и постобработку в графический процессор для более быстрого анализа без необходимости обмена данными с памятью хоста.

Вывод

CyBERT начал многообещающее сражение между людьми и бревнами. В этой статье мы показали, как интерпретация синтетических журналов кибербезопасности как естественного языка может сделать традиционные механизмы синтаксического анализа на основе регулярных выражений устаревшими и привнести гибкость и устойчивость на новый уровень в типичные архитектуры синтаксического анализа журналов. Эффективный и правильный синтаксический анализ журналов имеет решающее значение для любого центра операций безопасности, и CyBERT позволяет пользователям выполнять это без необходимости разработки обширных библиотек регулярных выражений. Кроме того, по мере того, как мы увеличиваем скорость предварительной и последующей обработки с помощью CyBERT, становится возможной возможность воспроизведения архивированных журналов с помощью новых анализаторов, что позволяет аналитикам по безопасности быстро извлекать новую информацию из старых журналов по мере необходимости. Мы в восторге от будущего CyBERT и от того, что делимся своей работой с большим сообществом кибербезопасности!


Ссылки

  1. Брэд Хейл, «Оценка создания журнала для управления событиями и информацией журнала безопасности»,http://content.solarwinds.com/creative/pdf/Whitepapers/estimating_log_generation_white_paper.pdf .
  2. Ричардсон Б., Рэдфорд Б. и др. «Обнаружение аномалий в данных кибер-сетей с использованием подхода кибер-языка», 2018, https://arxiv.org/abs/1808.10742 .
  3. Рэдфорд Б., Ричардсон Б., Дэвис С. «Правила агрегации последовательностей для обнаружения аномалий в трафике компьютерной сети», 2018, https://arxiv.org/abs/1805.03735 .

Об авторах

Рэйчел Аллен - старший научный сотрудник InfoSec в команде по инфраструктуре искусственного интеллекта в NVIDIA. Рэйчел сосредоточена на NVIDIA на исследовании и применении ускоренных GPU методов для решения проблем информационной безопасности и кибербезопасности. Ее основные исследовательские интересы связаны с применением НЛП и байесовского статистического моделирования для решения задач кибербезопасности, при этом cyBERT является ее последним вкладом. До прихода в NVIDIA Рэйчел была ведущим исследователем данных в Booz Allen Hamilton, где она разработала множество возможностей для расширенного поиска угроз и защиты сети с их коммерческой группой кибербезопасности, DarkLabs. Она является бывшим научным сотрудником и инструктором в инкубаторе данных, обучающей программе по науке о данных.Рэйчел имеет степень бакалавра в области когнитивных наук и докторскую степень в области неврологии в Университете Вирджинии.

Бартли Ричардсон (Bartley Richardson ) - менеджер по инфраструктуре искусственного интеллекта и старший научный сотрудник NVIDIA. В центре внимания NVIDIA - исследование и применение ускоренных на GPU методов и архитектур GPU, которые могут помочь в решении современных проблем информационной безопасности и кибербезопасности. До прихода в NVIDIA Бартли был техническим руководителем и исполнителем в нескольких исследовательских проектах DARPA, где он применял алгоритмы обработки данных и машинного обучения в масштабе для решения больших проблем кибербезопасности. Он также был главным исследователем исследовательского проекта «Интернет вещей», который фокусировался на применении машин и методов глубокого обучения к большим объемам данных IoT. Его основные области исследований включают в себя NLP и основанные на последовательностях методы, применяемые к наборам данных кибер-сетей, а также междоменные приложения машин и решений для глубокого обучения для противодействия растущему числу угроз кибербезопасности. Бартли имеет докторскую степень в области компьютерных наук и инженерии в Университете Цинциннати, специализирующуюся на свободной и неструктурированной оптимизации запросов. Он получил степень бакалавра в области компьютерной инженерии, специализирующейся на разработке программного обеспечения и ИИ.


Источник: medium.com

Комментарии: