讲解了很多的Unix Tripwire的知识,这次,我们来对其基本知识进行巩固。当Unix Tripwire运行在数据库生成模式时,会根据管理员设置的一个配置文件对指定要监控的文件进行 读取,对每个文件生成相应数字签名,并将这些结果保存在自己的数据库中,在缺省状态下,MD5和 SNCFRN(Xerox的安全哈希函数)加密手段被结合用来生成文件的数字签名.
除此以外,管理员还可使 用MD4,CRC32,SHA等哈希函数,但实际上,使用上述两种哈希函数的可靠性已相当高了,而且结合MD5 和sncfrn两种算法(尤其是sncfrn)对系统资源的耗费已较大,所以在使用时可根据文件的重要性做取舍.
当怀疑系统被入侵时,可由Unix Tripwire根据先前生成的,数据库文件来做一次数字签名的对照,如 果文件被替换,则与Unix Tripwire数据库内相应数字签名不匹配, 这时Unix Tripwire会报告相应文件被更动,管理员就明白系统不”干净”了.
有一点要注意,上述保障机制的重点在于数据库内的数字签名,如果数据库是不可靠的,则一切工作都丧失意义.所以在Unix Tripwire生成数据库后,这个库文件的安全极为重要.比较常见的做法是将数据 库文件, Unix Tripwire二进制文件,配置文件单独保留到”可拿走并锁起来”的介质上,如软盘,将上述文件复制 到软盘后,关闭写保护口,锁到保险柜中.
除软盘外, 一次性介质,如cd-r也是很好的选择,这样即使侵入者拿到盘也无计可施. 除这种办法外,利用PGP等加密工具对上述关键文件进行数字签名也是一个很好的选择.
当然,当管理员自身对某些文件更动时, Unix Tripwire的数据库必然是需要随之更新的, Unix Tripwire考虑到了这一点,它有四种工作模式:数据库生成,完整性检查,数据库更新.交互更新.当管 理员更动文件后,可运行数据库更新模式来产生新的数据库文件。 Unix Tripwire的工作原理就是这样的。
【编辑推荐】