Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
2283.pdf
Скачиваний:
37
Добавлен:
07.01.2021
Размер:
4.89 Mб
Скачать

УДК 004.056

ИССЛЕДОВАНИЕ ВОЗМОЖНОСТЕЙ МАШИННОГО ОБУЧЕНИЯ ДЛЯ ДЕТЕКТИРОВАНИЯ АТАК НА ВЕБ-ПРИЛОЖЕНИЯ

Гугняк Р.Б.

студент группы 24П Омского государственного университета путей сообщения (ОмГУПС), г. Омск

Епифанцева М.Е.

научный руководитель, канд. тех. наук, доцент, доцент кафедры «Информационная СибАДИбезопасность» Омского государственного университета путей сообщения (ОмГУПС), г. Омск

Аннотац я. В данном сследовании обоснована возможность применения машинного обучения для защ ты Веб-пр ложений. Проанализированы возможности применения облачных серв сов технолог й разработки для машинного обучения и создания модуля для защиты Веб-пр ложен й. Разработан модуль детектирования атак на основе модели машинного обучен я. Представлены результаты тестирования работы модуля.

Ключевые слова. Web Application Firewall, машинное обучение, веб-приложение,

нейронные сети, Google Cloud ML.

Одной з тенденц й разв тия современных информационных технологий является стабильный рост кол чества Веб-приложений, применяющихся практически во всех сферах деятельности государства знеса [1]. При этом значительное количество веб-ресурсов систематически подвергается атакам злоумышленников [2], поэтому актуальной задачей остается постоянное совершенствование технологий их защиты, в особенности с применением искусственного интеллекта, так как машинное обучение является перспективным инструментом для построения систем защиты информации.

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

– Web Appllication Firewall (WAF) – межсетевого экрана прикладного уровня. Данный вид средств защиты основывается на принципе классических межсетевых экранов – наборе правил, который выявляет попытки атак с помощью заранее подготовленных сигнатур. Однако с ростом популярности технологий искусственного интеллекта в составе современных WAF появился модуль, основанный на машинном обучении, что увеличивает вероятность обнаружения вредоносных запросов и уменьшает количество ложных срабатываний.

На рынке средств защиты представлен большой перечень зарубежных и отечественных WAF. В таблице 1 приведены результаты сравнительного анализа наиболее популярных коммерческих бесплатных продуктов для защиты Веб-приложений от атак, использующих наиболее опасные уязвимости [3].

39

Таблица 1 – Сравнительный анализ WAF

 

Название продукта

Страна

 

Защита от атак

 

Язык

Цена,

 

 

DDO

SQL

 

0-

 

 

XSS

интерфейса

тыс. руб.

 

 

 

 

S

injection

 

day

 

 

 

 

PT Application Firewall

Россия

+

+

+

+

русский

1000

 

 

Barracuda WAF

США

+

+

+

+

русский,

457

 

 

английский

 

 

Citrix NetScaler AppFirewall

США

+

+

+

+

английский

457

 

 

СибАДИ

английский

457

 

 

Imperva SecureSphere WAF

США

+

+

+

+

 

 

F5 BIG-IP ASM

США

+

+

+

+

английский

1500

 

 

ModSecurity

США

-

+

+

-

-

-

 

 

NAXSI

США

-

+

+

-

-

-

 

 

WebKnight

США

-

+

+

-

английский

-

 

 

Shadow Daemon

США

-

+

+

-

английский

-

 

 

IronBee

США

-

+

+

-

-

-

 

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

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

В последнее время появилось ольшое количество облачных решений, например, CloudFlare и Incapsula. Для о еспечения фильтрации запросов трафик Интернет-приложения проходит через сервер такой компании и принимает решение. Такие продукты позволяют упростить интеграцию и о еспечить неплохой уровень защищенности. Однако фильтрация в таких системах происходит на основе небольшого количества параметров, также возможны недобросовестные действия со стороны провайдеров таких услуг. В случае атак типа отказ в обслуживании таких ресурсов, Интернет-приложения клиентов тоже становятся недоступными,

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

Таким образом, с целью исследования возможностей машинного обучения для детектирования атак на Веб-приложения требуется разработать модуль машинного обучения,

в задачи которого входит анализ входящих HTTP-запросов

блокировка вредоносных.

Прежде чем приступить к разработке такого модуля необходимо:

 

 

выбрать алгоритм машинного обучения;

 

 

подготовить обучающую и тестовую выборки;

 

обучить и оценить модель машинного обучения.

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

Выборкой данных в рассматриваемом случае будут HTTP-запросы, которые включают параметры заголовки и значения параметров запроса. Для их сбора необходимо разработать скрипт, который будет записывать полученные от пользователя данные в файл.

40

Для обучения моделей искусственного интеллекта на больших данных необходимы высокие вычислительные мощности. На современном рынке доступно множество облачных платформ, которые позволяют проводить процесс обучения без приобретения дорогостоящего оборудования. В данной работе использовалась платформа Google Cloud Platform [4], которая она обладает полной поддержкой библиотеки TensorFlow и возможностью гибкой настройки параметров модели и процесса обучения, а также при регистрации предоставляется бесплатный аккаунт на год. Для обработки данных была выбрана LSTM-сеть [5].

СибАДИС целью оценки эффективности модели машинного обучения для детектирования атак на Веб-приложения необходимо:

Для оценки качества модели использовалась тестовая выборка, состоящая из 30000 примеров запросов. Среди них 25000 нормальных запросов и 5000 аномальных. В таблице 2 приведены метр ки для оценки построенной модели. Значения метрик позволяют

положительно оцен ть модель машинного обучения.

Таблица 2 – Метр ки качества построенной модели

Метрика

Значение

Кол чество FP

 

57

 

Кол чество

положительных

24943

пр меров

 

 

 

Частота FP

 

0.0023

Кол чество TP

 

4991

Кол чество

отрицательных

5000

пр меров

 

 

 

Частота TP

 

0.0018

Полнота

 

0.

9982

Специфичность

 

0.

99771084

Точность

 

0.

9887084

F-мера

 

0.

99343153

ККМ

 

0.

99212134

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

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

Оценить качество разработанной системы можно «ручным» поиском специальными сканерами уязвимостей. Существует множество различных сканеров: от универсальных сканеров безопасности Веб-приложений, до специализированных для конкретной уязвимости. «Ручной» поиск может включать в себя стандартные проверки OWASP и проверки, основанные на данных, полученных при первичном сканировании.

Для использования модели, обученной с помощью платформы Google Cloud ML, необходимо применение языка программирования Python и библиотеки TensorFlow [6]. Для интеграции с Интернет-приложениями выбрать архитектуру, которая позволит применять различные языки и библиотеки, а также необходимо минимизировать влияние сбоев в разрабатываемом модуле на логику основного приложения. Для выполнения предъявленных требований была выбрана архитектура с применением микросервисов.

Для реализации модуля был выбран фреймворк Flask – это микрофреймворк для Python, основанный на Werkzeug, Jinja 2 и применяется для разработки небольших Интернетприложений. Для проверки работы модуля машинного обучения использовались эксплойты

41

для разных CMS и сканеры nikto, sqlmap, webreaver. На рис. 1 представлены результаты тестирования модуля.

СибАДИhttps://console.cloud.google.com/

Р сунок 1 – Результаты работы модуля WAF

Таким образом, доля легитимных запросов, детектированных системой как аномальные (диаграмма слева на рис. 1), а также доля пропущенных системой аномальных запросов (диаграмма справа на рис. 1) составила 0,23 % и 0,18 % соответственно. Полученные результаты свидетельствуют об эффективности применения машинного обучения для защиты Веб-приложений от атак злоумышленников. ля дальнейшего улучшения качества

результатов детектирования атак следует увеличить объем обучающей выборки.

 

 

 

Библиографический список

 

 

1.

Internet Live Stats - Internet Usage & Social Media Statistics [Электронный ресурс] –

Режим доступа: http://www.internetlivestats.com/

 

 

 

 

2.

Актуальные киберугрозы 2018.

Тренды

прогнозы [Электронный ресурс]

– Режим

доступа: https://www.ptsecurity.com/ru-ru/research/analytics/cybersecurity-threatscape-2018/

3.

OWASP

Top 10 -

2017 The

Ten Most

Critical

Web

Application Security Risks

[Электронный ресурс] – Режим доступа: https://www.owasp.org/images/7/72/OWASP Top 10-

2017

(en).pdf.pdf

 

 

 

 

 

 

4.

Google

Cloud

Platform

[Электронный

ресурс]

– Режим

доступа:

5. PositiveTechnologies / seq2seq-web-attack-detection [Электронный ресурс] – Режим доступа: https://github.com/PositiveTechnologies/seq2seq-web-attack-detection

6. Рашка С., Python и машинное обучение / Себастьян Рашка / пер. с англ. А. В. Логунова.

– М.: ДМК Пресс, 2017. – 418 с.

42

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]