🐧 Настройка системы обнаружения вредоносного трафика Maltrail на Linux — Information Security Squad
🐧 Настройка системы обнаружения вредоносного трафика Maltrail на Linux

Вступление

Maltrail — это система обнаружения вредоносного трафика, использующая общедоступные (черные) списки, содержащие вредоносные и/или обычно подозрительные следы, а также статические следы, скомпилированные из различных отчетов AV и пользовательских списков, где след может быть любым из доменного имени. (например, zvpprsensinaix.com для вредоносного ПО Banjori), URL (например, hXXp: //109.162.38.120/harsh02.exe для известного вредоносного исполняемого файла), IP-адрес (например, 185.130.5.231 для известного злоумышленника) или значение заголовка HTTP User-Agent ( например, sqlmap для автоматического внедрения SQL и инструмента захвата базы данных).

Тем не менее, Maltrail использует (необязательно) усовершенствованные эвристические механизмы, которые могут помочь в обнаружении неизвестных угроз.

Maltrail основан на архитектуре Traffic -> Sensor <-> Server <-> Client.

Sensor  — это автономный компонент, работающий на узле мониторинга или на автономной машине (например, Honeypot), где он «отслеживает» проходящий трафик для занесенных в черный список элементов / следов (то есть доменных имен, URL-адресов и / или IP-адресов)

Источник (Maltrail GitHub) Page).

Больше о Maltrail можно найти на странице Maltrail GitHub.

Эта установка выполняется в системе Debian 10 (Buster) Linux.

Итак, давайте установим систему обнаружения вредоносного трафика Maltrail в Debian 10 (Buster) Linux.

Шаг 1: Обновите ваш сервер

Обновление вашего сервера гарантирует, что мы начнем с того момента, когда на нашем сервере будет установлено самое новое программное обеспечение.

Выполните команду, показанную ниже.

sudo apt update && sudo apt update

Шаг 2: Установите Maltrail Sensor и schedtool

Sensor — это автономный компонент, работающий на узле мониторинга или на автономной машине, где он «отслеживает» прохождение трафика с занесенными в черный список элементами / следами.

Установите его, выполнив команды:

Установите ‘schedtool‘ для лучшего планирования ЦП

schedtool помогает лучше планировать использование процессора

sudo apt-get install schedtool

Далее будут установлены git и python-pcapy, вытащите файлы со страницы Maltrail GitHub и установите их.

sudo apt-get install git python-pcapy -y
git clone https://github.com/stamparm/maltrail.git
cd maltrail
sudo python sensor.py &
После последней команды вы должны увидеть что-то подобное как на скриншоте ниже, так как система загружает и обновляет списки Maltrail, относящиеся к вредоносному трафику.

Шаг 3: Запустите сервер на том же компьютере (необязательно)

Основная роль сервера заключается в хранении сведений о событии и обеспечении внутренней поддержки веб-приложения для создания отчетов.

В конфигурации по умолчанию Server и Sensor будут работать на одном компьютере.

Чтобы запустить сервер на том же компьютере, выполните команды, показанные ниже.

[[ -d maltrail ]] || git clone https://github.com/stamparm/maltrail.git
cd maltrail
python server.py &
Теперь вы можете получить доступ к веб-интерфейсу пользователя, введя http://<ip или FQDN>:8338.
Учетные данные по умолчанию: имя пользователя: admin  пароль: changeme!

Шаг 4: Настройка конфигурации сенсора и сервера

Для этого есть конфигурационный файл.

Просто зайдите в каталог, в который вы клонировали как maltrail, и найдите «maltrail.conf»

sudo vim /home/tech/maltrail/maltrail.conf
Внутри файла вы найдете различные категории в квадратных скобках.
Для сервера найдите # [Server], а для настроек сенсоре найдите # [Sensor].
В качестве примера, давайте изменим IP-адрес по умолчанию, который вы хотите, чтобы сервер прослушивал.
#[Server]

#Listen address of (reporting) HTTP server
 HTTP_ADDRESS 172.17.196.57
#HTTP_ADDRESS ::
#HTTP_ADDRESS fe80::12c3:7bff:fe6d:cf9b%eno1

#Listen port of (reporting) HTTP server
 HTTP_PORT 8338
#Use SSL/TLS
 USE_SSL false
#SSL/TLS (private/cert) PEM file (e.g. openssl req -new -x509 -keyout server.pem -out server.pem -days 1023 -nodes)
#SSL_PEM misc/server.pem

#User entries (username:sha256(password):UID:filter_netmask(s))
#Note(s): sha256(password) can be generated on Linux with: echo -n 'password' | sha256sum | cut -d " " -f 1
#UID >= 1000 have only rights to display results (Note: this moment only functionality implemented at the client side)
#filter_netmask(s) is/are used to filter results
 USERS
     admin:9ab3cd9d67bf49d01f6a2e33d0bd9bc804ddbe6ce1ff5d219c42624851db5dbc:0:                        # changeme!      
 #local:9ab3cd9d67bf49d01f6a2e33d0bd9bc804ddbe6ce1ff5d219c42624851db5dbc:1000:192.168.0.0/16

Чтобы изменить пароль по умолчанию, найдите «USERS».

Под ним вы увидите admin и длинную строку, представляющую пароль.

Чтобы создать новый пароль, используйте, показанную команду ниже.

Система должен создать строку, похожую на ту, которую мы увидели в файле.

Перед ней вы можете разместить любое имя пользователя.

В конце пароля не забудьте добавить параметры (:0:).

echo -n 'StrongPassword' | sha256sum | cut -d " " -f 1

05a181f00c157f70413d33701778a6ee7d2747ac18b9c0fbb8bd71a62dd7a223

The string produced represents StrongPassword as the password

Откройте тот же файл и отредактируйте его, чтобы установить новые учетные данные

#[Server]

#Listen address of (reporting) HTTP server
 HTTP_ADDRESS 172.17.196.57
#HTTP_ADDRESS ::
#HTTP_ADDRESS fe80::12c3:7bff:fe6d:cf9b%eno1

#Listen port of (reporting) HTTP server
 HTTP_PORT 8338

#Use SSL/TLS
 USE_SSL false
#SSL/TLS (private/cert) PEM file (e.g. openssl req -new -x509 -keyout server.pem -out server.pem -days 1023 -nodes)
#SSL_PEM misc/server.pem

#User entries (username:sha256(password):UID:filter_netmask(s))
#Note(s): sha256(password) can be generated on Linux with: echo -n 'password' | sha256sum | cut -d " " -f 1
#UID >= 1000 have only rights to display results (Note: this moment only functionality implemented at the client side)
#filter_netmask(s) is/are used to filter results
#filter_netmask(s) is/are used to filter results
 USERS
#admin:9ab3cd9d67bf49d01f6a2e33d0bd9bc804ddbe6ce1ff5d219c42624851db5dbc:0:                        # changeme!
#local:9ab3cd9d67bf49d01f6a2e33d0bd9bc804ddbe6ce1ff5d219c42624851db5dbc:1000:192.168.0.0/16       # changeme!
 Admin:05a181f00c157f70413d33701778a6ee7d2747ac18b9c0fbb8bd71a62dd7a223:0:  ## Новые креды

После того, как вы внесли эти изменения, остановите и запустите заново Maltrail.

cd /home/tech/maltrail
pkill -f server.py
python server.py &

Шаг 5: Проверьте, что все работает

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

ping -c 1 136.161.101.53
cat /var/log/maltrail/$(date +"%Y-%m-%d").log

Также для проверки захвата DNS-трафика вы можете попробовать следующее:

nslookup morphed.ru
cat /var/log/maltrail/$(date +"%Y-%m-%d").log
Чтобы увидеть запросы, сделанные в веб-интерфейсе, просто обновите эту страницу!

Заключение

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

Несмотря на то, что 100-процентная безопасность не гарантирована, смягчение рисков всегда целесообразно.

Взгляните на инструмент и проверьте его, соответствует ли он вашим потребностям.

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

Ваш e-mail не будет опубликован. Обязательные поля помечены *