Диплом: Структура и функции программного обеспечения для обнаружения проникновения в локальной вычислительной сети компании ООО «МОСТ Плюс»

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
62
тектора, плюс спе-
цифическая ин-
формация об атаке
Система DIRA [15] (The attack Detection, Identification and Repair) - рас-
ширение GCC, что позволяет компилируемым программам выявлять и иден-
тифицировать атаки перехвата контроля над потоком (control-flow hijacking).
Это реализуется путем внесения во время рекомпиляции датчиков (структур
данных чувствительных к контролю), которые могут выявить неразрешенные
изменения. Идентификация атаки состоит из отслеживания входных данных,
повлекших тревогу. Это выполняется с помощью обновляемого лога памяти
глобальных и статических переменных и транзакций. Заключительный этап -
откат состояния программы до точки, которая предшествовала считывания
входа, содержащий атаку, и перезагрузки оттуда программы.
Решение DOME [16] (The Detection Of Malicious Executables) позволяет
выявить атаки проникновения и атаки инициированные исполнительными
файлами (ехе), что модифицированные с помощью запутанного кода или со-
держат динамично генерируемый код. Механизм обнаружения основывается
на том, что вредоносный код часто использует системные вызовы, проникает
в запущенную программу и пытается скрыть свое присутствие. DOME прово-
дит статический анализ (с помощью IDA Pro disassembler) исполняющих фай-
лов для определения размещения системных вызовов, и дальше следит меня-
ется их размещения во время работы программы. Хотя DOME и не генерирует
сигнатур вредной активности, система может распознать такую активность,
сравнивая ее с нормальным/ подтвержденным поведением.
Система Minos [17] представляет собой модификацию архитектуры
Pentium ядра ОС, которая позволяет остановить атаки на контрольные данные,
путем пометки непроверенных входных данных как зараженных, и их распро-
странение операциями ФС, памяти и процессора. Это представляет собой ди-
намический анализ заражения (dynamic taint analysis).
63
Система Paid [18] (The Program semanticsAware Intrusion Detection sys-
tem) защищает программы от атак перехвата контроля над потоком с исполь-
зованием системных вызовов.
Она использует исходный код программы для создания модели систем-
ных вызовов, включает следующие три характеристики: размещение и поря-
док следования вызовов и частей контрольного потока программы.
Выявление аномального поведения происходит через сравнение образ-
цов реального функционирования с данной моделью.
Система Vigilante [19] включает компонент генерации фильтров для за-
щиты конечных хостов от последовательных атак и сопряженной сети для
быстрого распространения тревоги. Главная особенность Vigilante - концеп-
ция удостоверяемых тревог (self-certifying alerts, SCA).
Система состоит из следующих компонентов: детектор, контроллер
SCA, генератор фильтров и распространитель предупреждений.
HoneyStat [20] эмулирует несколько ОС по помощью VMware GSX
Server. Система обнаруживает 3 различных типа событий: события в памяти,
сети и дисковом пространстве. События в памяти фиксируются с помощью ПО
обнаружения переполнения буфера на виртуальной приманке. Сетевое собы-
тие создается в случае генерации приманкой исходящего трафика. События
дискового пространства возникают, если процесс записывает информацию в
заданные части ФС. Таким образом информация, фиксируется HoneyStat
включает: данные об ОС хоста, а также тип событий и соответствующие за-
фиксированы данные (События памяти - состояние стека, события сети — вы-
ходные пакеты, события дискового пространства - изменения файлов).
В качестве системы обнаружения атак предлагается использование СОВ
Snort.
3.2. Контрольный пример реализации проекта и его описание
Snort является популярным выбором для запуска систем обнаружения
сетевых вторжений. Она контролирует данные пакета, отправленные и полу-
ченные через определенный сетевой интерфейс. СОВ может обнаруживать
64
угрозы, нацеленные на уязвимости системы, используя технологии обнаруже-
ния и анализа протоколов на основе сигнатур. Программное обеспечение СОВ,
если оно установлено и настроено надлежащим образом, может выявлять се-
тевые атаки, заражение вредоносным ПО, взломанные системы и нарушения
сетевой политики
Snort является одной из наиболее часто используемых сетевых СОВ. Это
программное обеспечение с открытым исходным кодом, доступное на множе-
стве платформ, и его можно установить даже на самых маленьких экземплярах
облачного сервера.
Настроить базовую конфигурацию Snort в Ubuntu довольно просто, но
для этого нужно выполнить несколько шагов. Сначала вам нужно установить
все необходимое программное обеспечение, чтобы подготовить облачный сер-
вер к установке самого Snort. Установите необходимые библиотеки с помо-
щью команды представленной на рисунке 3.2.
После выполнения предварительных условий далее следует установить
Snort на Ubuntu 16. Snort можно загрузить и установить вручную из исходного
кода.
Рисунок 3.2 — Установка необходимого ПО
Настройка Snort в Ubuntu из исходного кода состоит из нескольких ша-
гов: загрузка кода, его настройка, компиляция кода, установка его в соответ-
ствующий каталог и, наконец, настройка правил обнаружения.
Установка начинается с создания временной папки для загрузки в до-
машний каталог необходимого кода (рисунок 3.3).
65
Рисунок 3.3 — Создание папки для установки
Сам Snort использует библиотеку сбора данных (DAQ) для абстрактных
вызовов библиотек захвата пакетов. Загрузить последний исходный пакет
DAQ с веб-сайта Snort можно с помощью команды wget (рисунок 3.4).
Рисунок 3.4 — Загрузка и установка DAQ
Затем необходимо загрузить исходный код Snort с помощью wget (рису-
нок 3.5).
Рисунок 3.5 — Загрузка и установка Snort
Настройка Snort для работы в режиме СОВ. Далее необходимо настро-
ить Snort для системы. Это процесс включает в себя редактирование некото-
рых файлов конфигурации, загрузку правил, которым будет следовать Snort, и
использование Snort для пробного запуска (рисунок 3.6).
Рисунок 3.6 — Настройка Snort
Snort в Ubuntu устанавливается в каталог / usr / local / bin / snort, реко-
мендуется создать символическую ссылку на / usr / sbin / snort (рисунок 3.7).
66
Рисунок 3.7 — Создание символической ссылки
Настройка имени пользователя и структуры папок. Для безопасного за-
пуска Snort в Ubuntu без рут-доступа нужно создать нового непривилегирован-
ного пользователя и новую группу пользователей для запуска службы (рису-
нок 3.8).
Рисунок 3.8 — Создание группы пользователей
Затем создаем структуру папок для размещения конфигурации Snort:
sudo mkdir -p / etc / snort / rules
sudo mkdir / var / log / snort
sudo mkdir / usr / local / lib / snort_dynamicrules
Устанавливаем разрешения для новых каталогов соответственно
(рисунок 3.9).
Рисунок 3.9 — Установка разрешений для каталогов
Затем необходимо загрузить правила обнаружения, которым Snort будет
следовать для выявления потенциальных угроз. Snort предоставляет три
уровня наборов правил: сообщества, зарегистрированных и правил подпис-
чика.
Правила сообщества свободно доступны, но немного ограничены.
67
Зарегистрировавшись бесплатно на веб-сайте, можно получить доступ к
своему коду Oink, который позволяет загружать наборы правил для зареги-
стрированных пользователей.
Наконец, правила подписчика - это только те, которые доступны поль-
зователям с активной подпиской на услуги Snort.
Использование правил сообщества. Для демонстрации работы СОВ вос-
пользуемся правилами сообщества с помощью wget (рисунок 3.10).
Рисунок 3.10 — Установка правил сообщества
Далее необходимо распаковать и скопировать их в папку snort
(рисунок 3.11).
Рисунок 3.11 — Распаковка и копирование правил сообщества
3.3 Программное обеспечение для анализа и выявления атак
проникновения
Искусственная нейронная сеть состоит из набора процедур для преобра-
зования набора входных данных в набор искомых выходных данных через
набор простых процессорных блоков или узлов и связей между ними. Подмно-
жествами единиц являются входные узлы, выходные узлы и узлы между вхо-
дом и выходом, которые формируют скрытые слои; Соединение между двумя
блоками имеет некоторый вес, используемый для определения того, насколько
68
один блок повлияет на другой. Можно выделить два типа архитектуры нейрон-
ных сетей [28, 30].
1. Контролируемые алгоритмы обучения, когда на этапе обучения сеть
запоминает желаемый результат для заданного ввода или шаблона.
Хорошо известной архитектурой контролируемой нейронной сети яв-
ляется многоуровневый персептрон (MLP).
2. Необслуживаемые алгоритмы обучения, когда на этапе обучения сеть
обучается без указания желаемого результата. Самоорганизующиеся
карты (SOM) - популярные алгоритмы обучения без контроля; SOM
пытается найти топологическое отображение из входного простран-
ства в кластеры. SOM используются для задач классификации [24, 37]
Нейронная сеть предназначена для автоматического обучения / переобу-
чения коэффициентов в нейронной сети в соответствии с данными ввода и вы-
вода данных. Применяя подход нейронной сети (НС) к обнаружению вторже-
ний [38-40], сначала необходимо обучить НС на обычных данных и данных по
атакам и настроить коэффициенты НС на этапе обучения. Затем проводятся
тесты производительности с реальным сетевым трафиком и атаками.
Нейронные сети в значительной степени успешно использовались для
решения сложных задач, таких как распознавание образов, распознавание ру-
кописных символов, статистический анализ. Исследования по применению
подхода нейронной сети в области обнаружения вторжений, как для модели
обнаружения злоупотреблений, так и для модели обнаружения аномалий нача-
лись сравнительно недавно [34, 37-40].
Системы обнаружения вторжений на основе НС способны решить неко-
торые проблемы, имеющиеся в системах на основе правил. Основные преиму-
щества применения НС:
гибкость – возможность выявления злоупотреблений по неполным
или искаженным данным;
способность выявлять малоизвестные атаки, а также вероятность
проведения атаки распределенной во времени;
69
высокая скорость анализа данных.
К недостаткам следует отнести:
необходимость обучения НС, что обусловливает применение различ-
ных методов обучения и подготовки обучающих данных (выборки)
для наилучшего анализа и выявления злонамеренной деятельности;
суть происходящих внутри НС процессов скрыта, и качество анализа
зависит непосредственно от обучения.
Есть несколько распространенных вариантов реализации НС в СОА.
Первый включает объединение их с существующими экспертными системами.
Данное решение использует НС для фильтрации входящих данных, которые
могут указывать на злоупотребления, и передачи этих событий к экспертной
системе. Эта конфигурация должна улучшить эффективность системы обна-
ружения за счет снижения числа ложных срабатываний, присущих ЭС. По-
скольку НС будет определять вероятность того, что конкретное событие ука-
зывает на атаку, пороговая величина может быть установлена там, где событие
перенаправляется к ЭС для дополнительного анализа.
Основной недостаток данного подхода заключается в необходимости
поддержания актуальности баз данных ЭС в соответствии с уровнем обучения
НС. Если экспертная система не была обновлена, то новые атаки, выявляемые
НС, будут в значительной степени пропускаться ЭС, потому что ее собствен-
ные правила не способны распознать новую угрозу.
Второй подход заключается в реализации НС как отдельной системы об-
наружения вторжений. В этой конфигурации НС получает весь поток данных
и анализирует информацию на наличие в них злоупотреблений. Любые слу-
чаи, которые идентифицируются с указанием на атаку, перенаправляются к
администратору безопасности или используются системой автоматического
реагирования на атаки. Основные преимущества данного подхода:
высокая скорость выявления атак по сравнению с предыдущим под-
ходом, так как существует только один уровень анализа;
70
повышение эффективности выявления атак с течением времени
ввиду обучения НС.
В отличие от первого подхода, эта концепция не ограничивается анали-
тической способностью ЭС.
Для решения задачи определения атаки вторжения с использованием
нейронной сети было разработано программное обеспечение, которое имеет
интерфейс, представленный на рисунке 3.12.
Страница Главная является главной. На ней изображена модель нейрон-
ной сети и параметры с помощью которых будут вестись обучение и тестиро-
вание. Нейросеть имеет 15 нейронов на входном слое, 16 - на скрытом и 1 - на
выходном. Данная страница предоставлена для ознакомления пользователя со
структурой нейросети, реализованной в данном ПО.
Рисунок 3.12 — Страница Главная
Вторая страница, Нейронная сеть предназначена для обучения и тести-
рования нейронной сети (рисунок 3.13). Данные действия можно выполнить,
если существует набор данных, который будет подан на вход. Проверить нали-
чие данных можно взглянув в секцию Dos атаки. Если в данной секции содер-
жится таблица с данными, то они были успешно загружены из базы данных и
можно выполнить обучение или тестирование нейросети, выбрав необходи-
мую вкладку.
71
Рисунок 3.13 — Страница Нейронная сеть
Для обучения нейросети необходимо нажать на вкладку Обучение сети,
после чего будут изображены кнопки Создать файл, Выбрать файл и Учить
для создания файла для обучения, выбора файла для обучения и обучения
нейросети. Сначала необходимо нажать на кнопку Создать файл, после чего
данный файл можно будет выбрать и нажать на кнопку Учить, что запустит
процесс обучения нейронной сети.
Для тестирования нейросети необходимо выполнить аналогичные дей-
ствия. Надо перейти на вкладку Тестирование сети (рисунок 3.14), после чего
создать файлы для тестирования, нажав на кнопку Создать файл.
Рисунок 3.14 — Вкладка тестирование нейросети

Смотрите также:

Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
PR-коммуникации в сфере общественного питания (на примере кафе-кондитерской «Cream Cheese»)
SMM как средство повышения эффективности работы учреждений социокультурной сферы (на примере Малого театра)
Value-based education: ценности в системе образования и способы их реализации на уроке английского языка. Опыт Европейских стран
Work-life balance подход в управлении рабочим временем молодых сотрудников (на примере ООО «МГТ-сервис»)
Актуализация контента, отражающего концепцию «диалога культур», при освоении английского языка взрослыми обучающимися
Актуализация приемов инсценирования и драматизации в рамках интерактивной модели обучения английскому языку в старших классах
Актуальные подходы в построении внутреннего pr строительной компании (на примере ООО "Ренессанспроект")
Анализ деловой активности и экономической эффективности деятельности организации (на примере АО «СГ-Транс»)
Анализ деловой активности организации как инструмент повышения эффективности ее деятельности (на примере Косинского районного потребительского общества)