Snort установка настройка windows. Система обнаружения вторжения для Чайников. Установка и Конфигурирование SNORT. Запуск Snort и проверка статуса сервисов

💖 Нравится? Поделись с друзьями ссылкой

С возвращением, мои хакеры!

В мире информационной безопасности наиболее распространенной системой обнаружения вторжений (IDS), с которой вы рано или поздно столкнетесь, является Snort. Как вы, скорее всего, уже знаете, IDS работает аналогично антивирусному программному обеспечению - пытается идентифицировать вредоносное программное обеспечение в вашей сети и предупреждает вас о его присутствии.

Snort, созданный Мартином Рошем (Martin Roesch) в 1999 году, стал настолько популярным, что сетевой гигант Cisco приобрел его в 2014 году. Поэтому в ближайшем будущем вы, скорее всего, увидите его почти на всех устройствах Cisco. И поскольку Cisco является производителем самых популярных сетевых устройств, то скоро Snort будет вам попадаться везде.

Даже если ваша организация никогда не использует продукты Cisco (что маловероятно) или Snort, вам стоит разобраться в том, как работает эта IDS, так как большинство других систем обнаружения вторжений работают схожим образом.

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

Давайте начнем!

Метод 1. Установка Snort из репозиториев

Установка Snort дело простое, если в репозиториях вашей системы есть Snort. К сожалению, в Kali его больше нет, поэтому наш первый шаг - добавить репозиторий, в котором есть Snort. В этом случае мы добавим некоторые репозитории Ubuntu.

Открываем файл /etc/sources.list. Мы можем сделать это с помощью любого текстового редактора (здесь мы будем использовать Leafpad).

Kali> leafpad /etc/apt/sources.list

Как видно на скриншоте выше, мы добавили несколько репозиториев Ubuntu, которые также перечислены ниже. Поскольку Ubuntu является форком Debian (основным Linux-дистрибутивом, на котором построен Kali), то большинство пакетов Ubuntu будут работать и на Kali.

Deb http://ch.archive.ubuntu.com/ubuntu/ saucy main limited deb-src http://ch.archive.ubuntu.com/ubuntu/ saucy main limited deb http://httpredir.debian.org/debian jessie main deb-src http://httpredir.debian.org/debian jessie main

Для того чтобы обновить список наших репозиториев, после сохранения файла необходимо обновить список самих пакетов. Мы можем сделать это, набрав в консоли:

Kali> apt-get update

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

Kali> apt-get install snort

Вот и все, что нужно сделать. Snort установлен и готов к работе! Чтобы это проверить, просто введите в консоли:

Kali> snort -V

В нашем случае Snort вывел номер своей версии (в данном случае, 2.9.2).

Метод 2. Установка Snort из исходников

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

Это обеспечит вам лучшую общую производительность. Как и при работе с любой IDS, производительность имеет решающее значение. Более низкая производительность IDS либо замедлит вашу общую способность работать с сетью, либо приведет к появлению drop-пакетов. В первом случае у вас будут недовольны клиенты или пользователи, а во втором вы подвергаете риску безопасность сети.

При использовании Snort в защищенной среде на продакшене установка из исходников является крайне предпочтительной. Кроме того, установка из исходников гарантирует, что вы устанавливаете последнюю версию Snort. Многие из репозиториев содержат более старые версии. Текущая версия Snort - 2.9.8, а в репозиториях - 2.9.2. Небольшая разница, но когда мы пытаемся защитить «сокровище», то каждая деталь будет полезной.

Начнем с создания директории в Kali, куда загрузим исходный код.

Kali> mkdir snort_source

Затем перейдем в эту директорию

Kali> cd snort_source

Прежде чем скачать Snort, необходимо установить Data Acquisition library (библиотеку сбора данных) или DAQ. У DAQ есть несколько зависимостей, которые нам необходимо установить.

Kali> apt-get install -y bison flex

Теперь мы можем скачать и установить DAQ с сайта Snort.

Kali> wget https://www.snort.org/downloads/snort/daq-2.0.6.tar.gz kali> tar -xvzf daq-2.0.6.tar.gz

Затем перейдем в каталог daq.

Kali> cd daq-2.0.6

Наконец, сконфигурируем DAQ и вызовем команду make.

Kali> ./configure kali> make kali> install kali> wget "https://snort.org/snort/snort-2.9.8.0.tar.gz"https://snort.org/snort/snort-2.9.8.0.tar.gz

После того, как он скачается, нужно будет его распаковать. (Для получения дополнительной информации о команде tar, можно ознакомиться с нашей статьей по Основам Linux).

Kali> tar -xvzf snort-2.9.8.0.tar.gz

Перейдем в ту директорию, где находятся новые файлы Snort.

Kali> cd /snort-2.9.8.0

Нужно сконфигурировать его.

Kali> ./configure --enable-sourcefire

После этого нам нужно использовать команду make, которая определяет, какие из компонентов исходного кода должны быть перекомпилированы, а затем дает команду это сделать.

Kali> make

И, наконец, мы делаем установку (make install). Эта команда берет перекомпилированные компоненты программы и размещает их в соответствующих директориях.

Kali> make install

Поскольку мы в процессе установки установили новые файлы библиотеки, нам нужно обновить общие библиотеки. Для этого введем в консоли следующую команду:

Kali> ldconfig

Чтобы запускать Snort из любого каталога, можно сделать символическую ссылку на бинарные (исполняемые) файлы в /usr/local/bin/snort и поместить ее в директорию /usr/sbin, назвав snort. Поскольку /usr/sbin находится в нашей переменной PATH, мы можем ввести Snort в любом месте операционной системы, чтобы начать использовать IDS.

Kali > ln -s /usr/local/bin/snort /usr/sbin/snort

Давайте проверим, нормально ли установился Snort. Для этого наберем в консоли:

Kali> snort

Как мы видим, Snort запустился и успешно работает в режиме дампа пакетов или так называемом режиме сниффера.

Теперь, когда мы успешно установили Snort, продолжим его настройку для обнаружения вредоносного программного обеспечения. Это будет в нашей следующей статье этой серии, так что обязательно возвращайтесь!

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

Безопасность превыше всего. Лучше спать спокойно, чем проводить выходные за консолью, восстанавливая убитый сервак.

История о том, как я ставил SNORT + OINKMASTER + BASE

1. Установка SNORT

Идем в /usr/ports/security/snort/. Собираем SNORT (с опциями DYNAMIC и MYSQL):

# make install clean

Прописываем его в rc.conf:

Snort_enable="YES"

Начиная где-то с версии 2.4, в комплекте со snort НЕ предоставляются правила. По-этому, их надо скачивать самостоятельно. Существует два способа. Первый — скачивать руками, второй автоматизировать процесс через OINKMASTER. Так или иначе, надо будет зарегистрироваться на сайте www.snort.org, а для OINKMASTER надо еще сгенерировать OINK CODE в своем аккаунте на snort.org.

2. Установка и настройка OINKMASTER

Идем в /usr/ports/security/oinkmaster и ставим порт:

# make install clean

После установки, в директории /usr/local/etc появляется файл oinkmaster.conf.sample. Его надо переименовать в oinkmaster.conf и поправить в нем следующие строчки:

# Example for Snort-current ("current" means cvs snapshots). url = http://www.snort.org/pub-bin/oinkmaster.cgi/oinkcode/snortrules-snapshot-CURRENT.tar.gz tmpdir = /tmp/

Вместо oinkcode надо вставить свой код, который мы получили после регистрации на сайте snort.org.

Чтобы теперь получить последние правила, надо выполнить команду:

# oinkmaster -o /usr/local/etc/snort/rules

Правила скачаются в папку /usr/local/etc/snort/rules. Убедитесь, что папка существует. По идеи, она должна автоматически создаться после установки SNORT.

3. Настройка SNORT

Все файлы настроек хранятся в папке /usr/local/etc/snort
Первым делом редактируем файл snort.conf, правим в нем следующие строчки:

# Наша подсеть var HOME_NET 192.168.0.0/24 # Порты, на которых висит апач portvar HTTP_PORTS

// Интересно, надо ли сюда вписывать порт 443 # Где храить логи output database: log, mysql, user=snort password=test dbname=snort host=localhost

Чтобы теперь логи хранились в базе данных, надо создать саму базу данных:

# mysql -u root -p Password: вводим пароль mysql> create database snort; mysql> grant CREATE, INSERT, SELECT, DELETE, UPDATE on snort.* to ; mysql> SET PASSWORD FOR "snort"@"localhost"=PASSWORD("password"); mysql> exit

Теперь ее надо заполнить. Файл create_mysql я взял в папке /usr/ports/security/snort/work/snort-2.8.1/schemas. Если его там нет, то просто соберите порт (make).

# mysql -u root -p ~/create_mysql snort

Пробуем запустить snort:

# /usr/local/etc/rc.d/snort start

Смотрит /var/log/messages. Если все запустилось без ошибок, то хорошо)))

4. Установка и настройка BASE

Сначала надо поставить pear. Идем в /usr/ports/devel/pear

# make install clean

Теперь надо еще несколько пакетов к pear:

# pear install Image_Color # pear install Log # pear install Numbers_Roman # pear install Numbers_Words-alpha # pear install Image_Canvas-alpha # pear install Image_Graph-alpha

Теперь надо поставить adodb. Я ставил версию 5.02а.

# cd /usr/ports/databases/adodb5 # make install clean

BASE в портах я не нашел. Может, плохо искал. Его можно скачать с сайта www.secureideas.sf.net
Распаковываем его в любую папку на веб сервере. В моем случае — это /usr/local/www/base. В этой папке переименовываем файл base_conf.php.dist в base_conf.php. Редактируем в файле следующие строки:

# Включаем русский язык $BASE_Language = "russian"; # Если установить 0, то не будет авторизации при доступе к BASE. ВНИМАНИЕ! Чтобы инициализировать BASE, надо сначала установить значение 0! $Use_Auth_System = 1; # Если, например, BASE доступен через http://localhost/base, то заносим значение /base. # Я использую виртуальный домен www.base.server.ru, по этому ничего не вношу. $BASE_urlpath = ""; # Указываем путь до adodb $DBlib_path = "/usr/local/share/adodb"; # Параметры для подключения к базе данных $alert_dbname = "snort"; $alert_host = "localhost"; $alert_port = ""; $alert_user = "snort"; $alert_password = "mypassword";

Все. Сохраняем файл и закрываем его. Открываем BASE через браузер. Он скажет, что у нас не оптимизирована база данных и предложит ее оптимизировать. Соглашайтесь. После этого установка BASE завершена.


Дата публикации: 21 сентября 2009г.
Перевод: С.Владимирский
Дата перевода: 2 октября 2009г.

Данное руководство описывает, как установить и настроить систему обнаружения вторжения (IDS) с пакетами Snort, ACIDBASE (основной модуль анализа и обеспечения безопасности), MySQL и Apache2 в Ubuntu 9.04 с помощью менеджера пакетов Synaptic Ubuntu. Snort поможет вам в мониторинге вашей сети и предупредит о возможных угрозах. При этом Snort сформирует файлы протоколов для базы данных MySQL, а ACIDBASE позволит отобразить их в графическом интерфейсе в веб-браузере.

1. Подготовка системы и установка программного обеспечения.

1.1 Установка.

Загрузите 32-битную или 64-битную версию Desktop Ubuntu 9.04 отсюда: http://www.ubuntu.com/getubuntu/download

1.2 Системные и сетевые настройки

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

  • Размещение в демилитаризованной зоне (DMZ).
  • Статический IP-адрес, скрытый с помощью NAT за файерволом.
  • Подключение к порту мониторинга на сетевом коммутаторе (SWITCH).

Создайте нового администратора с именем <ваше_имя> и паролем <ваш_пароль> .

1.3 Установка программного обеспечения.

Первое, что необходимо сделать после завершения установки, - установить все рекомендованные Ubuntu обновления. Для доступа к обновлениям перейдите в меню: System > Administration > Update Manager (Система > Администрирование > Менеджер обновлений). Введите свой пароль и выберите Check (Проверить) . Выберите Install Updates (Установить обновления) .

С рабочего стола перейдите в System > Administration > Synaptic Package Manager (Система > Администрирование > Менеджер пакетов Synaptic) . Введите свой пароль и выберите Search (Поиск) .

Найдите и установите следующие пакеты:

  • Acidbase со всеми зависимыми пакетами
  • Snort-MySQL со всеми зависимыми пакетами
  • MySql-server-5.0 со всеми зависимыми пакетами
  • Libpcap0.8-dev
  • libmysqlclient15-dev
  • MySql-client-5.0
  • Bison
  • Apache2
  • Libapache2-mod-php5
  • Php5-gd
  • Php5-mysql
  • Libphp-adodb
  • Php-pear

2. Получите права суперпользователя

С рабочего стола перейдите в меню: Applications > Accessories > Terminal (Приложения > Дополнения > Терминал) и введите команду:

$ sudo -i
$ введите пароль

3. Настройка Snort

Для того, чтобы установить индивидуальные настройки, необходимо изменить файл настроек snort.conf .

С помощью текcтового редактора (nano, vi, vim или другого) откройте файл /etc/snort/snort.conf .

# vim /etc/snort/snort.conf

Измените переменную var HOME_NET any на var HOME_NET 192.168.1.0/24 (адрес вашей домашней сети может отличаться от адреса 192.168.1.0). Если вы ведете мониторинг нескольких сетей, необходимо указать все эти сети следующим образом: var HOME_NET . Измените var EXTERNAL_NET any на var EXTERNAL_NET !$HOME_NET (устанавливаются все переменные, кроме внешней переменной HOME_NET).

Измените var RULE_PATH ../rules на var RULE_PATH /etc/snort/rules . Прокрутите список до того места, где указана строка # output database: log, mysql, user= , удалите знак # из начала строки.

Пример: output database: log, mysql, user= password= dbname=snort host=localhost

(смотрите выше, когда создавался новый пользователь).

Запишите имя пользователя, пароль и название базы данных (dbname). При установке базы данных MySQL вам потребуются эти данные. Сохраните изменения и выйдите.

4. Установка баз данных Snort и Archive в MySQL

4.1 Установка MySQL

Войдите на сервер MySQL.

# mysql -u root -p

Иногда бывает так, что пароль не установлен, так что просто нажмите "Enter".

Если вход не выполняется, попробуйте еще раз набрать указанную выше команду и введите ВАШ_ПАРОЛЬ.

Если пароль отсутствует, вам необходимо установить пароль для учетной записи суперпользователя.

Примечание: Когда вы на сервере MySQL, в приглашении вместо символа "#" отображается группа символов "mysql>"

mysql> create user @localhost;
mysql> SET PASSWORD FOR r@localhost=PASSWORD();
mysql> SET PASSWORD FOR root@localhost=PASSWORD();

4.2 Создание базы данных Snort

mysql> create database snort; mysql> grant INSERT,SELECT on root.* to snort@localhost; mysql> grant CREATE,INSERT,SELECT,DELETE,UPDATE on snort.* to @localhost; mysql> grant CREATE,INSERT,SELECT,DELETE,UPDATE on snort.* to snort;

4.3 Создание базы данных Archive

mysql> create database archive; mysql> grant CREATE,INSERT,SELECT,DELETE,UPDATE on archive.* to @localhost; mysql> grant CREATE,INSERT,SELECT,DELETE,UPDATE on archive.* to archive; mysql> exit

4.4 Создание таблиц в базах данных Snort и Archive

Мы будем использовать схему Snort для компоновки баз данных Snort и Archive.

# cd /usr/share/doc/snort-mysql # zcat create_mysql.gz | mysql -u -h localhost -p snort # zcat create_mysql.gz | mysql -u -h localhost -p archive

4.5 Подтверждение создания баз данных и вновь созданных таблиц.

Войдите на сервер MySQL и проверьте базы данных, которые мы только что создали, и таблицы, размещенные в этих базах данных. Если все было успешно создано, вы увидите четыре (4) базы данных (mysql, test, snort и archive) в базах данных mysql и приблизительно по 16 таблиц в каждой базе данных.

# mysql -u root -p mysql> show databases; mysql> use snort; mysql> show tables; mysql> use archive; mysql> show tables; mysql> exit

4.6 Тестирование Snort

В режиме терминала наберите команду: # snort -c /etc/snort/snort.conf

Если все прошло успешно, вы должны увидеть ответ в кодах ascii.

Для завершения теста нажмите ctrl + c

5. Настройка Apache2

На компьютере должен быть уже установлен пакет Apache2.

С помощью вашего любимого текстового редактора создайте файл с именем test.php в папке /var/www/ .

# vim /var/www/test.php

Запишите в нем:

Сохраните изменения и закройте этот файл.

Отредактируйте файлt /etc/php5/apache2/php.ini

# vim /etc/php5/apache2/php.ini

Под строкой "Dynamic Extensions" добавьте следующее:

Extension=mysql.so extension=gd.so

Перезагрузите Apache2.

# /etc/init.d/apache2 restart

Получите IP-адрес вашего рабочего компьютера.

# ifconfig -a

Откройте веб-браузер и перейдите по адресу http://ВАШ_IP_АДРЕС/test.php .

Если все прошло успешно, отобразится информация по РНР.

6. Конфигурирование папок

Переместите ADOdb в папку /var/www .

# mv /usr/share/php/adodb /var/www/

Создайте папку с именем web в www и переместите в нее ACIDBASE.

# mkdir /var/www/web # mv /usr/share/acidbase /var/www/web/

Временно разрешите запись в папку базы acidbase для ее установки.

# chmod 777 /var/www/web/acidbase

# cd /var/www/web/acidbase # mv base_conf.php base_conf.old

Для работы в ACIDBASE выполните команду:

# pear install Image_Color

7. Установка ACIDBASE для баз данных Snort и Archive

7.1 Установка базы данных Snort через веб-браузер

Шаг 1 из 5:

Введите путь к ADODB. Это /var/www/adodb .

Шаг 2 из 5:

Main Database type = MySQL (Тип основной базы данных),
Database name = snort (База данных Snort),
Database Host = localhost (Локальное расположение базы данных Snort),
Database username = <ваше_имя_пользователя> (Имя пользователя базой данных Snort),
Database Password = <ваш_пароль> (Пароль для базы данных Snort)

Archive Database type = MySQL (Тип базы данных Archive),


Database username = <ваше_имя_пользователя>
Database Password = <ваш_пароль>

Шаг 3 из 5:

Если вы хотите использовать аутентификацию, введите имя пользователя и пароль (user: <ваше_имя> , password: <ваш_пароль>).

Шаг 4 из 5:

Щелкните мышкой Create BASE AG (Создать BASE AG).

Шаг 5 из 5:

Когда шаг 4 выполнен, в нижней части щелкните: Now continue to step 5 (Теперь переходите к шагу 5) .

Добавьте эту страницу в закладки.

7.2 Создайте папку для базы данных Archive ACIDBASE

Чтобы архивная база данных корректно работала, в папке ACIDBASE должна быть создана папка archive .

# mkdir /var/www/web/acidbase/archive # cd /var/www/web/acidbase # cp -R * /var/www/web/acidbase/archive # chmod 777 /var/www/web/acidbase/archive

Переименуйте существующий файл base_conf.php в base_conf.old .

# cd /var/www/web/acidbase/archive # mv base_conf.php base_conf.old

7.3 Установка базы данных Archive через веб-браузер.

Откройте веб-браузер и перейдите по адресу http://ВАШ_IP_АДРЕС/web/acidbase/archive/setup .

На первой странице щелкните "Продолжить".

Шаг 1 из 5:

Введите путь к ADODB. Это /var/www/adodb. >

Шаг 2 из 5:

Archive Database type = MySQL (Тип базы данных),
Database name = archive (База данных Archive),
Database Host = localhost (Локальное расположение базы данных Archive),
Database username = <ваше_имя_пользователя> (Имя пользователя базой данных Archive),
Database Password = <ваш_пароль> (Пароль для базы данных Archive)

Шаг 3 из 5:

Если вы хотите использовать аутентификацию, введите имя пользователя и пароль(user: <ваше_имя_пользователя> , password: <ваш_пароль>).

Шаг 4 из 5:

Щелкните на Create BASE AG (Создать BASE AG) .

Шаг 5 из 5:

Когда шаг 4 пройден, внизу щелкните: Now continue to step 5 (Теперь переходите к шагу 5).

8. Запуск Snort и проверка статуса сервисов.

Чтобы запустить Snort наберите в режиме терминала:

# snort -c /etc/snort/snort.conf -i eth0 -D

Эта команда запускает snort с использованием интерфейса eth0 в демо-режиме.

Вы можете убедиться, что сервис запущен, с помощью следующей команды:

# ps aux | grep snort

Если сервис работает, вы увидите что-то, похожее на следующее snort -c /etc/snort/snort.conf -i eth0 -D .

Убедитесь, что все необходимые сервисы работают путем выполнения следующих команд:

# /etc/init.d/mysql status # /etc/init.d/apache2 status # /etc/init.d/snort status

Если сервисы работают, вы увидите ответное сообщение .

Если нужно, запустите команду
# /etc/init.d/ restart
для каждого из сервисов, который должен быть перезапущен.

Введение

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

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

Из минусов можно выделить неудобность настройки и установки на некоторых ОС (например, Windows), отсутствие единого достаточно полного и подробного описания настройки и разработки собственного набора правил.

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

Основная задача этой работы состоит в том, что бы разобраться с функциональными особенностями работы IDS Snort, проверить работу приложения производя на него разного рода сетевые атаки. Выяснить есть ли аналогичные IDS в более удобном формате. Как Snort взаимодействует с базами данных. Разработать несколько уникальных правил и проверить их на работоспособность.

Установка и настройка IDS Snort

Snort: Установка на ОС Windows XP

При установке Snort на операционную систему Windows могут возникнуть некоторые сложности. Поэтому в этой работе уделяется достаточно подробная часть установки и возможностей настройки. Для начала нужно скачать требуемые программы на рабочий компьютер.

Правила для Snort.

Все вышеуказанное скачивается с официальных сайтов этих приложений.

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

var RULE_PATH c:snort ules

var SO_RULE_PATH c:snortso_rules

var PREPROC_RULE_PATH c:snortpreproc_rules

dynamicpreprocessor directory c:snortlibsnort_dynamicpreprocessor

dynamicengine c:snortlibsnort_dynamicenginesf_engine.dll

#dynamicdetection directory /usr/local/lib/snort_dynamicrules

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

Рис. 1.1.

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

С:Snortinsnort -i 3 -c C:snortetcsnort.conf -l C:snortlog -A console

Разберем теперь команду которую мы ввели. "- i 3" означает что мы будем просматривать интерфейс который имеет ID= 3 в списке наших интерфейсов. Затем мы указали путь до файла конфигурации и путь до каталога куда следует записывать "log" перехваченных пакетов. "-A console" обозначает что тревожные пакеты будут выявляться у нас в консоли. Если во время обработки возникают какие либо неполадки устраняем их по ходу выявления. Snort указывает строку и вид ошибки при сборке. Если все сработало, то мы ничего не увидим до тех пор пока не сработает одно из запущенных правил. Что бы задействовать одно из них попробуем имитировать сетевую атаку и запустим подозрительный пакет по нашей локальной сети. Для этого к примеру откроем командную строку и введем следующее: "Ping 192.168.1.16". Snort перехватит попытку прослушать хост под адресом 192.168.1.1624 и выведет сообщение и информацию об подозрительном действии в сети. К сожалению у подобных IDS систем есть сильный недостаток -это ложные срабатывания. В связи с этим для того что бы Snort был полезным и не вводил в заблуждение, нужно достаточно емко и четко прописывать правила и разграничивать просматриваемые сети, что бы избежать этих ложных срабатываний.


Рис. 1.2.

Сейчас в консоли, где работает наш IDS, появятся сообщения о подозрительном пакете, который напоминает "прослушивание". Это задействованное правило показало, что Snort полностью работоспособен. Рассмотрим режимы его работы и синтаксис правил для дальнейшей работы.

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

Государственное образовательное учреждение высшего профессионального образования

«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
АЭРОКОСМИЧЕСКОГО ПРИБОРОСТРОЕНИЯ»

КУРСОВАЯ РАБОТА (ПРОЕКТ)
ЗАЩИЩЕНА С ОЦЕНКОЙ отлично

РУКОВОДИТЕЛЬ

доц., к. т.н., доц.

должность, уч. степень, звание

подпись, дата

инициалы, фамилия

ПОЯСНИТЕЛЬНАЯ ЗАПИСКА К КУРСОВОЙ РАБОТЕ (ПРОЕКТУ)

Практика использования IDS SNORT

по дисциплине: инженерно-техническая защита информации

РАБОТУ ВЫПОЛНИЛ(А)

СТУДЕНТ(КА) ГР.

подпись, дата

инициалы, фамилия

Санкт-Петербург 2011

1.. Что такое Snort?. 2

2. Режим сниффера : 2

3. Режим журналирования пакетов . 6

4. Режим обнаружения сетевых вторжений. 6

1. Что такое Snort?

Snort – облегченная система обнаружения вторжения. Snort обычно называют “облегченным” NIDS /расшифровать, перевести/, - потому что это он разработан прежде всего для маленьких сетей. Программа может исполнять анализ протокола и может использоваться, чтобы обнаружить разнообразные нападения.

Snort использует "правила" (указанные в файлах "правила"), чтобы знать какой трафик пропустить а какой задержать. Инструмент гибок, позволяя записывать новые правила и соблюдать их.

Snort может работать в 3 основных режимах:

· Режим сниффера: позволяет просто ловить пакеты из сети и отображать их на экране(как правило консоли)

· Режим журналирования пакетов: позволяет сохранять пакеты на жесткий диск


· Режим системы обнаружения вторжений (NIDS) - наиболее сложная и настраиваемая конфигурация, которая позволяет анализировать сетевой трафик на основе определяемых пользователем набора правил.

2. Режим сниффера :

В режиме анализа пакетов, Snort просто читает пакеты, приходящие из сети, и выводит их на экран. Для вывода заголовков пакетовов TCP/IP необходимо выполнить:

snort –v

Эта команда выводит заголовки IP - и TCP/UDP/ICMP-пакетов. Можно увидеть откуда отсылались пакеты, куда, во сколько /адресов?/. На рисунке /рисунки надо нумеровать, чтобы ссылаться. Ссылки нет – значит рисунок не нужен/ видно, что исходящих адреса два./откуда видно? Расшифруйте форматы записей на рисунке или хоть по номеру строки сошлитесь/

Чтобы понять, что это за адреса - достаточно выполнить команду

systeminfo


Из снимка /уже - снимки. а не рисунки? В пределах документа должно соблюдаться единообразие! Или это – нечто другое?/ становится понятно, что это за исходящие адреса. /ну и перечислите – или по крайней мере укажите. что их номера приведены в квадратных скобках/

Для того чтобы увидеть данные, содержащиеся в пакетах, необходимо ввести:

snort - vd

https://pandia.ru/text/78/320/images/image004_112.jpg" alt="подробный_вывод.jpg" width="589" height="338">

Ключи могут быть заданы в любой форме, например: "snort - vde", "snort - d - ev" и "snort - e - v -d".

Snort будет собирать информацию до тех пор, пока его не прервать. Для завершения захвата пакетов необходимо нажать Ctrl-C. После нажатия Ctrl-C будет выведен отчет о захваченных пакетах. Ниже показан отчет, полученный после работы Snort в течение приблизительно минуты.

Из снимка видно, что большинство проанализированных пакетов являются пакетами TCP/IP. Также были захвачены и UDP пакеты.

3. Режим журналирования пакетов

Режим журналирования пакетов позволяет записывать поток информации на диск. Это полезно при проведении анализа за определенный интервал времени или проверки изменений в настройках и политике безопасности.
Необходимо создать и указать каталог для логов, а Snort автоматически перейдет в режим журналирования пакетов.

Пример: создаем каталог logs и запускаем:

snort - dev - l../log

В результате операции /куда, где его искать, как указать желательное место?/ запишется файл snort. log.. Цифры в конце новых имен файлов являются временными метками, что позволяет избегать конфликтов при создании файлов. /желателен пример лог-файла/

4. Режим обнаружения сетевых вторжений

Третий режим Snort, это режим обнаружения сетевых вторжений (Network Intrusion Detection, NIDS).

В своей базовой форме правило Snort /где они хранятся?/ имеет две части: заголовок и параметры. Ниже представлен пример правила.

alert tcp any any -> any any (content: "www. "; msg: "Someone is visiting youtube now"; sid:1000002; rev:1)

Модель структуры правил можно представить /она жестко задана или может изменяться? то, что элементы в квадратных скобках – необязательны, надеемся. известно. Но есть ли между ними спецразделители?/ по следующей схеме:

<действие_правила> <протокол> <порт> <оператор_направления>


<порт> ([мета_данные] [даные_о_содержимом_пакета]

[данные_в_заголовке] [действие_после_обнаружения])

Действия правил делятся на следующие категории:

1. alert - Создать предупреждение, используя выбранный метод, и передать информацию системе журналирования.

2. log - Использовать систему журналирования для записи информации о пакете.

3. pass - Игнорировать пакет.

4. activate - Использовать другое динамическое правило.

5. dynamic - После того, как выполнится активное правило, задействуется правило с процедурой журналирования.

6. drop - Отбросить пакет, используя программный брандмэуер, и передать информацию системе журналирования

7. sdrop - Отбросить пакет при помощи программного брандмэуера и не использовать систему журналирования.

8. reject - Используя брандмэуер, отбросить пакет в том случае, если протокол TCP, или же записать в файл журнала сообщение: ICMP порт недоступен, если пакет приходит по протоколу UDP

Второй частью правила Snort служат опции, задающие дополнительные детали выявляемого трафика. Можно искать по набору полей в заголовке TCP/ или по полезной нагрузке пакета. За каждой опцией должны следовать кавычки и разыскиваемое значение. Можно добавить несколько опций, разделяя их с помощью точки с запятой. Ниже приведены допустимые опции.

sid – уникальная метка, идентифицирующая правило. Эта опция должна использоваться с опцией rev .

<100 зарезервировано для дальнейшего использования

100-999,999 уже зарезервированные правила

>=1,000,000 правила, задаваемые пользователем

rev - значение версии правила. С помощью rev интерпретатор правил

Snort определяет версию написанного правила.

Запуск Snort в режиме IDS можно осуществить командой:

snort - c "D:\Program Files\Snort\etc\snort. conf" - l " D:\Program Files\Snort\log" - A console - i 1

ключ –с означает, что включен режим IDS

ключ l включает режим записи на жесткий диск с указанием пути к файлу

ключ A показывает что все предупрежления(alerts) будут дублтроваться выводом на консоль

ключ i указывает на порядковый номер(index) интересующего нас интерфейса

чтобы узнать поддерживаемые интерфейсы необходимо выполнить команду:

snort W

Содержимое файла snort. conf

Содержимое файла *****les:

В файл snort. conf можно подсоединять правила использую ключевое слово include .

Результат выполнения команды:

Видно, что Snort зафиксировал попытку попасть на “опасный” сайт.

Нет информации об источнике, откуда был взят дистрибутив, об ОС, на которой велось исследование

В целом работа весьма интересна. /

Рассказать друзьям