Linux中通过AIDE监控文件的完整性

AIDE(高级入qin检测环境)是文件完整性检查程序和入qin检测程序。

特性

  • 主要用途是检查文件的完整性,审计计算机上哪些文件被更改过。
  • AIDE根据从/etc/aide.conf配置文件中找到的正则表达式规则创建数据库。初始化该数据库后,就可以用来验证文件的完整性。还可以检查所有通常的文件属性是否存在不一致。它可以读取旧版本或更新版本的数据库。AIDE数据库能够保存文件的各种属性,包括:权限(permission)、索引节点序号(inode number)、所属用户(user)、所属用户组(group)、文件大小、最后修改时间(mtime)、创建时间(ctime)、最后访问时间(atime)、增加的大小以及连接数。AIDE还能够使用下列算法:sha1、md5、rmd160、tiger,以密文形式建立每个文件的校验码或散列号。
  • 这个数据库不应该保存那些经常变动的文件信息,例如:日志文件、邮件、/proc文件系统、用户其实目录以及临时目录。

背景

当一个入qin者进入了你的系统并且种植了木ma,通常会想办法来隐蔽这个木ma(除了木ma自身的一些隐蔽特性外,他会尽量给你检查系统的过程设置障碍),通常入qin者会修改一些文件,比如管理员通常用ps aux来查看系统进程,那么入qin者很可能用自己经过修改的ps程序来替换掉你系统上的ps程序,以使用ps命令查不到正在运行的木ma程序。如果入qin者发现管理员正在运行crontab作业,也有可能替换掉crontab程序等等。所以由此可以看出对于系统文件或是关键文件的检查是很必要的。目前就系统完整性检查的工具用的比较多的有两款:Tripwire和AIDE,前者是一款商业软件,后者是一款免费的但功能也很强大的工具。

操作步骤

安装

[root@CentOS7 ~]# yum -y install aide

修改配置文件

/etc/aide.conf

/etc/aide.conf 默认配置文件路径
/usr/sbin/aide 默认二进制可执行文件路径
/var/lib/aide  默认数据库文件路径
/var/log/aide  默认日志文件路径

初始化默认的AIDE的库:

`which aide` --init

执行完这步操作后会在默认数据库路径/var/lib/aide下产生一个名为“aide.db.new.gz”的数据库文件,/etc/aide.conf中定义的规则都写入到了该数据库文件中。

生成检查数据库(建议初始化数据库存放到安全的地方)

mv /var/lib/aide/aide.db{.new,}.gz

因为aide默认是从aide.db.gz数据库文件中读取/etc/aide.conf文件中定义的规则来检测文件完整性的,所以需要重命名初始化的库文件。

检测

`which aide` --check

更新数据库

`which aide` --update

检测完需要更新文件数据库,否则下次检测还是从旧的文件数据库中读取规则来检测文件的完整性。同时需要重命名数据库文件

AIDE默认规则

##p:      permissions#i:      inode:#n:      number of links#u:      user#g:      group#s:      size#b:      block count#m:      mtime#a:      atime#c:      ctime#S:      check for growing size#acl:           Access Control Lists#selinux        SELinux security context#xattrs:        Extended file attributes#md5:    md5 checksum#sha1:   sha1 checksum#sha256:        sha256 checksum#sha512:        sha512 checksum#rmd160: rmd160 checksum#tiger:  tiger checksum#haval:  haval checksum (MHASH only)#gost:   gost checksum (MHASH only)#crc32:  crc32 checksum (MHASH only)#whirlpool:     whirlpool checksum (MHASH only)

AIDE规则定义及使用

规则定义格式:规则名 = 具体规则
【例】:TEST = a+m+c

规则使用格式:文件/目录 规则名
【例】:/dir1  TEST
注:如果在文件或目录前面加了“!”,则表示忽略检测

AIDE规则验证

在/etc/aide.conf文件中定义如下规则,这里的/dir1目录刚开始是空的。

TEST = a+c+m
/dir1 TES

测试1:

在该目录下创建一个新的文件file1,并写入"hello aide"
[root@CentOS7 ~]# aide --check

AIDE, version 0.15.1

### All files match AIDE database. Looks okay!

[root@CentOS7 ~]# echo "hello aide" > /dir1/file1
[root@CentOS7 ~]# aide --check
AIDE 0.15.1 found differences between database and filesystem!!
Start timestamp: 2019-11-10 19:12:57

Summary:
 Total number of files:    3
 Added files:          1
 Removed files:        0
 Changed files:        1

---------------------------------------------------
Added files:
---------------------------------------------------

added: /dir1/file1

---------------------------------------------------
Changed files:
---------------------------------------------------

changed: /dir1

---------------------------------------------------
Detailed information about changes:
---------------------------------------------------

Directory: /dir1
Mtime    : 2019-11-10 19:12:00              , 2019-11-10 19:12:55
Ctime    : 2019-11-10 19:12:00              , 2019-11-10 19:12:55

以上输出表示在/dir1目录下添加了file1文件,并且修改了/dir1目录的Ctime和Mtime属性

测试2:

将/dir1/file1文件的内容由"hello aide"修改为"hello world"
[root@CentOS7 ~]# sed -i '/hello/c hello world' /dir1/file1 ; cat /dir1/file1
hello world
[root@CentOS7 ~]# aide --check
AIDE 0.15.1 found differences between database and filesystem!!
Start timestamp: 2019-11-10 19:14:34

Summary:
 Total number of files:    3
 Added files:          1
 Removed files:        0
 Changed files:        1

---------------------------------------------------
Added files:
---------------------------------------------------

added: /dir1/file1

---------------------------------------------------
Changed files:
---------------------------------------------------

changed: /dir1

---------------------------------------------------
Detailed information about changes:
---------------------------------------------------

Directory: /dir1
Atime    : 2019-11-10 19:12:02              , 2019-11-10 19:12:57
Mtime    : 2019-11-10 19:12:00              , 2019-11-10 19:14:31
Ctime    : 2019-11-10 19:12:00              , 2019-11-10 19:14:31

这时候/dir1目录的Atime,Mtime,Ctime都被修改了。

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/221647.html<

(0)
运维的头像运维
上一篇2025-04-15 03:20
下一篇 2025-04-15 03:22

相关推荐

  • 个人主题怎么制作?

    制作个人主题是一个将个人风格、兴趣或专业领域转化为视觉化或结构化内容的过程,无论是用于个人博客、作品集、社交媒体账号还是品牌形象,核心都是围绕“个人特色”展开,以下从定位、内容规划、视觉设计、技术实现四个维度,详细拆解制作个人主题的完整流程,明确主题定位:找到个人特色的核心主题定位是所有工作的起点,需要先回答……

    2025-11-20
    0
  • 社群营销管理关键是什么?

    社群营销的核心在于通过建立有温度、有价值、有归属感的社群,实现用户留存、转化和品牌传播,其管理需贯穿“目标定位-内容运营-用户互动-数据驱动-风险控制”全流程,以下从五个维度展开详细说明:明确社群定位与目标社群管理的首要任务是精准定位,需明确社群的核心价值(如行业交流、产品使用指导、兴趣分享等)、目标用户画像……

    2025-11-20
    0
  • 香港公司网站备案需要什么材料?

    香港公司进行网站备案是一个涉及多部门协调、流程相对严谨的过程,尤其需兼顾中国内地与香港两地的监管要求,由于香港公司注册地与中国内地不同,其网站若主要服务内地用户或使用内地服务器,需根据服务器位置、网站内容性质等,选择对应的备案路径(如工信部ICP备案或公安备案),以下从备案主体资格、流程步骤、材料准备、注意事项……

    2025-11-20
    0
  • 如何企业上云推广

    企业上云已成为数字化转型的核心战略,但推广过程中需结合行业特性、企业痛点与市场需求,构建系统性、多维度的推广体系,以下从市场定位、策略设计、执行落地及效果优化四个维度,详细拆解企业上云推广的实践路径,精准定位:明确目标企业与核心价值企业上云并非“一刀切”的方案,需先锁定目标客户群体,提炼差异化价值主张,客户分层……

    2025-11-20
    0
  • PS设计搜索框的实用技巧有哪些?

    在PS中设计一个美观且功能性的搜索框需要结合创意构思、视觉设计和用户体验考量,以下从设计思路、制作步骤、细节优化及交互预览等方面详细说明,帮助打造符合需求的搜索框,设计前的规划明确使用场景:根据网站或APP的整体风格确定搜索框的调性,例如极简风适合细线条和纯色,科技感适合渐变和发光效果,电商类则可能需要突出搜索……

    2025-11-20
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注