wazuh中的规则编写以及日志分析

2023-11-15

什么是wazuh

Wazuh是一个免费、开源和企业级的安全监控解决方案,用于威胁检测、完整性监控、事件响应和合规、也就是一套开源的完善的edr。
Wazuh是一个安全检测、可视化和安全合规开源项目。它最初是OSSEC HIDS的一个分支,后来与Elastic Stack和OpenSCAP集成在一起,发展成为一个更全面的解决方案。

Wazuh的功能有:
入侵检测
日志数据分析
完整性检查
漏洞检测
配置评估
应急响应
云、容器安全等。

如何搭建wazuh

1.首先你需要下载VMware软件
2.在github上找到在不同系统的虚拟机下的安装方法(寻找一个适合你自己的系统方式)
3.在github开源网站上下载一个OVA镜像
官方文档:
https://documentation.wazuh.com/current/index.html

实验环境

wazuh的规则

wazuh的规则,在我们wazuh-server的/var/ossec/rulerset/rules这个路径下
在这里插入图片描述
可以清楚的看到有这么多跳规则。
而用户的自定义规则是在/var/ossec/etc/rules目录下。
为什么不把用户自定义的规则放在wazuh的规则目录下,而是放在单独的自定义规则目录下呢?

这是因为wazuh的规则是在实时更新的,如果用户自定义的规则放在wazuh的规则目录下,有可能在更新的时候删除掉用户自定义的规则。
在这里插入图片描述
这是其中一条规则。
ruleid是65260,风险等级为0级。解码器为f5-bigip,description则为它的描述。
其他规则就自行查找,查找自己想要了解的规则。
解码器
说到规则,我们就要了解到解码器,它是十分重要的,以上图片我们已经了解到了解码器是什么东西。

Wazuh中的解码器就是从特定类型的事件中提取相关数据。解码分为预解码阶段和解码阶段。

预解码阶段:从已知字段(如syslog记录头中的字段)提取静态信息。这通常包括时间戳、主机名和程序名,这些值通常在所有syslog消息中都能找到,而不管哪个应用程序生成它们。
解码阶段:将从事件中提取更多的动态信息,如源IP地址、用户名、URL等等。一个或多个解码器专门用于从许多不同的应用程序和日志源中提取字段数据。

我自己的一个理解的它的工作过程:在规则触发后,我们可以看到wazuh给我们报警的实时信息而产生的日志。而解码器呢,通过这个产生的日志,根据解码器自身所编写的规则,将这个日志进行匹配,匹配一些解码器自己想要的字段,然后在将这些字段放到解码器所对应的规则上,在这个规则的一些正则表达式的匹配或者过滤下,进行产生动作,进行拦截或者进行报警。

简单来说,解码器能够从日志中提取一些关键信息,比如时间,主机ip,用户名,端口号等等

然后发送给规则,规则再进行匹配,生成告警,最后发送到可视化界面。

解码器在/var/ossec/ruleset/decoders目录下

配置代理

我这里是直接下载的一个OVA镜像,然后用软件打开就好了。

顺序:
左上角—>文件—>打开—>选择下载好的OVA文件
在这里插入图片描述
这样就装完成一台wazuh服务器了。

光有一台wazuh肯定是不够了,这样就不能体现出它强大的功能了。
我这里使用的centos7的代理。
在这里插入图片描述
填写wazuh service address就是你wazuh-server的ip地址
在这里插入图片描述
我这里是10.0.0.100。
然后直接copy下来安装路径,在centos7代理机下直接安装。
在这里插入图片描述
显示安装成功。
接着
按照给定你的步骤进行重启服务。

sudo systemctl daemon-reload
sudo systemctl enable wazuh-agent
sudo systemctl start wazuh-agent

在wazuh-server的服务机上,查看是否有这个代理。
在这里插入图片描述
可以看到是已经有的。

注:客户端的目录在/var/ossec/下。

在这里插入图片描述
可以很清楚的看到已经产生了一台代理。

wazuh中的配置了解

<global>
    <jsonout_output>yes</jsonout_output>
    
    预警记录
    <alerts_log>yes</alerts_log>
    
    不记录所有
    <logall>no</logall>
    不记录所有的json格式
    <logall_json>no</logall_json>
    邮件相关配置
    <email_notification>no</email_notification>
    <smtp_server>smtp.example.wazuh.com</smtp_server>
    <email_from>wazuh@example.wazuh.com</email_from>
    <email_to>recipient@example.wazuh.com</email_to>
    <email_maxperhour>12</email_maxperhour>
    <email_log_source>alerts.log</email_log_source>
    
    代理100分钟离线
    <agents_disconnection_time>100m</agents_disconnection_time>
    代理告警时间为实时
    <agents_disconnection_alert_time>0</agents_disconnection_alert_time>
  </global>
 <alerts>
  只要预警>=3级及以上就会记录到alert.log中
    <log_alert_level>3</log_alert_level>
    只要>=12级就会发邮件
    <email_alert_level>12</email_alert_level>
  </alerts>
 <remote>
    <connection>secure</connection>
    <port>1514</port>
    <protocol>tcp</protocol>
    <queue_size>131072</queue_size>
  </remote>

上述是客户端连接的端口。

监控root相关
  <!-- Policy monitoring -->
  <rootcheck>
  关闭为no,说明开启了
    <disabled>no</disabled>
    <check_files>yes</check_files>
    <check_trojans>yes</check_trojans>
    <check_dev>yes</check_dev>
    <check_sys>yes</check_sys>
    <check_pids>yes</check_pids>
    <check_ports>yes</check_ports>
    <check_if>yes</check_if>

    <!-- Frequency that rootcheck is executed - every 12 hours -->
    每12小时执行一次
    <frequency>43200</frequency>

监控rootkit(维持root权限的后门)
    <rootkit_files>etc/rootcheck/rootkit_files.txt</rootkit_files>
    <rootkit_trojans>etc/rootcheck/rootkit_trojans.txt</rootkit_trojans>

    <skip_nfs>yes</skip_nfs>
  </rootcheck>

可以看到有很多基线检查,比如

debian_linux操作系统的基线检查、MySQL的基线检查

rhel_linux操作系统的基线检查、Windows2012R2操作系统的基线检查等

wazuh可以检测了很多后门或者蠕虫可能存在的文件位置,基本上涵盖了百分之90的后门

ssh的暴力破解

我们使用kali进行暴力破解
在这里插入图片描述
查看wazuh的报警信息。
在这里插入图片描述
可以看到有报警日志,风险等级为5,规则的id是5710。

用户自定义规则

除了在wazuh服务器上自带的规则外,我们还可以自己编写一些我们自己想要进行防御的规则。

在wazuh的官方文档,我们可以进行清楚的了解如何编写我们想要的规则。

https://wazuh.com/blog/detecting-common-linux-persistence-techniques-with-wazuh/

SQL注入的检测

在你的代理机centos上装上apache服务器。
在这里插入图片描述
在这里插入图片描述
然后我测试,写一些注入语句。
在这里插入图片描述
我们可以看到wazuh-server出现了报警信息。
在这里插入图片描述
已经出现了告警,显示尝试SQL注入

我们怎么去防御呢?wazuh有它自身的Active-response。

wazuh有两种封堵方式:

根据告警等级来封堵,比如说当告警等级大于7时,自动进行封堵,但这也容易造成误判,范围太大
根据规则ID来封堵,当触发了某条规则时,自动进行封堵,但这范围太小,面对多条规则不便于写配置文件。

在wazuh服务器,也就是manager的配置文件里写入如下内容

当触发31103和31171这两条规则时,执行firewall-drop命令。

<active-response>
    <command>firewall-drop</command>
    <location>local</location>
    <rules_id>31103,31171</rules_id>
    <timeout>600</timeout>
</active-response>

然后我们同样进行测试。
可以发现这次进行SQL注入时直接就被进行了拦截了。
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

wazuh中的规则编写以及日志分析 的相关文章

  • 正则表达式中的“^“这个符号的一些思考

    在学习正则表达式的时候 一些常见的规则我们都不难理解 但是有 一个正则表达式中的特殊字符让我一直有点搞不懂 就是 这个字符 文档上给出了解释是匹配输入的开始 如果多行标示被设置成了true 同时会匹配后面紧跟的字符 比如 A 会匹配 An
  • 去除多余的0;正则表达式:去掉数字(整数、小数)前面多余的零

    方案1 来源 http zhidao baidu com question 277893180 html 如果是整数 去掉整数前的零 例如 0098765 gt 98765 如果是小数 去掉小数前的零 例如 000 333 gt 0 333
  • perl regex是什么_如何在Perl单行代码中使用Regex匹配多行

    perl regex是什么 Perl one liners with perl s regular expression statement can be a very powerful text processing tools used
  • C语言的一个正则表达式pcre

    1 简介 在C C 中 一个比较好的正则表达式是pcre 被很多工具 包括一些商用工具 使用 2 源码下载 安装 2 1 下载 可以从官网http www pcre org 下载 为方便学习 已放在这里http download csdn
  • 正则表达式中.*的作用

    今天看正则表达式的书籍是看到这么个例子 要求匹配 文章中的xml 匹配使用的正则表达式为 lt xml gt 一开始没有理解 是做什么用处的 百度了一番后明白了 原来 中 代表任意单个字符 包括空格 代表前面任意单个字符的重复次数 因此 l
  • 制作自己的 Kindle 电子书

    想象以下场景 你刚收到一台新的 Kindle Paperwhite 心中已然响起了轰轰烈烈的 我今年 或这个冬天 一定要阅读 100 本书 结果发现 想看的书 Amazon 上找不到 或者排版很糟糕 如何解决 自己动手做呗 准备工作 我使用
  • Java使用 java.util.regex.Pattern 正则表达式校验参数值是否规范

    场景 java中我们可以利用 Pattern 注解对某个入参进行规则校验 但有些特殊参数在接口入口处不方便校验 需要在代码中校验 一 使用 Pattern 注解校验 Pattern regexp a zA Z0 9 message xxx号
  • Java的replaceAll()方法

    replaceAll 方法实际是采用正则表达式的规则去匹配的 在regex中 表示一个 在java中一个 也要用 表示 这样 前一个 代表regex中的 后一个 代表java中的 所以字符串转义一次 正则转义一次 那么一个斜扛要写4个 1
  • Web前端复习——JS(正则表达式+内置对象)

    正则表达式 专门规定字符中字符 格式规则 的表达式 何时使用 只要定义字符串格式规则 都用正则表达式 最简单正则 一个关键词的原文 就是最简单的正则 1 备选字符集 规定某 一位 字符可选的备选文字列表 语法 备选字符列表 强调 1 无论备
  • JavaScript最后分水岭——正则表达式

    个人简介 个人主页 微风洋洋 博客领域 编程基础 后端 写作风格 干货 干货 还是tmd的干货 精选专栏 JavaScript 支持洋锅 点赞 收藏 留言 好久不见 甚是想念 大家好 我是微风洋洋 也可以叫我洋锅 细心地小伙伴可能已经发现
  • 使用正则表达式爬虫抓取猫眼电影排行Top100

    目标站点分析 分析网址 首页 https maoyan com 点击榜单 https maoyan com board 点击Top100 https maoyan com board 4 目标站点为 https maoyan com boa
  • 正则表达式工具类

    在实际开发中总会使用到正则表达式匹配数据 我也是在后面查看了一些资料 下面写一个常用的正则表达式匹配集合 正则匹配模式 表示匹配字符串的开始位置 例外 用在中括号中 时 可以理解为取反 表示不匹配括号中字符串 表示匹配字符串的结束位置 表示
  • js正则表达式多行匹配

    在js匹配网页内容时 往往需要匹配一段代码比如 div div 中间可能有很多行 这个时候一般 的匹配规则是匹配不出来的 如下介绍一个折中的方法 var content 这里是内容 var re p class s S p gt g var
  • 元字符的详细解析

    上一篇文章介绍了正则的用处以及正则中这些元字符的基本含义 但是如果我们只知道那些元字符的含义 不知道怎么使用和加以练习 那么对于正则我们还只是看见了门槛 并没有踏入 那么本篇文章就让我们迈起脚步正式走入正则的世界吧 let s go 我的学
  • regex_replace()函数的应用与解析

    include
  • JS字符串替换函数全部替换方法

    color olive JS字符串替换函数 Replace 字符串1 字符串2 1 我们都知道JS中字符串替换函数是Replace 字符串1 字符串2 但是这个函数只能将第一次出现的字符串1替换掉 那么我们如何才能一次性全部替换掉了 将上面
  • Python进阶之CrawlSpider的应用及Scrapy配置项的引用

    1 CrawlSpider的应用 CrawlSpider可以根据规则自动分析链接的数据并按照正则的要求取出需要的数据 scrajpy startproject yg cd yg 注意 t crawl参数 scrapy genspider t
  • 正则表达式(日期、金额、特殊字符)_java语言

    正则表达式 java 正则表达式在线测试网站 个人觉得还算精确 http tool chinaz com regex 备注 如有错误 希望留言指出 虚心请教 金额格式 正数 包含至多2位小数 第1种形式 校验金额格式是否正确 正数 包含至多
  • [网络安全自学篇] 十四.Python攻防之基础常识、正则表达式、Web编程和套接字通信(一)

    这是作者的系列网络安全自学教程 主要是关于网安工具和实践操作的在线笔记 特分享出来与博友共勉 希望您们喜欢 一起进步 前文分享了Wireshark抓包原理知识 并结合NetworkMiner工具抓取了图像资源和用户名密码 本文将讲解Pyth
  • java正则表达式的语法详解及常用方法

    一 实例 今天在实现一个功能时遇到了这样一个问题 及接口传过来一个字符串 我需要判断它是一个区间还是一段文字并对其做分别处理 这里面的问题就在于我怎么去判断区间 按照数学规律区间可分为以下几种情况 M M N N N M N M N N N

随机推荐

  • 常用Pytorch中张量(Tensor)的创建

    from IPython core interactiveshell import InteractiveShell InteractiveShell ast node interactivity all import torch a to
  • 华为手机连电脑当摄像头用_DxOMark评六大最佳手机摄像头:华为P40 Pro独揽四个第一...

    来源 快科技 DxOMark今天发布了一份特殊的榜单 按照照片 视频 广角 夜间摄影 变焦 散景 背景虚化 六大类 评选出了每个分类表现最好的手机 结果华为P40 Pro四次上榜 另外两个则被三星拿下 最佳照片 华为P40 Pro 拍照成绩
  • 【CLIP详读】

    个人网站 https tianfeng space 一 前言 OpenAI的CLIP项目自从推出以来 CLIP引起了广泛的关注 它的方法看似简单 但效果非常出色 许多结果令人惊叹 例如 预训练模型可以在任何视觉分类数据集上实现出色的效果 而
  • ubuntu apt-get dpkg应用中的一些问题及解决方法

    一 在用sudo apt get install 安装软件时 由于速度太慢 想换个软件源 直接关闭了终端 apt get但进程没有结束 结果终端提示 E 无法获得锁 var lib dpkg lock open 11 资源暂时不可用 E 无
  • 【Javadoc生成开发文档(Terminal或IDEA中)】

    Javadoc生成开发文档 一 Javadoc工具介绍 二 常用标记 三 使用方式 四 生成文档的两种方式 1 Terminal方式 2 IDE方式 一 Javadoc工具介绍 大家在查看官网文档的时候 会不会感慨人家的帮助文档写的真有逻辑
  • 轻松刷脸是美妙的线下消费体验过程

    刷脸支付的过程非常的简单 你不需要带钱包 信用卡或手机 支付时只需要自己面对刷脸支付pos机屏幕上的摄像头 刷脸支付系统会自动将消费者面部信息与个人账户相关联 整个交易过程十分便捷 在移动支付的快速发展中 消费者逐渐习惯使用移动支付 即使身
  • 交换机的Access口与Trunk口

    基本概念 Access类型的端口只能属于1个VLAN 一般用于连接计算机的端口 Trunk类型的端口可以允许多个VLAN通过 可以接收和发送多个VLAN的报文 一般用于交换机之间连接的端口 处理流程 Acess端口收报文 收到一个报文 判断
  • Python 分割技术提取图像和视频中对象

    计算机视觉是计算机查看和识别对象的媒介 计算机视觉的目标是使计算机能够分析图像和视频中的对象 解决不同的视觉问题 对象分割为方便分析图像和视频中的对象铺平了道路 对不同领域做出了巨大贡献 例如医学 自动驾驶汽车的视觉以及图像和视频的背景编辑
  • vue form 滑动验证码、手机短信验证

    话不多说直接上效果图 vue 注册首页 校验 滑动验证 页面源码
  • mysql explain执行计划

    mysql explain执行计划 mysql gt EXPLAIN SELECT FROM t item i LEFT JOIN t sku s ON i item id s item id LEFT JOIN t sku stock t
  • 楠姐技术漫话:接着唠唠社区发现

    halo 大家好 很开心又和大家见面了 在第一篇技术漫话 图计算的那些事 发布之后 楠姐收到了很多鼓励和支持 非常感谢大家的喜欢 所以楠姐尽自己所能马不停蹄开始第二篇的创作 虽迟但到 也尝试在第二期中 在可读性和观感上尽量做些优化和进步 本
  • Managing Big Data with MySQL学习笔记

    Managing Big Data with MySQL学习笔记 Intro Week 1 How Relational Databases Help Solve Those Problems Database Design Tools E
  • Vue 高德地图实现添加标记,AMap.PlaceSearch 地点搜索,根据页面主题修改地图样式

    Vue 高德地图实现添加标记 AMap PlaceSearch 地点搜索 根据页面主题修改地图样式 效果图 成为开发者并创建key 详细请查阅官方文档 https developer amap com api jsapi v2 guide
  • 分布式锁实现方案3、基于Redis的SET操作实现的分布式锁

    在我的上一篇文章中 关于redis分布式锁的写法 释放锁还有些缺陷 细节见评论部分 本文进一步做了完善 分布式锁实现方案2 基于Redis的SET操作实现的分布式锁 package com alioo common lock import
  • 【leetcode.283】——移动零

    题目 注意 解析 思路 定义left和right指针 都初始化在数组的第一个位置 right指针一直向右走 如果right走到指向的值不为0时 那么right指针指向的值与left指针指向的值进行交换 然后left指针再向后走一步 如此循环
  • c++十大排序——快速排序

    算法基本知识铺垫 有些人可能不知道什么是稳定排序 原地排序 时间复杂度 空间复杂度 我这里先简单解释一下 1 稳定排序 如果 a 原本在 b 的前面 且 a b 排序之后 a 仍然在 b 的前面 则为稳定排序 2 非稳定排序 如果 a 原本
  • nodejs高大上的部署方式-PM2

    如果直接通过node app来启动 如果报错了可能直接停在整个运行 supervisor感觉只是拿来用作开发环境的 再网上找到pm2 目前似乎最常见的线上部署nodejs项目的有forever pm2这两种 使用场合 supervisor是
  • 旋转链表——快慢指针法的实践

    一 题目 给你一个链表的头节点 head 旋转链表 将链表每个节点向右移动 k 个位置 示例1 输入 1 gt 2 gt 3 gt 4 gt 5 gt NULL k 2 输出 4 gt 5 gt 1 gt 2 gt 3 gt NULL 解释
  • matlab灵敏度分析操作,灵敏度分析 使用MATLAB编写.doc

    灵敏度分析 使用MATLAB编写 实验二 线性规划的灵敏度分析 实验目的 1 线性规划求解的单纯形法的灵敏度分析的编程实现 2 掌握使用matlab Lingo Excel的规划求解功能求解 并利用 敏感性报告 进行分析 二 实验内容 课本
  • wazuh中的规则编写以及日志分析

    目录 什么是wazuh 如何搭建wazuh 实验环境 wazuh的规则 配置代理 wazuh中的配置了解 ssh的暴力破解 用户自定义规则 SQL注入的检测 什么是wazuh Wazuh是一个免费 开源和企业级的安全监控解决方案 用于威胁检