文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>tripwire

tripwire

时间:2006-09-14  来源:liuxingyuyuni

Tripwire是一款最为常用的开放源码的完整性检查工具,它生成目标文件的校验和并周期性的检查文件是否被更改。下面我们简单介绍一下 Tripwire的运行机理。与大多数完整性检查程序相同,对于需要监视的文件,Tripwire会使用校验和来为文件的某个状态生成唯一的标识(又称为 "快照"),并将其存放起来以备后用。当Tripwire程序运行时,它先计算新的标识,并于存放的原标识加以比较,如果发现不匹配的话,它就报告系统管理人员文件已经被修改。接下来,系统管理员就可以利用这个不匹配来判断系统是否遭到了入侵。例如,如果Tripwire已经为/bin/login和 /bin/ls存放了快照,那么对它们的尺寸、inode号、权限以及其他属性的任何修改,都逃不过Tripwire的火眼金睛。尤其是对于文件内容的修改,即使只改变了一个字节,Tripwire也能察觉得到,因为校验和是针对文件整体的。

通过对以上运行机制的了解我们不难发现,完整性检查工具的安装时机非常重要,最好是在交付用户使用和连入网络之前的Linux系统初装时进行。因为完整性检查工具只有保留了系统文件的初始状态(快照),才能确保系统文件的完整性;如果在系统使用一段时间后再取其快照的话,它很可能已经不再是原系统文件的映象(如已经遭到破坏),所以这时的完整性检测的可靠性已经打了折扣。
    Tripwire的安装过程(要得到给软件可以从http://www.tripwiresecurity

  .com/获得),一共分为五个步骤:

  1.匹配主机环境   

  在Tripwire的根目录下有Ported这个文件,它是对支持的系统及相关配置文件的描述,管理员第一步需要打开这个文件,找到符合自己系统的描述。

  2.配置监控目标

  进入include目录,编辑config.h文件,将第一步Ported中conf.h后对应的文件名和路径写入config.h开始#include部分,本例中即为#include “../configs/conf-svr4.h”。   

  同时要注意的是,在configh文件中还有Tripwire配置文件,Tripwire数据库文件的放置路径及生成数据库的文件名等设置,管理员按照个人喜好设置即可。编辑好config.h后,还要根据本机情况编辑修改位于configs目录下的Tripwire配置文件,也就是上面Ported 文件中tw.config对应的tw.conf.linux,我们知道,对文件、目录等的监控就是在这里设置的。

  3.编译

  接着就可以编译了,在Tripwire的根下,执行make,系统即会自动编译,编译成功后,可以再执行make test,Tripwire会自动检查编译情况及工作状态,它会一段一段地测试。

  4.生成数据库   

  成功编译Tripwire后,开始对需要监控的文件进行扫描,以生成Tripwire数据库 ,在Tripwire 的src目录下执行如下操作: /tripwire -init 。

  5.测 试   

  接着进行测试,首先我们在根下touch生成一个goadd文件,接着把根下的.cshrc文件做一下改动,在里面加入几个“#”注释号。

  经过以上五个步骤后就可以运行Tripwire了。当第一次运行Tripwire时,需要进行一些准备工作,主要有编辑config文件、检查邮件报告是否正常、根据需要配置策略文件和初始化数据库文件,即创建一个签名的基线数据库等。下一次运行时,系统会使用twpol.txt文件产生一个新的签名数据库。然后,比较两个数据库,实施用户定义的任何选项屏蔽(排除经常更改的文件),最后通过电子邮件或显示器为用户在终端上输出一个可读的报告。

  Tripwire有四种操作模式: 数据库生成、完整性检查、数据库更新和交互式更新。数据库生成模式产生一个基线数据库,为未来的比较打下基础; 完整性检查是Tripwire的主要模式,把当前文件签名和基线数据库进行比较来进行检查; 后面两种更新模式允许用户调整Tripwire数据库以消除不感兴趣的结果以及应付正常的系统变化,例如当用户账号正常增加或删除时,不希望Tripwire重复报告/etc/passwd文件被改动了。

  使用Tripwire的技巧

  安装Tripwire最好的时机是在刚刚建立好系统之后。一个已经运行了一段时间的系统可能已经被破坏了,这之后运行Tripwire将几乎没有任何价值。如果不可能在系统刚安装或更新的时候安装Tripwire,那么考虑以单用户模式重新安装系统文件,这是保证系统干净的惟一方法。

  Tripwire需要一个先进的存储规划,用户需要把基线数据库同程序文件一起保存在一个安全的地方,以免攻击者更改文件而使程序达不到目的。最优的安排是把这些文件保存在一个移动的只读介质中,像写保护的软盘、光盘或潜在攻击者不能访问的CD-ROM。还可以把文件放在一个安全的远程分区中并以只读方式输出。记住用mount命令使一个硬盘“只读”是不够的,因为一个有root权限的攻击者可以轻易的把硬盘改回为“可写”。

  考虑安全性和Tripwire性能之间的均衡是很重要的。用户可以选择运行程序的多个签名算法和两个校验和中的任一个来保护文件,但这些算法中有些开销是很昂贵的。特别是Snefru运行很慢。只有那些有极大危险性的系统才需要为每个文件和目录运行所有的算法,用户需要平衡需求和可用的时间。

摘自《计算机世界报》 2005年04月18日 第14期 C10
  下载地址:http://download.chinaunix.net/download/0011000/10643.shtml
相关阅读 更多 +
排行榜 更多 +
太鼓达人plus

太鼓达人plus

音乐节奏 下载
吉品甄选

吉品甄选

购物比价 下载
恋与练习生2

恋与练习生2

音乐节奏 下载