Как использовать систему обнаружения вторжений Snort в Linux — CloudSavvy IT

Морда свиньи
Shutterstock / RussieseO

Запустите Snort в Linux и защитите свою сеть с помощью анализа трафика в реальном времени и обнаружения угроз. Безопасность — это все, а Snort — это продукт мирового класса. Эта свинья может просто спасти твой бекон.

Что такое Snort?

Snort — один из самых известных и широко используемых системы обнаружения сетевых вторжений (NIDS). Его назвали одним из самые важные проекты с открытым исходным кодом за все время. Первоначально разработан Sourcefire, он поддерживался Cisco Группа разведки и исследований в области безопасности Talos поскольку Cisco приобрела Sourcefire в 2013 году..

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

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

Правила Snort

Есть три набора правил:

  • Правила сообщества: Это бесплатные наборы правил, созданные сообществом пользователей Snort.
  • Зарегистрированные правила: Эти наборы правил предоставляются Талосом. Они также находятся в свободном доступе, но вы должны зарегистрироваться, чтобы их получить. Регистрация бесплатна и занимает всего несколько минут. Вы получите личное Oinkcode которые вам нужно включить в запрос на скачивание.
  • Правила подписки: Это те же правила, что и зарегистрированные правила. Однако подписчики получают правила примерно за месяц до того, как они будут выпущены в виде бесплатных наборов правил для зарегистрированных пользователей. На момент написания 12-месячная подписка начиналась с 29 долларов США для личного использования и 399 долларов США для использования в бизнесе.

Установка Snort

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

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

Для исследования этой статьи мы установили Snort на Ubuntu 20.04, Fedora 32 и Manjaro 20.0.1.

Чтобы установить Snort в Ubuntu, используйте эту команду:

sudo apt-get install snort

sudo apt-get install snort в окне терминала

В процессе установки вам зададут несколько вопросов. Вы можете найти ответы на эти вопросы, используя ip addr перед началом установки или в отдельном окне терминала.

ip  addr

ip addr в окне терминала

Обратите внимание на имя вашего сетевого интерфейса. На этом исследовательском компьютере enp0s3.

Также посмотрите на свой айпи адрес. Этот компьютер имеет IP-адрес 192.168.1.24. Дополнительный «/24» является бесклассовая междоменная маршрутизация (CIDR) обозначение. Это сообщает нам диапазон сетевых адресов. Это означает, что эта сеть имеет маску подсети 255.255.255.0, который имеет три ведущих набора по восемь бит (и 3 x 8 = 24). Вам не нужно особо беспокоиться об этом, просто запишите любой ваш IP-адрес, включая нотацию CIDR. Вам необходимо предоставить это как ответ на один из вопросов, при этом последний октет IP-адреса будет изменен на ноль. В нашем примере это 192.168.1.0/24.

Нажмите «Tab», чтобы выделить кнопку «ОК», и нажмите «Enter».

Страница предварительной настройки в окне терминала

Введите имя сетевого интерфейса и нажмите «Tab», чтобы выделить кнопку «ОК», и нажмите «Enter».

Установка имени интерфейса в окне терминала

Введите диапазон сетевых адресов в формате CIDR, нажмите «Tab», чтобы выделить кнопку «OK», и нажмите «Enter».

предоставление сведений о сети в нотации CIDR в терминале windwo

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

rpm -Uvh https://forensics.cert.org/cert-forensics-tools-release-32.rpm

rpm -Uvh https://forensics.cert.org/cert-forensics-tools-release-32.rpm в окне терминала

sudo dnf install snort

sudo dnf установить snort в окне терминала

На Manjaro нужная нам команда не совсем обычная pacman, это pamac. И нам не нужно использовать sudo:

pamac install snort

pamac установить snort в окне терминала

Когда вас спросят, хотите ли вы собрать Snort из AUR (Репозиторий пользователей Arch) нажмите «Y» и нажмите «Enter». Мы не хотим редактировать файлы сборки, поэтому ответьте на этот вопрос, нажав «N» и нажав «Enter». Нажмите «Y», а затем «Enter», когда вас спросят, следует ли применять транзакцию.

Вам будет предложено ввести пароль.

Были установлены следующие версии Snort:

  • Ubuntu: 2.9.7.0
  • Fedora: 2.9.16.1
  • Манджаро: 2.9.16.1

Вы можете проверить свою версию, используя:

snort --version

snort --version в окне терминала

Настройка Snort

Прежде чем мы сможем запустить Snort, необходимо выполнить несколько шагов. Нам нужно отредактировать файл «snort.conf».

sudo gedit /etc/snort/snort.conf

sudo gedit /etc/snort/snort.conf в окне терминала

Найдите строку с надписью «ipvar HOME_NET any»И отредактируйте его, заменив« любой »диапазоном адресов в нотации CIDR вашей сети.

файл конфигурации snort.conf в редакторе gedit

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

Обновление правил Snort

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

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

Загрузите набор правил для установленной вами версии Snort. Мы загружаем версию 2.9.8.3, которая ближе всего к версии 2.9.7.0 Snort, которая была в репозитории Ubuntu.

wget https://www.snort.org/rules/snortrules-snapshot-2983.tar.gz?oinkcode=<your oink code goes here> -O snortrules-snapshot-2983.tar.gz

wget https://www.snort.org/rules/snortrules-snapshot-2983.tar.gz?oinkcode=< здесь находится ваш код oink> -O snortrules-snapshot-2983.tar.gz в окне терминала» width=»646″ height=»97″ onload=»pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);» onerror=»this.onerror=null;pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);»/></p><p>После завершения загрузки используйте эту команду, чтобы извлечь правила и установить их в каталог «/ etc / snort / rules».</p><pre>sudo tar -xvzf snortrules-snapshot-2983.tar.gc -C /etc/snort/rules</pre><p><img data-lazyloaded=

Беспорядочный режим

Сетевые карты обычно игнорируют трафик, не предназначенный для их IP-адреса. Мы хотим, чтобы Snort обнаруживал подозрительный сетевой трафик, адресованный любому устройству в сети, а не только сетевой трафик, который отправляется на компьютер, на котором установлен Snort.

Чтобы сетевой интерфейс компьютера Snort прослушивал весь сетевой трафик, нам нужно установить его в неразборчивый режим. Следующая команда вызовет сетевой интерфейс enp0s3 действовать в беспорядочном режиме. Замена enp0s3 с именем сетевого интерфейса, который вы используете на своем компьютере.

sudo ip link set enp0s3 promisc on

sudo ip link установить enp0s3 promisc в окне терминала

Если вы запускаете Snort на виртуальной машине, не забудьте также изменить настройки в гипервизоре для виртуальной сетевой карты, используемой вашей виртуальной машиной. Например, в VirtualBox вам нужно перейти в Settings > Network > Advanced и в раскрывающемся списке «Беспорядочный режим» выберите «Разрешить все».

Вкладка настроек сетевого адаптера VirtualBox

СВЯЗАННЫЙ: Как использовать команду ip в Linux

Запуск Snort

Теперь вы можете запустить Snort. Формат команды:

sudo snort -d -l /var/log/snort/ -h 192.168.1.0/24 -A console -c /etc/snort/snort.conf

sudo snort -d -l / var / log / snort -h 192.168.1.0/24 -A console -c /etc/snort/snort.conf в окне терминала

Замените диапазон IP-адресов своей сети вместо 192.168.1.0/24.

В этой команде используются следующие параметры командной строки:

  • -d: Отфильтровывает пакеты прикладного уровня.
  • -l / var / журнал / snort /: Устанавливает каталог регистрации.
  • -h 192.168.1.0/24: Это не устанавливает домашнюю сеть, которая была установлена ​​в файле «snort.conf». Если для этого значения установлено то же значение, что и для домашней сети, журналы структурированы таким образом, что содержимое подозрительных удаленных компьютеров записывается в каталоги, названные в честь каждого удаленного компьютера.
  • -Консоль: Отправляет предупреждения в окно консоли.
  • -c /etc/snort/snort.conf: Указывает, какой файл конфигурации Snort использовать.

Snort прокручивает большую часть вывода в окне терминала, а затем переходит в режим мониторинга и анализа. Если он не увидит какую-либо подозрительную активность, вы больше не увидите вывод на экран.

Snort работает в окне терминала

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

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

Snort определяет сетевой трафик как потенциально вредоносный, отправляет предупреждения в окно консоли и записывает записи в журналы.

Атаки, классифицируемые как «утечки информации», указывают на то, что на вашем компьютере была предпринята попытка получить некоторую информацию, которая могла бы помочь злоумышленнику. Это, вероятно, указывает на то, что кто-то проводит разведку вашей системы.

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

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

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

Активность обнаруживается и сообщается, и мы видим, что эта атака была направлена ​​против другого компьютера с IP-адресом 192.168.1.26. Snort отслеживает весь диапазон адресов этой сети.

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

Чтобы поддерживать бдительность, Snort нужны актуальные правила. Вы можете написать небольшой скрипт и поместить в него команды для загрузки и установки правил, а также установить cron работа автоматизировать процесс периодически вызывая сценарий. В тушеная свинина script — это готовый сценарий, предназначенный именно для этого, если вы не хотите писать свой собственный.

Snort не имеет внешнего интерфейса или графического пользовательского интерфейса. Сторонние проекты создали несколько, и вы, возможно, захотите изучить некоторые из них, например Snorby и Squil.

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован.