Wazuh功能——异常和恶意软件检测

异常检测是指在系统中发现与预期行为不匹配的模式的行为。一旦恶意软件(例如rootkit)安装在系统上,它就会修改系统以隐藏自己,不让用户看到。尽管恶意软件使用多种技术来实现这一点,Wazuh却使用了一种广谱的方法来发现异常模式,表明可能存在入侵者。

负责这项任务的主要组件是rootcheck,然而,Syscheck也扮演着重要的角色。

一、怎样工作


1、文件完整性监测

恶意软件可以替换其主机系统上的文件、目录和命令。在系统的主目录上执行文件完整性检查允许检测这些操作。

例子:


2、检查运行的进程

恶意进程可以阻止自己出现在系统进程列表中(ps命令的特洛伊版本)。Rootcheck检查所有进程id (PID),查找不同系统调用(getsid、getpgid)之间的差异。

例子:

Diamorphine是一种内核模式的rootkit,它可以隐藏自己和其他进程,不受ps的影响。如果我们安装这个包并隐藏一个进程,我们会得到如下警告:


3、检查隐藏端口

恶意软件可以使用隐藏端口与攻击者通信。Rootcheck使用bind()检查系统中的每个端口。如果它不能绑定到某个端口,而该端口不在netstat输出中,则可能存在恶意软件。

4、检查异常文件和权限

Wazuh扫描整个文件系统,寻找不寻常的文件和权限。根用户所拥有的具有其他用户帐户(如suid文件、隐藏目录和文件)的写权限的文件都将被检查。

5、使用系统调用检查隐藏文件

Wazuh在使用fopen + read调用时扫描整个系统,比较stat大小和文件大小之间的差异。将每个目录中的节点数与opendir + readdir的输出进行比较。如果任何结果不匹配,恶意软件可能会出现。

警报的例子:


6、扫描/dev目录

dev目录应该只包含特定于设备的文件。任何额外的文件都应该被检查,因为恶意软件使用这个分区来隐藏文件。

例子:

如果您在/dev上创建了一个隐藏文件,Wazuh应该会发出警报,因为在一个目录中有一个隐藏文件,它应该只包含特定于设备的文件。以下是在这种情况下生成的警报:


7、扫描网络接口

Wazuh扫描系统上任何启用混杂模式的网络接口。如果接口处于混杂模式,ifconfig命令的输出将指示它。这可能是恶意软件存在的标志。

8、Rootkit检查

Rootcheck使用自己的rootkit签名数据库执行几个检查:rootkit_files.txt、rootkit_trojansen.txt和win_malware_rcl.txt。不幸的是,这些签名已经过时了。

二、配置

1、基本的例子

要配置syscheck和rootcheck的选项,请转到ossec.conf。如果您想要更多关于可用的确切配置选项的信息,请转到Syscheck部分和Rootcheck部分。另外,请参见以下部分:frequency、rootkit_files和rootkit_trojans。

下面是一个如何为rootkit(文件和木马)配置数据库的基本示例:


2、忽视假阳性


你可能感兴趣的:(Wazuh功能——异常和恶意软件检测)