Согласно рейтингу Open Web Application Security Project (OWASP) основных рисков кибербезопасности, среди которых риски веб-приложений, риски мобильных и IoT-устройств, уязвимости систем машинного обучения, проблема защиты в цифровом космос по-прежнему остается чрезвычайно актуальным. Здесь мы рассмотрим актуальные проблемы, возникающие из-за объединения приложений машинного обучения и кибербезопасности в различных областях, таких как экосистемы IoT, целевые сложные постоянные угрозы, обнаружение мошенничества и аномалий и т. д. Также вы найдете интересные идеи для вашего будущего машинного обучения. проекты.

Системы Интернета вещей (IoT)

Из-за ограниченности вычислительных ресурсов IoT-устройств и их небезопасных авторизационных/сетевых протоколов в настоящее время остро стоит проблема его защиты. Должны быть защищены различные уровни экосистемы IoT: уровень восприятия, сетевой уровень и прикладной уровень. Поэтому исследователи рассматривают возможность использования алгоритмов машинного обучения для мониторинга сетевого трафика; защищаться от узких мест, программ-вымогателей, криптоджекинга, сложных постоянных угроз (APT), распределенных атак типа отказ в обслуживании (DDoS) и атак человек посередине (MITM); обеспечить безопасность IoT-приложений и т. д.

Несмотря на успех применения алгоритмов машинного обучения в других областях, в области безопасности уровней IoT все еще есть некоторые проблемы и проблемы, которые необходимо решить. Одной из таких проблем является отсутствие данных или отсутствие качественных данных. Например, чтобы оценить подход машинного обучения к защите от атак ботнетов, исследователи пытаются получить данные, заражая устройства IoT широко известными Mirai и BASHLITE, как это показано в «N-BaIoT: сетевое обнаружение атак ботнетов IoT с использованием глубоких автоэнкодеров. ». Некоторые авторы пытались имитировать искусственные данные с помощью симулятора Cooja IoT, тогда как другие использовали испытательные стенды для имитации различных видов атак.

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

Давайте представим, что мы успешно развернули модель машинного обучения в экосистеме IoT. Здесь возникает проблема безопасности данных и моделей машинного обучения. Недавние достижения в алгоритмах машинного обучения позволили использовать их для взлома криптографических реализаций, например, модель RNN может изучать шаблоны для взлома функции машинного дешифрования Enigma. Другой проблемой является утечка/конфиденциальность данных (пользовательских данных, наборов данных, артефактов модели ML), если злоумышленник будет знать структуру данных/модели ML и будет иметь к ней доступ, у него будет возможность отравления данных/модели, обман путем генерации состязательных образцов и т.д.

Открытые наборы данных:

Идеи проектов машинного обучения:

  • генерация/дополнение существующих данных IoT с использованием General Adversarial Networks (GAN) или любой другой генеративной модели;
  • шумоподавление данных IoT с использованием моделей Denoising Autoencoder (DAE);
  • обнаружение аномалий сетевого трафика/прогнозирование временных рядов;
  • Классификация и категоризация безопасных/вредоносных приложений Интернета вещей;
  • экспериментировать с квантованием/сокращением/дистилляцией знаний, чтобы оптимизировать модель для целей развертывания.

Расширенные постоянные угрозы (APT)

Расширенная постоянная угроза (APT) может быть определена как целенаправленная кибератака, которая может обходить все виды защитного программного обеспечения (брандмауэры, антивирусы) и оставаться невидимой в течение достаточно длительного периода времени. Среди известных примеров таких атак — Stuxnet, нацеленный на системы SCADA (диспетчерское управление и сбор данных) с целью нанесения существенного ущерба ядерной программе Ирана. Epic Turla, выявленная Лабораторией Касперского, предназначалась для заражения систем правительственных учреждений, госдепартаментов, военных ведомств и посольств более чем в 40 странах мира. Deep Panda — атака, направленная на получение информации о сотрудниках разведывательной службы США, вероятно, китайского происхождения.

Методы, которые используются для обхода безопасности, включают использование известных уязвимостей, использование вредоносных программ, целевой фишинг, уязвимость нулевого дня, атаку на водопой, социальную инженерию. Хорошей практикой для защиты от такого рода атак было бы совместное использование стека ELK (Elasticsearch, Logstash, Kibana) для мониторинга любых системных аномалий и методов машинного обучения. Из-за растянутого по времени и сложного характера APT-атак в большинстве случаев недостаточно использовать только модуль защиты на основе машинного обучения; такая модель работает в сочетании с другими методами защиты, такими как методы на основе подписи.

Поскольку APT имеет временную природу, многие исследователи в этой области пытаются создавать решения на основе моделей рекуррентных нейронных сетей (RNN), которые предназначены для обработки последовательностей. Например, в статье Расширенное обнаружение постоянных угроз с использованием нейронных сетей с долговременной памятью (LSTM) авторы использовали модель LSTM, которая использует журналы событий Splunk SIEM в качестве входных данных для обнаружения шпионажа APT. Другой подход заключается в построении многомодульных систем, таких как Обнаружение продвинутой постоянной угрозы с использованием корреляционного анализа машинного обучения для обнаружения многоэтапных вредоносных программ APT с использованием машинного обучения и корреляционного анализа. Новизна этого исследования заключается в выявлении АТТ на всех этапах жизненного цикла. В Контекстно-зависимой структуре обнаружения устойчивых продвинутых угроз авторы использовали события из разных источников, т. е. журналы VPN, журналы брандмауэра, журналы IDS, журналы аутентификации, журналы системных событий, которые передавались в качестве источника данных механизму обнаружения. Из этих журналов контекст атаки идентифицируется с использованием правил корреляции. Подозрительные действия идентифицируются путем сопоставления контекстов атаки с использованием базы данных сигнатур. Как видите, исследователи подходят к проблеме с разных сторон, и простора для творчества еще предостаточно.

Открытые наборы данных:

Идеи проектов машинного обучения:

  • Моделирование/генерация данных APT;
  • разработка системы обнаружения вторжений (IDS) для обнаружения APT;
  • классификация вредоносных программ APT/обычных вредоносных программ;
  • кластеризация сетевого трафика для обнаружения скрытых шаблонов.

Обнаружение мошенничества

Понятие мошенничества с точки зрения информационной безопасности довольно обширно и затрагивает различные сферы, такие как финансовые учреждения, розничная торговля, логистические организации, страховые компании, азартные игры, сектор здравоохранения, социальные сообщества, органы управления и т. д. Мошенники пытаются получить персональные данные. , для которых они создают многовекторные атаки, которые могут включать в себя: методы социальной инженерии (например, целевой фишинг), вредоносное ПО, мошенничество с захватом учетных записей, мошенничество с выдачей себя за другое лицо. Недавние примеры многовекторных мошеннических атак включают кибератаки с использованием банковской инфраструктуры, связанной со SWIFT, заражение банкоматов, систем дистанционного банковского обслуживания и сетей POS-терминалов, внесение изменений в базы данных поставщиков платежных услуг (PSP), чтобы играть с остатками на счетах, а также так называемые «атаки на цепочку поставок. Оцифровка и автоматизация работы с клиентами не только улучшают результаты клиентов, но и открывают двери для автоматизации мошеннических действий (бот-атак): регистрация спама, автоматизация входа в систему для захвата учетной записи, автоматическое тестирование украденных учетных данных кредитной карты.

В случае машинного обучения с учителем (kNN, логистическая регрессия, SVM, случайные леса и повышение градиента, нейронные сети с прямой связью, рекуррентные и сверточные нейронные сети, решения SOTA, которые объединяют различные модели глубокого обучения, например, автоэнкодер плюс LSTM), проблема обнаружение мошенничества обычно рассматривается как проблема бинарной классификации образцов мошеннических/законных данных. Однако размеченные данные не всегда доступны, и исследователи прибегают к неконтролируемому машинному обучению для решения обнаружения аномалий/новинок (Local Outlier Factor, iForest, One-Class SVM, One-class GAN, Variational AutoEncoder).

Проблемы, которые возникают в области обнаружения мошенничества с использованием ML:

  • Несбалансированные данные. Мошеннические выборки встречаются редко по сравнению с легитимным трафиком. Два наивных метода решения этой проблемы – использование метода недостаточной/избыточной выборки, а еще один – стратегия синтетической передискретизации меньшинства (SMOTE). Также можно использовать генеративные модели для выборки новых точек из вероятностного распределения образцов мошенничества.
  • Перенос данных. Поведение мошенников динамично и меняется со временем, как и модели поведения клиентов. Обычно обучая модели машинного обучения на наборе поездов, мы предполагаем, что он действителен на тестовом наборе (если мы все сделали правильно), но в случае дрейфа данных гипотеза будет нарушена.
  • Справедливость модели машинного обучения очень важна. Разработанная модель машинного обучения должна одинаково учитывать разнообразие клиентов, то есть перед развертыванием в рабочей среде следует оценивать модели для разных групп клиентов. Вы можете использовать фреймворк TFX (TensorFlow Extended), который подходит для всех этапов запуска модели машинного обучения в производство. Этот фреймворк предоставляет сервис для оценки честности.
  • Высокое количество категориальных переменных. Большинство алгоритмов обучения не могут напрямую обрабатывать категориальные переменные с большим количеством уровней, поэтому следует использовать оптимальную стратегию кодирования признаков, чтобы свести к минимуму использование оперативной памяти. Для кодирования категориальных признаков могут использоваться различные контролируемые (обобщенный линейный кодировщик смешанной модели, оценка Джеймса-Стейна, целевое кодирование, квантильный кодировщик) и неконтролируемые (хеширование, однократное, подсчет, кодирование по Шлему) методы.
  • Нелинейные аномалии в поведении. После того, как модель была запущена в производство, работа инженера по машинному обучению еще не завершена. Необходимо постоянно отслеживать данные, например, вы можете использовать информационные панели Kibana из стека ELK. Должна быть выбрана оптимальная длина временных рамок и график переобучения вашей модели на новых поступающих данных, чтобы предотвратить дрейф данных/концепций. Например, переобучение модели может происходить автоматически по расписанию с использованием фреймворка AirFlow.
  • Компромисс между тем, чтобы мошенники останавливали действия законных пользователей и создавали трения. Должен быть оптимальный компромиссный порог, который сведет к минимуму количество ложных срабатываний (законный пользователь определяется как мошенник) и максимизирует число ложных срабатываний (мошенник будет обнаружен как законный пользователь) срабатывания модели ML.

Открытые наборы данных:

Идеи проектов машинного обучения:

  • эксперименты с различными генеративными моделями генерации образцов мошенничества;
  • классификация мошеннических/законных действий;
  • использовать нейронные сети Graph для создания модели борьбы с отмыванием денег;
  • обнаружение фишинговых URL;
  • обнаружение фейковых аккаунтов в социальных сетях.

Целевые программы-вымогатели

Вредоносное ПО — это вредоносное программное обеспечение, которое существует в различных формах, таких как вирусы, черви, руткиты, шпионское ПО, трояны, программы-вымогатели и так далее. Программа-вымогатель — это тип вредоносного ПО, которое шифрует все важные файлы пользователя и требует выкуп за их разблокировку. Как правило, выкуп запрашивается в цифровой валюте, а анонимность цифровой валюты позволяет злоумышленникам избежать судебного преследования. Это также дает обоснование увеличения количества атак программ-вымогателей. Существует два типа программ-вымогателей: программы-вымогатели для шифрования и программы-вымогатели для шкафчиков. Криптовредоносное ПО шифрует системные файлы, делая их недоступными. Программа-вымогатель File-Locker — это другое название программы-вымогателя. Программа-вымогатель Locker не повреждает данные; вместо этого он запрещает жертвам доступ к своим системам, отображая окно, которое никогда не закрывается, или блокируя их рабочий стол. Функционирование программ-вымогателей похоже на работу безвредного программного обеспечения в том смысле, что они работают без ведома других. В результате обнаружение программ-вымогателей в атаках нулевого дня в настоящее время имеет решающее значение.

Существует несколько подходов и процедур для обнаружения программ-вымогателей. Методы, основанные на статическом анализе, дизассемблируют исходный код, не выполняя его. Однако они имеют значительный процент ложных срабатываний и не способны обнаруживать запутанные программы-вымогатели. Для решения этих проблем исследователи обращаются к инструментам, основанным на динамическом анализе поведения, которые отслеживают взаимодействие исполняемого кода в виртуальной среде и извлекают выполняемые последовательности API. Однако эти методы обнаружения медленнее и требуют много памяти. Машинное обучение идеально подходит для анализа поведения любого процесса или приложения. Исследователи предложили два разных способа обнаружения программ-вымогателей с помощью машинного обучения: на основе хоста и на основе сети. В случае подхода с анализом на основе хоста отслеживаются активность файловой системы, вызовы API, операции с ключами реестра, модели энергопотребления и другие функции. При сетевом подходе анализируются образцы/журналы вредоносного и доброкачественного трафика; например, IP-адрес назначения и источника, тип протокола, номер порта источника и получателя, общее количество байтов и пакетов за разговор. Кроме того, решения по защите можно разделить на обнаружение программ-вымогателей на ранней стадии (до шифрования) и обнаружение после шифрования, которые не так важны.

Преимущество подхода к защите на основе машинного обучения по сравнению с методами на основе сигнатур заключается в том, что он способен обнаруживать атаки нулевого дня с помощью методов обнаружения аномалий. В Модели слияния решений нулевого дня для раннего обнаружения крипто-вымогателей авторы использовали группу одноклассовых моделей SVM, которые были обучены на безопасных программах. Результаты этого классификатора интегрировались методом мажоритарного голосования. В Подходе к автоматизированному анализу для обнаружения программ-вымогателей с высокой живучестью исследователи предложили основу для поведенческого динамического анализа программ-вымогателей с высокой живучестью (HSR) с интегрированными наборами полезных функций. Для выбора наиболее полезных функций из проанализированных образцов использовался термин частота, обратная частоте документа (TF-IDF). Машина опорных векторов (SVM) и искусственная нейронная сеть (ANN) использовались для разработки и внедрения модели обнаружения на основе машинного обучения, способной распознавать определенные поведенческие черты атак программ-вымогателей с высокой живучестью.

Основные проблемы в области программ-вымогателей:

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

Открытые наборы данных:

Идеи проектов машинного обучения:

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

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

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

Входная выборка x, правильно классифицированная классификатором f, возмущена с помощью r, так что результирующий состязательный пример, x + r остается во входном домене D, но ему назначается метка, отличная от x.

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

В области компьютерного зрения злоумышленник может изменить цвет каждого пикселя (на другой допустимый цвет), не создавая недействительного изображения в рамках атаки. Однако в области кибербезопасности изменение вызова API (например, замена вызова WriteFile() на ReadFile() ) может привести к тому, что исполняемый файл будет работать по-другому или даже сбой. Возмущение сетевых пакетов с целью обхода модуля обнаружения сетевых вторжений также является сложной задачей. Небольшие изменения, не воспринимаемые человеческим глазом, в сфере кибербезопасности невозможны. Однако некоторая прозрачность процесса машинного обучения облегчает хакерам атаки на модули машинного обучения. Примером может быть использование трансферного обучения, когда инженеры машинного обучения используют общие архитектуры предварительно обученных моделей или задачу обнаружения фишинговых URL, где используются общие функции НЛП. В этом случае это будет атака серого ящика, когда хакер имеет частичную информацию о процессе обучения модели машинного обучения. Этот обзор может стать хорошей отправной точкой для изучения состязательных атак в различных областях кибербезопасности, их видов и целей, а также методов защиты.

Идеи проектов машинного обучения:

  • сгенерируйте враждебные примеры с помощью GAN и проверьте надежность модели машинного обучения на этих примерах;
  • модель обнаружения дипфейков, такая как MesoNet/MesoInception.

Дальнейшее чтение:

Системы Интернета вещей (IoT):

Расширенная постоянная угроза (APT):

Обнаружение мошенничества:

Целевые программы-вымогатели:

Противоборствующие атаки и безопасность приложений машинного обучения: