红联Linux门户
Linux帮助

(原)利用AIDE检查系统的完整性

发布时间:2007-03-14 13:32:20来源:红联作者:chameleon
----作者:小迟 日期:2007.3.12
测试环境:AS4(动画演示可以去我的主页里下载)

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

首先安装AIDE(AIDE依赖于mhash包,为了方便使用我已经将安装文件和mhash库打包在一起了):

tar -zxvf aide-0.13.1.tar.gz
cd aide-0.13.1/AIDE/mhash-0.9.8.1
./configure --prefix=/usr --enable-static=yes
make
make install

cd aide-0.13.1/AIDE/aide-0.13.1
./configure
make
make install

安装完毕后,先创建个AIDE的配置文件,并在里面添加对哪些文件进行检测,如:

#vi /usr/local/etc/aide.conf
#并添加:
/test/chameleon R
!/bin/ps R+a
!/usr/bin/crontab R+a

#在这里我预先新建了个"chameleon"的文件并在里面写入“chameleon.icpcn.com”为了达到测试目的,我将修改这个文件的内容为“http://chameleon.icpcn.com”然后来对该文件进行检测,看看是否有变化。在这里所谓完整性检查,其实意思就是AIDE对预先建立好的chameleon文件的一些特性已经做了相关的记录,当我修改这个文件的内容时,该文件的特性已经发生了变化,所以AIDE便能检测出来。同理,如果是关键的文件或系统文件被入侵者做了修改的话,AIDE也是可以检测出来的。

#这里的文件后面的“R”等于“p+i+n+u+g+s+m+c+md5”也就是在检测的时候分别检测该文件的“权限+索引节点+链接数+用户+组+大小+最后一次修改时间+创建时间+md5校验值”,文件前面的“!”表示忽略这个文件的检查(关于文件后面的各种字符含义可在我的主页里搜索相关资料查阅)

配置文件创建完毕后我们需要来初始化一下并生成一个默认的AIDE的库:

/usr/local/bin/aide --init
mv /usr/local/etc/aide.db.new /usr/local/etc/aide.db

开始检测:

/usr/local/bin/aide --check

小迟的主页:
http://Chameleon.icpcn.com
QQ:181500883
文章评论

共有 0 条评论