在Linux上设置Maltrail恶意流量检测系统

前言

Maltrail是一种恶意流量检测系统,它利用包含恶意和/或一般可疑跟踪的公开可用(黑色)列表(例如,针对Banjori恶意软件的zvpprsensinaix.com) ,URL(例如:已知恶意可执行文件的hXXp://109.162.38.120/harsh02.exe)、IP地址(例如:已知攻击者的185.13.5.231)或HTTP User-Agent标头值(例如,用于自动SQL注入的sqlmap和数据库接管工具)。来源(Maltrail GitHub页面

尽管如此,Maltrail使用高级启发式机制来帮助发现(可选)未知威胁。

Maltrail基于 交通量 -> 感应器 <-> 伺服器 <-> 委托人 建筑学。传感器是在监视节点或独立计算机(例如蜜罐)上运行的独立组件。监控器“通过流量来源将列入黑名单的项目/踪迹(域名,URL,IP)(Maltrail GitHub页面)。有关Maltrail的更多信息, Maltrail GitHub页面

此安装是 Debian 10(Buster) Linux系统。现在,在Debian 10(Buster)Linux上安装Maltrail恶意流量检测系统。

步骤1:更新和升级服务器

当您更新和升级服务器时,所有最新软件都将在服务器上启动。发出以下命令:

sudo apt update && sudo apt update

步骤2:安装Maltrail传感器和schedtool

传感器是运行在监视节点或独立计算机上的独立组件,并“监视”列入黑名单的项目/路径的通过流量。执行以下命令进行安装。

安装“ schedtool”以改善CPU调度

schedtool帮助改善CPU调度

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列表,则会看到类似以下内容的内容:

git文件重复

下载和更新与恶意流量相关的Maltrail列表

在Linux上设置Maltrail恶意流量检测系统

步骤3:在同一台机器上启动服务器(可选)

伺服器它的主要作用是存储事件详细信息,并为报告Web应用程序提供后端支持。在默认配置中,服务器和传感器在同一台计算机上运行。要在同一台计算机上启动服务器,请执行以下命令:

[[ -d maltrail ]] || git clone https://github.com/stamparm/maltrail.git
cd maltrail
python server.py &

在Linux上设置Maltrail恶意流量检测系统

输入http://以访问Web用户界面。:8338。默认凭据是 用户名:管理员 密码:Changeme!

在Linux上设置Maltrail恶意流量检测系统

步骤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       # changeme!

要更改默认密码,请查找“ USERS”。在其下,您将看到一个长字符串,代表admin和您的密码。使用以下命令创建新密码:它应该产生一个在文件中看到的字符串。在此之前,您可以放置​​任何用户名。别忘了在密码末尾添加一个参数(:0:)。

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

05a181f00c157f70413d33701778a6ee7d2747ac18b9c0fbb8bd71a62dd7a223

The string produced represents StrongPassword as the password

打开和编辑相同的文件并设置新的凭据

sudo vim /home/tech/maltrail/maltrail.conf
#[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:  ## New credentials

进行这些更改后,启动和停止麦芽威士忌。

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

要查看Web界面中的请求,只需刷新页面,您将获得类似以下内容的信息:

在Linux上设置Maltrail恶意流量检测系统

结论

Maltrail是增强网络监控并始终保持基础结构安全的绝佳工具。尽管不能保证100%的安全性,但缓解总是明智的。看一下该工具,并根据您的需求对其进行测试。否则,谢谢您的光临并一直待到最后。

请参阅博客上的其他指南。其中一些在下面共享。

安全提示,可保护您的网站免受黑客攻击

使用免费的WordPress安全扫描程序– WPSeku

在Kali Linux 2020.x上安装Metasploit框架

在CentOS 8 / CentOS 7上安装Metasploit框架

使用Nginx在Debian 10(Buster)上安装Cacti Monitoring Server

Sidebar