linux audit原理,Wauzh原理简析及audit规则风险评估

2023-11-11

HIDS基本原理

熟悉HIDS的朋友应该了解,服务器的shell监控一般有两种,一种依靠Linux的audit审计功能,比如Wazuh,一种是重编译和替换bash二进制文件,将shell上执行的命令实时通过socket传递到服务端。

前一种方法优点是记录完整,缺点是会产生大量的日志,以及audit.rules配置失误的话导致服务器宕机。

后一种方式虽然日志简洁,但如果通过命令远程执行漏洞不走服务器的shell则捕获不到操作。在此我主要介绍Wazuh所使用的audit监控。

audit的原理浅显来说,linux 用于用户空间与内核空间的中间层叫做syscall,是连接用户态和内核态的桥梁,当用户访问硬件设备,比如申请系统资源、操作设备读写、创建新进程时,用户空间发起请求,内核空间负责执行,syscall提供一套标准接口实现。

当用户空间向内核空间发出syscall时,会产生软中断,让程序由用户态进入内核态进而执行相应的操作,每个syscall都有唯一的系统调用号对应。

这样做的好处是内核空间是在受保护的地址空间中,用户空间程序无法直接执行内核代码,也无法访问内核数据。

网上举例了kill()函数的执行流程:

kill() -> kill.S -> swi陷入内核态 -> 从sys_call_table查看到sys_kill -> ret_fast_syscall -> 回到用户态执行kill()下一行代码。

audit框架如下:

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

linux audit原理,Wauzh原理简析及audit规则风险评估 的相关文章

  • mybatis-spring-boot-starter依赖对应关系表

    mybatis spring boot starter版本 spring boot starter版本 mybatis版本 mybatis spring版本 2 1 2 2 2 5 RELEASE 3 5 4 2 0 4 2 1 1 2 1
  • HP服务器换硬盘流程,HP服务器SSD硬盘更换操作指南.pptx

    HP服务器SSD硬盘更换操作指南 HP服务器SSD硬盘更换 操作指南 目录 硬盘的安装 准备工作 注意事项 磁盘阵列的创建 创建Raid的流程 注意事项 数据库的创建附加 准备工作 三星磁盘 磁盘托盘 螺丝 这里磁盘托盘 从盒子里拿出来就是
  • YARN异常YarnException:Failed while publishing entity的解决方案

    版本 HDP3 0 mapreduce提交任务计算时 job已经结束 但是容器仍不能关闭持续等待五分钟 INFO Thread 100 org apache hadoop yarn event AsyncDispatcher Waiting
  • 自定义类加载器

    package com bzu csh import java io ByteArrayOutputStream import java io File import java io FileInputStream import java
  • docker容器数据卷

    1 宿主与容器之间映射添加容器卷 privileged true 数据卷的特权 docker run it privileged true v 宿主机绝对路径目录 容器内目录 镜像名 docker run it privileged tru
  • 在手机上通过ssh连接树莓派

    第一步 在手机上下载ConnectBot 豌豆荚上有的下 第二步 Ubuntu 上开启ssh服务 第一次按使用的话需要搭建环境 命令是 sudo apt get install openssh server 第三步 启动SSH服务 sudo
  • Yolov5训练自己的数据集

    本文介绍了如果通过Yolov5框架训练自己的数据集 主要内容包括数据集格式 数据集拆分方法 描述文件修改以及训练和测试方法 还没有搭建Yolov5环境的可以参考我上一篇博文 Yolov5目标检测环境搭建过程 Cuda Pytorch Yol
  • qsort库函数详解

    目录 一 qsort是什么 二 qsort的功能 三 qosrt函数详解 1 qsort函数的定义 2 qsort函数的传参 四 qsort的模拟实现 冒泡 1 如何实现交换 2 如何实现字节之间的交换 一 qsort是什么 qsort是C
  • C#.发布订阅模式

    发布订阅模式 委托可以通过简单的加减实现封装多个方法 但容易出现封装了多个方法的委托被赋值号一下子都给替换掉的问题 即外部对象会影响其他对象对发布者的订阅 委托类可以定义在发布者类之中吗 可以的 实现发布订阅模式的土方法 声明委托类 在发布
  • 关于生命的意义突然有感

    1 一个囚犯被判无期徒刑 放逐到一个海岛上 但不久附近发生海难 监狱不得不组织人手就近救援 这位囚犯十分神勇 一个救10个 于是由于被判表现良好放了 当一个人被判无期徒刑 世界上的乐趣几乎与他无关 他是最容易抑郁的人之一 但很明显 他一旦提
  • tongweb部署vue前端页面的方法

    tongweb部署vue前端页面的方法 1 在同一端口号下部署 2 在不同端口号部署 1 在同一端口号下部署 把vue项目install 运行 build完了的dist包压缩打包 上传到服务器解压 然后在解压完了的目录里新建一个空的WEB
  • 算法应用与加速器系统架构的碰撞:AI软硬结合的方向怎么走?

    2021年9月18日下午 算法应用与加速器系统架构的碰撞 讨论会在智源研究院顺利举行 参与封闭研讨的专家有 孙广宇 北京大学高能效计算与应用中心长聘副教授 黄高 清华大学助理教授 陈恺 中国科学院信息工程研究所研究员 施柏鑫 北京大学助理教
  • conda虚拟环境中安装和使用指定opencv-C++版本

    1 进入conda环境 conda activate 虚拟环境名称 2 查看conda可以安装的opencv版本 conda search opencv 3 安装opencv 这里安装4 5 3版本 conda install opencv
  • 【HarmonyOS】如何实现应用内引用HSP模块中ArkUI组件

    关键字 HSP开发 引入HSP模块中ArkUI组件 写在前面 在使用ArkTS开发HarmonyOS应用时 通常会定义一些公共组件或公共接口功能 此时可以将这些功能封装到HSP模块中 然后通过在HSP模块中导出组件或接口方式在其他模块中引用
  • 数据库的基础学习

    数据库对于程序员来说是一个必备的技能 我也开始了数据的学习 看的教程比较老 是郝斌的sqlsever基础教程 用的数据库是sqlsever2008 说起数据库 之前仿照的医药项目已经开始陆陆续续接触到了 所以也去3wschool上补过一些常
  • Queue(单项队列)和Deque(双端队列)的知识点整理

    1 Queue 单向队列 1 1 定义 常见队列就是FIFO 先进先出 队列 可以实现前端删除 peek pop from front 后端添加 push to back 的功能 1 2 实现 既可以用数组 顺序队列 也可以用链表 链式队列
  • shell中的三种引号

    元字符 指在shell中有特殊含义的字符 lt gt 双引号 消除元字符的特殊含义 除 三个字符外 均当作普通字符处理 单引号 除单引号自身外 都当作普通字符来处理 可以使用 来消除单引号的特殊语义 单引号 命令替换 将一个命令的输出作为另
  • ChatGPT影响大学生思想行为模式的三个维度

    ChatGPT作为新一代AI技术的代表 深刻嵌入并影响着大学生的日常学习和生活场景 其在提升学习研究效率 拓宽认知阈限 重塑人机互动模式等方面带来极大突破 也会对大学生的思想行为模式产生潜在的影响 这些影响可以从个体 关系与社会三个维度进行
  • 北师大19秋计算机在线1,北师19秋《专科英语(二)》在线作业1【满分答案】

    可做奥鹏全部院校作业论文 答案请添加qq 599792222 或 微信 1095258436 19秋 专科英语 二 在线作业1 试卷总分 100 得分 100 一 单选题 共 60 道试题 共 60 分 1 around all over

随机推荐

  • ctfshow CRYPTO RSA

    ctfshow CRYPTO RSA babyrsa easyrsa1 easyrsa2 easyrsa3 easyrsa4 easyrsa5 easyrsa6 easyrsa7 easyrsa8 babyrsa 先看txt 直接上脚本 i
  • Android绘制虚线

    Android绘制虚线的两种方式 1 自定义view 看到网上很多人说用drawLine绘制 但是其实根本就没有效果 真正效果的是drawPath这个方法 话不多说直接上代码 public class DotView extends Vie
  • 【云原生之Docker实战】使用docker部署mkdocs项目文档工具

    云原生之Docker实战 使用docker部署mkdocs项目文档工具 一 mkdocs介绍 1 mkdocs简介 2 mkdocs特点 二 检查本地环境 1 检查docker版本 2 检查docker状态 3 检查系统版本 三 下载mkd
  • VUE 开发使用的一些表格框架

    Vue 开发中使用的框架 表格 1 http www quasarchs com 2 https vxetable cn table start install
  • Spring Boot 实现 WebSocket 示例

    什么是 WebSocket WebSocket协议提供了一种标准化的方法 通过单个TCP连接在客户机和服务器之间建立全双工 双向的通信通道 它是一种不同于HTTP的TCP协议 但被设计为在HTTP上工作 使用端口80和443 并允许重用现有
  • 电量优化与网络优化

    一 Doze低电耗模式 未充电 屏幕熄灭 让设备在一段时间内保持不活动状态 延迟应用的后台 CPU 和网络活动 从而降低耗电量 二 Standby待机模式 应用待机模式会延迟用户近期未与之交互的应用的后台网络活动 三 白名单 系统提供了一个
  • JS工具库之正则规则校验

    1 内置了一些校验规则 如是否手机号 邮箱号 URL等 这些规则方法 写在test js下面 如验证是否手机号 test mobile 13888889999 如果验证通过 返回true 否则返回false 例子1 是否验证码 校验是否验证
  • 信息熵到底是什么

    信息是我们一直在谈论的东西 但信息这个概念本身依然比较抽象 在百度百科中的定义 信息 泛指人类社会传播的一切内容 指音讯 消息 通信系统传输和处理的对象 但信息可不可以被量化 怎样量化 答案当然是有的 那就是 信息熵 早在1948年 香农
  • ubantu环境下IDA pro运行时碰到某些so找不到的问题

    最近帮组员解决IDA的问题 做个记录 问题 执行启动idea时出现报错 IDA Pro idaq64 报错如下 idaq64 error while loading shared libraries libgthread 2 0 so 0
  • 基于opencv中HOG+SVM的车轮识别及predict()函数的改进

    前言 opencv中HOG SVM已经是一个相对成熟的环境 只是在满足兼容性的条件下会牺牲很大的时间开销 在训练部分未做改进 只是对detectMultiScale 中的predict进行改进 其中HOG特征计算请参考 http blog
  • Oracle恢复删除的数据

    不下心删除了生产库的数据或者不小心删除了一部分数据 如何恢复找回 Oracle恢复删除数据的方法 方案一 利用oracle提供的闪回方法进行数据恢复 适用于delete删除方式 首先获取删除数据的时间点 select from v sql
  • C++_模板函数

    参考以下大佬博客 参考1 参考2 参考3 参考4 参考5 我们为什么需要模板 同样的函数 我们要为不同的参数类型写不同的版本 程序的逻辑是一模一样的 只是他们的类型是不一样的 如下 void Swap int x int y int tmp
  • ARM嵌入式体系架构(理论篇)

    基础知识 1 电路中的逻辑状态 0代表的是低电平 1代表高电平 2 半导体元开关 1 二极管 单向导通性 普通二极管 发光二极管 光敏二极管 稳压二极管 2 三极管 开关特性 C 集电集 B 基集 E 发射集 PNP型 电流方向从E极流向C
  • keil报错:No Target connected+Error: Flash Download failed - Target DLL has been cancelled四种可能

    一 供电 板子一定要供电 二 ST LINK是否接触不良 确保ST LINK跟板子连接完好 三 按住reset点击download 硬件和接线都没问题情况下 这时候可能是SWD的引脚被占用了 或者被禁用了 这时候ST LINK自然无法通过S
  • MySQL01

    课程回顾 数据库相关sql 查询所有 show databases 创建 create database db1 charset utf8 gbk 查看数据库信息 show create database db1 删除数据库 drop da
  • 使用Navicat插入数据时报错1062 - Duplicate entry ‘menu544073941‘ for key ‘PRIMARY‘

    gt 报错 1062 Duplicate entry menu544073941 for key PRIMARY gt 原因 数据库表在设计时 没有设置id主键自增 而要插入的这条数据id在表中已经存在 存在冲突 gt 解决 lt 2种 g
  • 常见的测试用例设计方法7---因果图法

    目录 一 因果图法的定义 二 因果图法的意义 三 因果图法的适用场合 四 因果图法的表示 五 因果图法的四种关系 六 因果图的基本约束 七 因果图的分析步骤及案例 一 因果图法的定义 因果图法是一种利用图解法分析输入的各种组合情况 从而设计
  • Understand Spring Security Architecture and implement Spring Boot Security

    In this tutorial we will be looking at how Spring Security works and its architecture We will be creating a Spring Boot
  • 谷歌浏览器设置黑暗模式

    方法一 在chrome的实验性功能中开启黑暗模式 1 打开Google Chrome 在地址栏中输入 chrome flags 回车 进入实验性功能页面 2 在搜索框中搜索 Auto Dark Mode for Web Contents 3
  • linux audit原理,Wauzh原理简析及audit规则风险评估

    HIDS基本原理 熟悉HIDS的朋友应该了解 服务器的shell监控一般有两种 一种依靠Linux的audit审计功能 比如Wazuh 一种是重编译和替换bash二进制文件 将shell上执行的命令实时通过socket传递到服务端 前一种方