AIDE --(文件系统)高级入侵检测
1、aide的概述
AIDE(Adevanced Intrusion Detection Environment,高级入侵检测环境)是个入侵检测工具,主要用途是检查文本的完整性。
AIDE能够构造一个指定文档的数据库,他使用aide.conf作为其配置文档。AIDE数据库能够保存文档的各种属性,包括:权限(permission)、索引节点序号(inode number)、所属用户(user)、所属用户组(group)、文档大小、最后修改时间(mtime)、创建时间(ctime)、最后访问时间(atime)、增加的大小连同连接数。AIDE还能够使用下列算法:sha1、md5、rmd160、tiger,以密文形式建立每个文档的校验码或散列号。
常见的入侵检测软件:
1、tripwire --操作比较复杂
2、aide --用以代替tripwire的一款新产品
文件系统入侵检测的原理:
1、当系统处于健康状态时,把系统所有的文件做各种指纹的检验,得出一个检验基准数据库。
2、不是所有的文件都需要保存指纹,临时文件(/var/log | /tmp | /var/tmp | /proc | /sys | /dev/shm...)
3、需要检验文件是否被更改,只需要把基准数据对应指纹值做对比,就可以得知哪些文件被更改过。
4、每天把检验的结果以邮件或者其它方式发送管理员。
vim /etc/aide.conf
@@define DBDIR /var/lib/aide ----定义标准数据库的位置
@@define LOGDIR /var/log/aide
database=file:@@{DBDIR}/aide.db.gz --基准数据库文件
database_out=file:@@{DBDIR}/aide.db.new.gz --更新数据库文件
gzip_dbout=yes
verbose=5
report_url=file:@@{LOGDIR}/aide.log
report_url=stdout
R=p+i+n+u+g+s+m+c+acl+xattrs+md5
L=p+i+n+u+g+acl+xattrs
>=p+u+g+i+n+S+acl+xattrs
ALLXTRAHASHES = sha1+rmd160+sha256+sha512+tiger
EVERYTHING = R+ALLXTRAHASHES
NORMAL = R+rmd160+sha256
DIR = p+i+n+u+g+acl+xattrs
PERMS = p+i+u+g+acl
LOG = >
LSPP = R+sha256
DATAONLY = p+n+u+g+s+acl+xattrs+md5+sha256+rmd160+tiger
/test NORMAL -----定义检测的目录和检查方式
]# cp /sbin/l* /test/ ---加入测试文件
]# cp /etc/host* /test/ ---加入测试文件
]# aide -i ---生成标准数据库 当配置文件不在默认路径时 用-c参数 指定默认配置文件的位置
然后在/test目录里随便修改增加点文件
]# aide -C ---检测文件更动
结果...
AIDE found differences between database and filesystem!!
Start timestamp: 2014-12-06 19:58:09
Summary:
Total number of files: 34
Added files: 1
Removed files: 0
Changed files: 3
---------------------------------------------------
Added files:
---------------------------------------------------
added: /test/host
---------------------------------------------------
Changed files:
---------------------------------------------------
changed: /test
changed: /test/host.conf
changed: /test/lvm
--------------------------------------------------
Detailed information about changes:
---------------------------------------------------
Directory: /test
Mtime : 2014-12-06 19:55:08 , 2014-12-06 19:57:42
Ctime : 2014-12-06 19:55:08 , 2014-12-06 19:57:42
File: /test/host.conf
Size : 9 , 13
Mtime : 2014-12-06 19:54:40 , 2014-12-06 19:57:18
Ctime : 2014-12-06 19:54:40 , 2014-12-06 19:57:18
Inode : 1051098 , 1051130
MD5 : TrY3Mcn14wkDrE/Aen/j1g== , L3uB2fsziV0tOf5ON1x7ng==
RMD160 : MpMx3yNLQ/3hZVfm3UBbwFm/zz8= , SOpa9V8OdZtEaDAZP9r5128Rz2k=
SHA256 : OA9f4h11WSO0QgO1jKPIuWgcSF0VK9XX , HrxOiARLqQh9GmUrj/8mqT9st+125km5
File: /test/lvm
Size : 971464 , 971466
Mtime : 2014-12-06 19:55:08 , 2014-12-06 19:57:42
Ctime : 2014-12-06 19:55:08 , 2014-12-06 19:57:42
Inode : 1051115 , 1051131
MD5 : /WApR3heWEEIfiIVQ2l6kg== , ixhE8lhgAJpWscFLAPvygg==
RMD160 : xSzG/lF7+h+xgt7k8h7O51eZ6q4= , E8yk2T4TcXn6FBS/SglULY7VSLQ=
SHA256 : gHn8u+4kf4iaF1amGDYF7T83/5nZtbE2 , WVaE5G+olL8DyekbiOEJDGKI9W3WMU6v
在生产坏境里,最好把标准数据做成移动的iso随身携带,每次检测完之后进行对aide目录进行删除。
把aide程序、配置文件和基准数据库写入只读设备中,防止被恶意操作:
# mkdir /tmp/aide
# cp /etc/aide.conf /var/lib/aide/aide* /usr/sbin/aide /tmp/aide
# yum -y install genisoimage
# cd /tmp/ && mkisofs -V aide_DBS -J -R -o aide.iso aide/ --把所有的文件制作成光盘
# rpm -e aide
# rm -rf /etc/aide.conf /var/lib/aide/aide* /usr/sbin/aide --把系统中原来的文件删除