当前位置: 首页 > news >正文

03_Wazuh安装和使用.md

1. Wazuh产品说明

1.1. 目录索引

  • 1. Wazuh产品说明
    • 1.1. 目录索引
    • 1.2. 前言
      • 1.2.1. IDS分类
      • 1.2.2. HIDS
      • 1.2.3. NIDS
    • 1.3. HIDS 的数据源
      • 1.3.1. 系统调用
      • 1.3.2. 审计记录
      • 1.3.3. 文件完整性校验
      • 1.3.4. 注册表监控
      • 1.3.5. IDS 的分析原理
      • 1.3.6. 异常检测
    • 1.4. Wazuh 架构图
      • 1.4.1. 服务端
      • 1.4.2. 客户端
  • 2. Wazuh产品安装
    • 2.1. 离线安装包下载
    • 2.2. centos服务端程序安装
    • 2.3. 查看安装位置
    • 2.4. 启动服务
    • 2.5. API安装
    • 2.6. 配置Wazuh API用户
  • 3. Wazuh基本使用
    • 3.1. 文档结构
    • [3.2. 查看日志](#3.2. -查看日志)
    • 3.3. 小试牛刀 (1) SSH登录失败

1.2. 前言

  • IDS (Instrucion Detection System) 即入侵检测系统。
    • 是一种主动防御的安全技术,主要用于检测网络和系统中的异常行为,如端口扫描、暴力破解、漏洞利用等,以及恶意软件的传播和潜伏。IDS 通过对日志、文件、进程等进行监控,发现异常行为后,会记入安全管理系统(如 SIEM) 或者发送警报,以便安全人员进行进一步的分析和处理。

1.2.1. IDS分类

  • 基于网络的 IDS (NIDS):
    • 基于网络的 IDS 主要用于监控网络流量,发现网络中的异常行为。NIDS 通常部署在网络的边界,如防火墙、路由器等,以便监控网络中的所有流量。
  • 基于主机的 IDS (HIDS):
    • 基于主机的 IDS 主要用于监控主机的日志、文件、进程等,发现主机中的异常行为。HIDS 通常部署在主机上,以便监控主机的所有行为。

1.2.2. HIDS

  • 基于主机的入侵检测系统称为HIDS。
  • 是一种主动防御的安全技术。
  • 检查网络上计算机上的事件,而不是检查系统周围通过的流量,主要用于检测主机中的异常行为。
    • 如端口扫描、暴力破解、漏洞利用等,以及恶意软件的传播和潜伏。HIDS 通过对日志、文件、进程等进行监控,发现异常行为后,会记入安全管理系统 (如 SIEM) 或者发送警报,以便安全人员进行进一步的分析和处理。

1.2.3. NIDS

  • 基于网络的入侵检测,也称为网络入侵检测系统或网络IDS,可检查网络上的流量。因此,典型的IDS必须包括一个数据包嗅探器,以收集网络流量进行分析。

  • NIDSx的分析引擎通常基于规则,可以通过添加自己的规则进行修改。对于许多NIDS,系统的提供者或用户社区将向您提供规则,您只需将规则导入到您的实现中即可。熟悉所选NIDS的规则语法后,便可以创建自己的规则。

alt text

1.3. HIDS 的数据源

1.3.1. 系统调用

在 Unix/Linux 系统中,进程在系统中的一系列系统调用被公认为是HIDS的首选数据源。

传统来说,Windows 下由于 DLL 的广泛使用,导致谁调用了特定的系统调用变得不那么明确。但是 G. Creech 在2014年的研究中,提出了一种基于 Windows 的 HIDS,通过基于虚拟内核理论 (The Virtual Kernel Concept),监控 DLL 函数调用踪迹,实现了类似于 Unix/Linux 下的 System Call Trace。

1.3.2. 审计记录

大多数现代操作系统以及很多应用程序都会记录一些重要的事件,如用户登录、文件访问、进程创建等。这些记录可以作为 HIDS 的数据源。

1.3.3. 文件完整性校验

文件完整性校验是一种被动的防御技术,主要用于检测文件是否被篡改。HIDS 可以通过文件完整性校验来检测文件是否被篡改,从而发现异常行为。

本方法的缺点是,需要用已有的正常文件生成一个文件完整性校验数据库,并且定期监控维护,这个过程需要花费大量的时间和资源。

Tripwire 就是一个基于文件完整性校验的 HIDS。Tripwire 会根据策略文件配置,监视文件的哈希值、权限、所有权等,从而发现文件是否被篡改。

1.3.4. 注册表监控

Windows 系统中的注册表是一个重要的配置数据库,记录了系统的配置信息。HIDS 可以通过监控注册表的变化,发现异常行为。

本方法的缺点是,注册表仅局限于 Windows,且变化非常频繁、数量庞大,监控可能会带来较大的性能开销。恶意软件对注册表的修改也较少,因此注册表监控的效果可能不是很好。

1.3.5. IDS 的分析原理

判断一个检测方法能力高低的最主要的指标是误报 (False Positive, FP) 率和漏报 (False Negative, FN) 率,而衡量整个系统好坏还需要考虑到系统的效率。

在 IDS 系统中,常见的检测方法有异常检测 (Anomaly Detection) 和特征或启发式检测 (Signature or Heuristic Detection)。前者定义了正常行为的模型,来判断是否为异常行为;后者则直接检测行为是否为恶意行为。

1.3.6. 异常检测

异常检测首先会有一个训练阶段,用于生成一个正常行为的模型。在训练阶段,IDS 会监控系统的行为,生成一个正常行为的模型。训练过程可以在不同的时间段进行,也可以持续训练使其演化。

如前文提到的,HIDS 中通常利用系统调用来作为数据源。在 Linux 内核源码的arch/x86/entry/syscalls/syscall_64.tbl文件中,列出了x86_64架构下的系统调用 (如 Code 1 所示)。HIDS 可以通过监控系统调用的调用次数、调用顺序、调用参数等,来生成一个正常行为的模型。当系统调用的行为与模型不符时,IDS 就会判断为异常行为。

1.4. Wazuh 架构图

  • HIDS开源产品:Wazuh
  • 官网文档:https://documentation.wazuh.com/current/getting-started/components/wazuh-indexer.html
  • 开源项目:https://github.com/wazuh/wazuh

1.4.1. 服务端

alt text

1.4.2. 客户端

alt text

2. Wazuh产品安装

2.1. 离线安装包下载

  • 服务端程序安装包
    服务端程序安装包

  • linux 客户端
    linux 客户端

  • windows 客户端
    windows 客户端

2.2. centos服务端程序安装

[root@localhost ~]# rpm -ivh wazuh-manager-4.12.0-1.x86_64.rpm
warning: wazuh-manager-4.12.0-1.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID 29111145: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...1:wazuh-manager-4.12.0-1           ################################# [100%]
[root@localhost ~]# rpm -qa|grep wazuh
wazuh-manager-4.12.0-1.x86_64

2.3. 查看安装位置

[root@localhost ~]# rpm -ql wazuh-manager-4.12.0-1.x86_64 |head
/etc/ossec-init.conf
/etc/rc.d/init.d/wazuh-manager
/usr/lib/systemd/system/wazuh-manager.service
/var/ossec
/var/ossec/.ssh
/var/ossec/VERSION.json
/var/ossec/active-response
/var/ossec/active-response/bin
/var/ossec/active-response/bin/default-firewall-drop
/var/ossec/active-response/bin/disable-account

2.4. 启动服务

systemctl start wazuh-manager.service #启动服务
systemctl status wazuh-manager.service #查看服务状态

2.5. API安装


# 安装nodejs10
curl -sL https://rpm.nodesource.com/setup_10.x | bash -
yum install nodejs.x86_64 nodejs-devel.x86_64 -y# 安装wazuh api
rpm -ivh wazuh-api-3.9.2-1.x86_64.rpm# 安装完成后默认设置为开机自启并且已经启动该服务
systemctl status wazuh-api.service

2.6. 配置Wazuh API用户


# 配置端口账户等信息
cd /var/ossec/api/scripts
./configure_api.sh# 查看用户信息
cat /var/ossec/api/configuration/auth/user

3. Wazuh基本使用

3.1. 文档结构

OSSEC默认安装目录:/var/ossec,包含以下关键文件夹:

  • active-response:存放主动响应脚本
  • agentless:无代理连接相关文件
  • bin:核心程序(如ossec-controlmanage_agents
  • etc:配置文件(如ossec.conf
  • logs:核心日志(含警报、归档等)
  • queue:临时队列文件
  • rules:入侵检测规则
  • stats:系统统计数据
  • tmp var:内部临时目录

3.2. 查看日志

日志文件路径:

  • 文本格式:/var/ossec/logs/alerts/alerts.log
  • JSON格式:/var/ossec/logs/alerts/alerts.json

3.3. 小试牛刀 (1) SSH登录失败

测试步骤

  1. 使用错误密码通过SSH登录主机(如wazuh)。
  2. 验证Wazuh是否触发警报(日志ID 5716,级别为5级,数字越大越严重)。

实时监控命令

tail -f /var/ossec/logs/alerts/alerts.log  
# 或  
tail -f /var/ossec/logs/alerts/alerts.json  

触发规则


[root@localhost ossec]# egrep -n2 '5760' ruleset/rules/0095-sshd_rules.xml
453-  </rule>
454-
455:  <rule id="5760" level="5">
456-    <if_sid>5700,5716</if_sid>
457-    <match>Failed password|Failed keyboard|authentication error</match>
--
478-
479-  <rule id="5763" level="10" frequency="8" timeframe="120" ignore="60">
480:    <if_matched_sid>5760</if_matched_sid>
481-    <same_source_ip/>
482-    <description>sshd: brute force trying to get access to the system. Authentication failed.</description>

查看触发规则5760日志

[root@localhost ruleset]# grep -n1 "5760" /var/ossec/logs/alerts/alerts.log
4803-2025 Jul 28 21:13:22 localhost.localdomain->journald
4804:Rule: 5760 (level 5) -> 'sshd: authentication failed.'
4805-Src IP: 192.168.226.1
--
4811-2025 Jul 28 21:13:24 localhost.localdomain->journald
4812:Rule: 5760 (level 5) -> 'sshd: authentication failed.'
4813-Src IP: 192.168.226.1
--

查看触发规则5763日志

[root@localhost ossec]# grep -n2 "5763" /var/ossec/logs/alerts/alerts.log
4908-** Alert 1753708440.697939: - syslog,sshd,authentication_failures,gdpr_IV_35.7.d,gdpr_IV_32.2,hipaa_164.312.b,nist_800_53_SI.4,nist_800_53_AU.14,nist_800_53_AC.7,pci_dss_11.4,pci_dss_10.2.4,pci_dss_10.2.5,tsc_CC6.1,tsc_CC6.8,tsc_CC7.2,tsc_CC7.3,
4909-2025 Jul 28 21:14:00 localhost.localdomain->journald
4910:Rule: 5763 (level 10) -> 'sshd: brute force trying to get access to the system. Authentication failed.'
4911-Src IP: 192.168.226.1
4912-Src Port: 10946
http://www.sczhlp.com/news/858.html

相关文章:

  • 01_pfSense防火墙安装和使用文档
  • 通过 nginx 设置外部访问服务器视频
  • 告别堡垒机时代!某电力公司如何用CloudQuery解决2000+数据库的安全困局?
  • LIS笔记
  • CF2122G Tree Parking 题解
  • day25
  • 数据资产到底值不值钱 - 智慧园区
  • 第二十一天
  • 服务器外的文件,复制不到服务器上面
  • PCIe【6】SR-IOV
  • Java面试见闻2025-7
  • 服务器新手常见错误及网站搭建问题解析
  • 7月28日总结
  • html重定向
  • 2025杭电暑期联赛第四场(持续更新)
  • 搜索结果太乱?5种重排序模型让你的搜索系统准确率提升40%
  • 00.01.Linux 应急响应:账号安全与入侵排查
  • 2025年7月28日
  • 7.28 训练总结
  • 人工智能驱动企业:通过情境感知AI重塑组织0引言
  • 亚马逊机器人如何应对交通拥堵
  • 多线程(续)
  • 2025 -- 云智计划 -- 【CSP-S】模拟赛 #1_总结+题解
  • 习题-有限集
  • 29
  • 第二十六天
  • 【题解】P12019 [NOISG 2025 Finals] 洪水
  • pygame小游戏打飞机_2模块显示
  • tt
  • 工程建立 - LI,Yi