应用翻译的英文译翻译译英语怎么说-初中数学学习方法
2023年4月3日发(作者:you light up my life)
下载
下载
第7章Tripwire
本章讲述怎样使用Tripwire工具来维护文件系统的完整性。文中对该程序的设计提供了概
念上的描述,同时还详细介绍了安装和配置的指令。
7.1简介
Tripwire是一个完整性检测工具,用来监测对文件系统进行未加认证的修改。它对于检测
那些侵入者特别有用,这些入侵者为方便未来访山中送别古诗带拼音 问可能更改文件,删除或更改系统日志,留
下病毒、蠕虫和逻辑炸弹或其他报复性破坏。
多数UNIX系统非常庞大,包括上万个文件。没有实用的方法来让一个人手工监测系统文
件以防被未加认可的修改。Tripwire取得文件的数字“快照”或“指印”并保存在数据库中。
然后,它把文件当前的快照和原始的快照进行比较。已被添加、删除或更改内容的文件由
Tripwire进行标记,使系统管理员能够采取相应的措施。经过正确的安装、配置和监测,系统
管理员完全可以确定他们的“tripwire”系统没有被攻击。
Tripwire不仅对于检测侵入很有用,它还能在被侵入后进行恢复时节省大量的时间。如果
怀疑有一个未经认证的用户已获得了root权限,罪犯可以很容易地留下特洛伊木马或病毒。在
一个UNIX系统中手工检查40000多个文件是非常困难的。如果安装了Tripwire,就能很容易地
检查重要文件是否被破坏了。如果没有Tripwire这样的完整性检查工具,那就别无选择只能重
装系统了—一项耗时而又可能不需要的工作。
7.2Tripwire概述
7.2.1Tripwire的优点
Tripwire是UNIX安全规范中最有用且优美的工具之一。它是由EugeneSpafford和Gene
Kim1992年在Purdue大学开发的,其软件包在1998年被商业化,现在由TripwireSecurityInc.
来维护()。该公司支持软件包的商业和免费两种版本,能在
多数UNIX系统中运行。
Tripwire体现了一个优秀安全工具的最好特征,包括自保护性、平台间可移植性、可配置
性、可扩展性和自包容性。
•自保护性—为了防止修改,Tripwire使用了10种签名算法或单向哈希函数。其程序包
括:RSADataS张居正死后被清算的原因 ecurity公司的MD5、MD4和MD2哈希算法,Snefru(Xerox安全哈希函
数),SHA(安全哈希算法)和Haval编码。它还包含两个传统的CRC过程。其缺省安装
为每个数据条目记录了两个签名,这使得攻击者通过填充额外字符来掩盖踪迹变得十分
困难。富有技巧的攻击者也许能改变文件而不改变文件长度以及文件与一个校验和之间
的匹配,但对于两个校验和实际不可能。[1]
•可移植性—笔者认为UNIX世界是多样化的,于是应把程序设计为在各种UNIX平台间
有尽可能大的可移植性,程序可支持几十个UNIX版本。Tripwire生成的数据库用ASCII
文本编码,可以被任何文本处理程序操作或打印。
•可配置性—Tripwire可以监测每个文件或目录的权限、修改时间及其他参数的改变。
它还能配置成忽略某些特定文件和目录,或检查一个目录但不进入它里面。
•可扩展性—Tripwire可以一次安装而覆盖上千台机器。软件包包括一个预处理语言来
帮助系统管理员重用配置文件,多个机器可以共享一个配置文件,可为每台机器产生单
独一个数据库文件。
•自包容性—Tripwire的操作不依赖于任何外部程序。额外的程序不仅使安装费时,而
且可能增加额外的安全风险。
7.2.2操作概要
图7-1概括性地指出了Tripwire怎样使用两个输入文件:一个配置文件()描述监
测哪些目录和文件,还有一个基线签名数据库产生一个有关改动的详细报告。
图7-1Tripwire的基本操作[2]
当第一次运行Tripwire时,程序创建一个签名的基线数据库。下一次运行时,它使用
文件产生一个新的签名数据库。然后,它比较两个数据库,实施用户定义的任何选
项屏蔽(排除经常更改的文件),最后通过电子邮件或显示器来为用户在终端上输出一个可读
的报告。
Tripwire有四种操作模式:数据库生成、完整性检查、数据库更新或交互式更新。
数据库生成模式产生一个基线数据库,为未来的比较打下基础。
完整性检查是Tripwire的主要模式,把当前文件签名和基线数据库进行比较来进行检查。
有两种更新模式允许用户调整Tripwire数据库以消除不感兴趣的结果以及应付正常的系统
变化。例如当用户帐号正常增加或删除时,不希望Tripwire重复报告/etc/passwd文件被改动
了。
清单7-1和清单7-2是Tripwire在完整性检查模式下产生输出的示例。Tripwire首先报告文
件被改动了,而不定位具体的差别。在本例中,自从上次运行Tripwire后系最是橙黄橘绿时的上一句是什么 统增加了几个用户,
第7章Tripwire79
下载
基线数据库
存储文件
生成
新数据库
比较
运用屏蔽
Tripwire报告
所以/etc/group和/etc/passwd文件不再保持原样了。
清单7-1叱咤风云是什么意思 Tripwire有关改动的报告
然后,Tripwire指出每个文件有哪些属性发生了变化,并给出哪些是观察到的,哪些是所
期望的。
清单7-2Tripwire对属性的实际和应用值进行比较
这次运行把当前的MD5和Snefru签名与原来的进行对比,并报告不同的“指纹”。它还报
告文件大小和时间戳的差别。因为最近增加了用户,所以可以不关心这些变化。但是如果攻
击者半夜增加了伪造帐号,那么管理员将会得知。
7.2.3规划考虑
安装Tripwire的最好时机是在刚刚建立好系统之后,不论是新建的还是升级的。一个已经
运行了一段时间的千里共婵娟全诗 系统可能已经被破坏了:这之后运行Tripwire将几乎没有价值。如果不可能
在系统刚安装或更新的时候安装Tripwire,那么考虑以单用户模式重新安装系统文件。这不是
罗嗦,这是保证系统干净的唯一方式。
Tripwire要求一个先进的存储规划。用户需要把基线数据库同程序文件一起保存在一个安
全的地方,以免攻击者更改文件而使程序达不到目的。最优的安排是把这些文件保存在一个
移动的只读介质中—像写保护的软盘、光盘或潜在攻击者不能访问的CD-ROM。还可以把
文件放在一个安全的远程机器分区中并以只读方式输出。记住用mount命令使一个硬盘只读是
不够的,因为一个有root权限的攻击者可以轻易地把硬盘改回为可写。
考虑安全性和Tripwire性能之间的均衡是很重要的。用户可以选择运行程序的6个签名算
法和两个校验和中的任一个来保护文件。但重要的是记住这些算法中有些开销很昂贵。特别
是Snefru运行很慢。只有那些有极大危险性的系统才需要为每个文件和目录运行所有的算法。
Tripwire缺省使用MD5和Snefru。这两个一起提供强大的保护并消耗大量的CPU周期。作者曾
在自己的Tripwire中为所有文件运行MD5并对重要系统文件运行MD5和Snefru。甚至这样,它
在运行RedHatLinux5.0的PentiumPro系统中花了半个小时才产生报告。用户需要平衡安全
需求和可用的时间。
80UNIX系统安全工具
下载
剖析
Tripwire的配置文件可以让使用者精确地控制程序监测的文件和目录。文件包含
一个这些文件和目录的列表。文件每一行与一个选项屏蔽相关联,告诉程序那些文件属性改
变了,可以被放心地忽略。
选项屏蔽由几个选择标志组成。每个选择标志包含一个不同的属性。例如“s”标志是文
件大小,“a”是访问时间戳。每个标志可以在被监测的项中增加(“+”)或删除(“-”)。一
个条目如下:
/home/xyz+s-a
它告诉Tripwire跟踪文件/home/xyz的文件大小变化而忽略文件访问时间的变化。
表7-1总结了Tripwire的选择标志。
表7-1Tripwire的属性选择标志
选择标志包含的属性
-忽略后面的属性
+监测后面的属性
p权限位
ii节点值
n链接数
u拥有者的用户ID
g拥有者的分组ID
s文件大小
a访问时间
m修改时间
ci节点创建/修改时间
每个Tripwire签名过程被赋予一个数字。用户可以指明为文件/目录条目使用哪些算法
(Tripwire缺省使用1和2)。表7-2指出每种签名和相应的数字。
表7-2Tripwire的签名编号
签名编号签名种类
0没有签名
1RSADataSecurity,Inc.的MD5
2Snefru,Xerox安全哈希函数
3CRC-32,32位循环冗余校验
4CRC-16,16位循环冗余校验
5RSADataSecurity,Inc.的MD4
6RSADataSecurity,Inc.的MD2
7SHA,NIST安全哈希算法
8Haval,128位签名算法
9空,为未来的使用保留
Tripwire很灵活,但选项屏蔽可能十分复杂。设计者通过创建包含常用选项标志组合的百什么百什么的成语
模板来补偿这种复杂性。多数情况下,用户在中使用模板。表7-3总结了5个主要模
板。
第7章Tripwire81
下载
表7-3选项屏蔽模板
模板字母模板目标模板选项标志
R只读文件+pinugsm12-ac3456789
L日志文件+pinug-sacm123456789
N什么都不忽略+pingusamc123456789
E忽略所有-pinugsamc123456789
>增加日志文件+pinug>samc123456789
R模板是缺省的,所以如果有一个/usr/local/bin的条目如下:
/usr/local/binR
则有效的选项屏蔽为:
/usr/local/bin+pinugsm12-ac
Tripwire将在模式位、i节点号、链接数、uid、gid、文件大小、修改时间和MD5及Snefru
签名有任何变化时进行报告。它将忽略访问和i节点时间戳的变化。
有两个最终的操作要考虑。条目前的“!”指出包含一切修改。如果条目是一个文件,则
它被忽略。如果条目是一个目录,则它忽略其中的所有文件。“=”指明排除修改。如果条目
是一个文件,它什么都不落后的反义词 做,如果条目是一个目录,将对目录进行监测而不包括其中的内容。
下面是一个非常简单的文件:
注意模板可以与选择标志相混合。“R-2”是一个简单的方式来指出缺省检测不使用
Snefru。
7.2.5安装Tripwire
可以到TripwireSecuritySystems,Inc.的Web站点/tripwire
去下载Tripwire。可以下载UNIX或Linux版本。对于Linux,有一个RPM软件包包括二进制代
码和源代码。为了得到最大的灵活性,下载源代码RPM,应该是或类似
的文件。同时下载PDF格式的指南文件。
以root登录后,用下面命令形式使用RPM(RedHatPackageManager)来安装Tripwire源
代码:
$
Tripwire源代码将被拷贝到/usr/src/redhat/BUILD/tripwire-1.3-1中。
浏览产品中包含的README文件和FAQ文件。也许还要阅读一下使用指南。
警告如果用户十分小心,那么就应在安装Tripwire之前重新安装系统。这是确保系统
干净的唯一方式。如果怀疑自己被攻击了,那么干脆从最初的安装盘开始重建系统。
如果在一个UNIX系统(不是Linux)中安装,则需要检测Makefile,编辑:/include/config.h
文件,并进行其他定制。查看指南来寻找详细步骤。
82UNIX系统安全工具
下载
从最顶层的Tripwire源目录输入命令make,这将建立程序二进制执行文件。Tripwire二进
制文件(“tripwire”)和配置文件(“”)将放在目录/usr/local/bin/tw中。如果在编译
过程出现问题,查阅指南来解决。
Tripwire包括一个测试安装是否成功的脚本,在顶层目录输入命令maketest来调用《小黏包》半人间 脚本。
7.3配置Tripwire
还要编辑文件使其能正确监测文件和目录。用户不希望Tripwire漏掉对重要文件
的检查,也不愿让它对正常系统操作中经常改变的文件进行报告。缺省的十分慷慨,
它监漂亮的反义词是什么 测Linux系统中的多数文件。用户也许希望安装完后继续第一次运行Tripwire并根据输出
来调整文件。
运行命令tripwire-initialize使Tripwire在数据库生成模式下运行。这创建了基线数据库
—一个叫做-hostname的文件,“hostname”以用户的机器主机名代替。
提示数据库缺省放在“./databases”目录中。注意,为了改变数据库的位置,用户需
要重编译Tripwire。
7.4运行Tripwire
运行命令tripwire使得Tripwire在完整性检查模式下运行。Tripwire将进行比较并报告任何
差异。用户收到的报告应该有一个如清单7-3那样的序言。
清单7-3一个Tripwire报告的序言
用户将发现Tripwire标志不关心文件的变化—那些作为普通系统操作一部分发生或用户
已经知道的变化。可以在交互模式或数据库更新模式中运行Tripwire来更新数据库中的条目。
交互模式在每次发现一个文件或目录被增添、删除或修改时提示用户更新数据库。输入
第7章Tripwire83
下载
命令tripwire-interactive使Tripwire运行在交互模式下。用户将看到一个文件已被增加或删除
的提示并询问“Updateentry?”,如清单7-4所示。
清单7-4更新增加或删除的条目
有两个文件被添加(“”和一个HOWTO),一个文件被删除(HOWTO的压缩版)。
输入“y”或敲回车表明增加和删除应该在新的Tripwire数据库中指明,像清单7-5中显示的那
样,用户可以输入“Y”来更新同一条目中的所有文件。
如果一个文件被修改(不同于增加或删除),Tripwire将注意到这点并报告被修改的属性。
清单7-5更新改变的条目
最后,Tripwire确认条目已被更新。
数据库更新模式在命令行提供一种快速升级数据库的方法,假如刚安装了文件/usr/local/
bin/。可以用下面命令更新数据库:
#tripwire-update/usr/local/bin/
84UNIX系统安全工具
下载
注意该命令可以用来更新目录中所有的文件。
7.5Tripwire提示和技巧
•定期使用cron运行Tripwire。如果系统与Internet相连,把它设为至少每天运行一次。使
用tripwire|/bin/mailroot这样的命令让Tripwire把结果送给root是一个好主意。
•如果使用cron定期运行Tripwire,那么也同样要在随机时间间隔屁股的拼音怎么写 运行Tripwire。一个潜在
的攻击者可能看出Tripwire运行的时间间隔并把其当作机会。
•Tripwire允许用户运行快速检测,因为它排除了特定的签名。该选项在用户频繁从cron
运行Tripwire或以交互方式运行检测时不想在终端前等候太长的情况下很有用。“-i”选
项标志强迫Tripwire忽略特定的签名。例如,如果使用MD5(签名1)和Snefru(签名2)
来产生基线数据库而现在想不使用Snefru进行快速检测,可运行命令tripwire-i2。
•Tripwire不检查文件系统的安装点。所以当在中有一个root目录时(“/”),它将
不检查/usr和/home。用户需要在文件中声明想让Tripwire检查的每个分区起点。
•Tripwire数据库可能很大。如果安全存储Tripwire数据库的唯一只读介质是软盘,那么需
要限制数据库的大小。可以设置来忽略不太重要的文件,限制文件监测属性的
数目,或只使用一种签名。虽然这些措施可能降低程序的有效性,但与可能遭到攻击者
破坏相比还是推荐Tripwire检测。
•可运行tripwire-v察看Tripwire的行为。Tripwire在检测文件时显示其名字。
•和tripwire的帮助文件包含丰富的信息。
注释:
[1]Tripwire的作者为复制的签名在5台计算机上测试了250000个文件。虽然16位的CRC
产生了大约25000个冲突,但128位的MD4、MD5和Snefru没产生冲突。参见GeneH.
Kim和rd的设计文档“TheDesignandImplementationofTripwire”。
[2]该图基于和rd的设计文档“TheDesignandImplementation
ofTripwire”中的插图。
第7章Tripwire85
下载
更多推荐
tripwire是什么意思pwire在线翻译读音例
发布评论