0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

用Audit执行Linux系统和安全审计

汽车玩家 来源:今日头条 作者:新钛云服 2020-05-05 22:17 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

Linux Audit守护进程是一个可以审计Linux系统事件的框架。在本文中,我们一起看看安装、配置和使用这个框架来执行Linux系统和安全审计。

审计目标

通过使用一个强大的审计框架,系统可以追踪很多事件类型来监控和并审计它。这样的例子包括:

审计文件访问和修改

看看谁改变了一个特殊文件

检测未授权的改变

监控系统调用和函数

检测异常,比如崩溃的进程

为入侵检测目的设置“导火线”

记录各个用户使用的命令

组件

这个框架本身有数个组件:

内核:

audit:钩在内核中来捕获事件并将它们发送到auditd

二进制文件:

auditd:捕捉事件并记录它们(记录在日志文件中)的守护进程

auditctl:配置auditd的客户端工具

audispd:多路复用事件的守护进程

aureport:从日志文件(auditd.log)中读取内容的报告工具

ausearch:事件查看器(查看的内容是auditd.log)

autrace:使用内核中的审计组件来追踪二进制文件

aulast:和上一个类似,但是使用的是审计框架

aulastlog:和lastlog类似,但是也使用的是审计框架

ausyscall:映射系统调用ID和名字

auvirt:展示和审计有关虚拟机的信息

文件:

audit.rules:auditctl使用,它读取该文件来决定需要使用什么规则

auditd.conf:auditd的配置文件

安装

Debian/Ubuntu使用命令:apt-get install auditd audispd-plugins

Red Hat/CentOS/Fedora:通常已经安装了(包:audit和audit-libs)

配置

2个文件管理审计守护进程的配置,一个用于守护进程本身(auditd.conf),另一个是用于auditctl工具的规则(audit.rules)。

auditd.conf

文件auditd.conf对Linux audit守护进程的配置聚焦在它应该在哪里以及如何记录事件。它也定义了如何应对磁盘满的情况、如何处理日志轮转和要保留的日志文件数量。通常,对大多数系统来说,默认配置是足够的。

audit.rules

为了配置应该审计什么日志,审计框架使用了一个名为audit.rules的文件。

和大多数情况一样,从零开始而不加载任何规则。通过用-l参数来运行auditctl,我们可以确定使用中的规则。

[root@host ~]# auditctl -l

No rules

万一加载了任何规则的话,用-D参数运行auditctl来删除已加载规则。

现在是时候来监控点东西了,比如/etc/passwd文件。通过定义要查看的路径和权限,我们在这个文件上放一个观察点:

auditctl -a exit,always -F path=/etc/passwd -F perm=wa

通过定义path选项,我们告诉审计框架来监视什么目录或者文件。权限决定了什么类型的访问将触发一个事件。虽然这里的权限看起来类似文件的权限,但是要注意,在这2者之间有一个重大的区别。这里的4个选项是:

r = 读取

w = 写入

x = 执行

a = 属性改变

通过使用ausearch工具,我们可以快速的追踪对文件的访问和找到相关的事件。

用Audit执行Linux系统和安全审计

这个输出里面的一些重点是:

事件的时间(time)和对象的名称(name),当前的工作路径(cwd),相关的系统调用(syscall),审计用户ID(auid)和在这个文件上执行行为的二进制(exe)。请注意,auid定义了在登录过程中的原始用户。其他的用户ID字段可能指向了一个不同的用户,取决于在触发一个事件时在使用的实际用户。

转换系统调用

系统调用是以数字类型的值来记录的。因为在不同的服务器架构之间,这些值会有重叠,所以当前的服务器架构也记录了下来。

通过使用uname -m,我们可以确定服务器架构并使用ausyscall 来确定数字为188的系统调用代表了什么。

[root@host audit]# ausyscall x86_64 188

setxattr

现在,我们知道了这是属性的变化,这是讲得通的,因为我们定义了观察点,在属性变化(perm=a)的时候触发一个事件。

使用了临时规则并想再用老的规则?使用一个文件来刷新审计规则:

auditctl -R /etc/audit/audit.rules

审计Linux的进程

和使用strace类似,审计框架有一个名为autrace的工具。它使用了审计框架并增加了合适的规则来捕获信息并记录。收集到的信息可以使用ausearch来展示。

执行一次追踪:

使用ausearch来展示相关的文件:

按照用户来审计文件访问

审计框架可以用于监控系统调用,包括对文件的访问。如果你希望知道一个特定的用户ID访问了什么文件,使用像下面的这样一条规则:

auditctl -a exit,always -F arch=x86_64 -S open -F auid=80

-F arch=x86_64定义了使用什么架构(uname -m)来监控正确的系统调用(一些系统调用在不同的架构之间是不同的)。

-S open 选择 “open”系统调用

-F auid=80 相关的用户ID

这种类型的信息对于入侵检测确实是很有用的,而且对于在Linux系统上取证也确实是很有用的。

自动化

因为Linux审计守护进程可以提供有价值的审计数据,Lynis会检查这个框架的存在。如果没有这个框架,Lynis会建议你安装它。

另外,Lynis会执行一些测试来判定日志文件、可用的规则等等。

为了有效的入侵检测目的,和入侵检测系统集成对于事件发生的时候发现它们并采取恰当的行动是很关键的。

后记

审计守护进程有更多的用途。在本博客未来的文章中将列出其他例子。如果你是严肃对待Linux平台审计的,Linux审计框架一定是个很好的朋友!

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    88

    文章

    11627

    浏览量

    217890
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    数据中心锂电,安全设计、科学选型、合理部署是关键

    数据中心应用锂电本身并无不妥,关键在于实现电池技术、应用场景与安全策略的精准匹配和规范执行,不在于“”,而在于“对”。
    的头像 发表于 10-10 09:33 498次阅读
    数据中心<b class='flag-5'>用</b>锂电,<b class='flag-5'>安全</b>设计、科学选型、合理部署是关键

    中软国际审计大模型创新驱动智领未来

    此前,9月18日-20日,以“跃升行业智能化”为主题的华为全联接大会2025在上海隆重举行。在大会开放演讲环节,中软国际华为技术与解决方案集团审计解决方案经理于勖之发表了题为《审计大模型:创新驱动
    的头像 发表于 09-28 12:35 807次阅读

    MES - 制造执行系统

    制造执行系统(MES)是用于控制、监测和记录生产的软件。它将企业资源规划(ERP)与过程控制系统相结合,实现了透明、高效的生产。 受益于 MES 的行业 MES 在许多行业都至关重要,包括
    发表于 09-04 15:36

    Linux系统目录结构全面剖析

    Linux文件系统采用层次化的目录结构,这种设计遵循了Unix哲学中的"一切皆文件"原则。理解Linux目录层次架构对于系统管理员、运维工程师和开发人员来说至关重要,它不仅影响
    的头像 发表于 07-21 17:33 578次阅读

    中软国际以AI赋能某省构建统一智能审计整改系统

    随着审计监督从“查问题”向“促整改、强治理”延伸,如何推动审计整改从“事后补救”迈向“系统治理”,已成为提升国家治理体系和治理能力现代化水平的关键。面对整改周期长、跟踪难度大、管理方式分散等挑战,
    的头像 发表于 07-10 11:50 821次阅读

    中软国际持续服务地方审计厅整改智能化

    近日,中软国际在某自治区审计厅开展审计整改智能管理项目。这标志着公司在政府审计整改领域的又一重要突破,进一步巩固了在政府审计领域的领先地位。
    的头像 发表于 06-06 14:14 695次阅读

    Linux系统安全防护措施

    随着信息技术的快速发展,系统安全成为我们日常生活和工作中不可或缺的一部分。主要包括了账号安全控制、系统引导和登录控制、弱口令检测以及端口扫描等多个方面,为我们提供了一系列实用的安全措施
    的头像 发表于 05-09 13:40 679次阅读

    Linux权限管理基础入门

    Linux的广阔天空中,权限管理犹如一只翱翔的雄鹰,掌控着系统安全与秩序。掌握Linux权限,不仅能让你的系统管理更加得心应手,还能有效
    的头像 发表于 05-06 13:44 543次阅读
    <b class='flag-5'>Linux</b>权限管理基础入门

    Linux的作用

    Linux是做什么的? 1、服务器操作系统Linux在服务器领域非常流行,因为它稳定、安全且可靠。许多大型互联网公司和数据中心都使用
    发表于 04-04 01:57

    如何在RakSmart服务器上Linux系统部署DeepSeek

    Linux系统 DeepSeek 部署方案,结合RakSmart 服务器硬件推荐及多场景适配建议,主机推荐小编为您整理发布如何在RakSmart服务器上Linux
    的头像 发表于 03-14 11:53 622次阅读

    Linux软件防火墙iptables详解

    Linux提供的软件防火墙,名为iptables,它可以理解为是一个客户端代理,通过iptables的代理,将用户配置的安全策略执行到对应的安全框架中,这个
    的头像 发表于 03-01 14:50 960次阅读
    <b class='flag-5'>Linux</b>软件防火墙iptables详解

    中软国际审计智能体平台接入DeepSeek满血版大模型

    近期,DeepSeek大模型凭借卓越的技术性能和广泛的应用场景迅速成为行业焦点,推动AI技术向纵深发展。中软国际审计团队基于科创中心的算力基础设施和私有化全参满血DeepSeek(含V3/R1 671B双引擎),打造审计垂直领域专属智能基座——
    的头像 发表于 02-24 15:42 1592次阅读

    信息安全管理必备!Linux系统使用SSH登录root账号的方法

    Linux远程管理信息安全必备!本文介绍各类Linux开发板/主板使用SSH登录root账号的方法,使用触觉智能RK3562开发板演示,关注触觉智能,持续为大家带来更多使用技巧!
    的头像 发表于 02-12 15:46 1113次阅读
    信息<b class='flag-5'>安全</b>管理必备!<b class='flag-5'>Linux</b><b class='flag-5'>系统</b>使用SSH登录root账号的方法

    MariaDB配置日志审计

    确认插件路径下是否有日志审计插件server_audit.so。
    的头像 发表于 02-05 13:34 714次阅读

    软通动力受邀出席信息科技审计分会2024年会暨ITGRA论坛

    近日,由中国计算机用户信息科技审计分会举办的“信息科技审计分会2024年会暨信息科技风险管理与审计(ITGRA)论坛”在北京顺利召开。会议主题围绕“建标准、学标准、标准”,总结202
    的头像 发表于 12-23 10:53 988次阅读