11、安装完整性检测工具:如Tripwire
应该经常对系统中文件的完整性进行检查,以确保他们没有被恶意的改变。Solaris提供了
"pkgchk -n"命令将安装的文件大小、权限及校验与package数据库进行比较。但是检验是可以会
欺骗的,数据库也可能会被更改。因此,真正需要的是采用安全的hashing算法的文件完整性检查
工具。
Yassp将在/secure/tripwire中安装tripwire。它采用多种hashing算法。
系统安装到这个阶段,我们建议对新配置的系统及文件创建快照(snapshot),初始化tripwire的
数据库,定期进行检查变动情况。如果有可能的话,将主数据库单独保存。
文件完整性检查的可选功能
* Tripwire:有免费和商业两种版本
* 建议在中心服务器上使用商业版本,更加稳定,在其它主机上使用免费的版本。
* PGP可用,PGP can also be used,by signing files to be protected(creating lots of
signature files),then writing a script to check the validity of signatures.This will
not catch permission,link,inode or modify date changes though.
* MD5 signatures(单向hash算法)可能同样使用,但是MD5签名列表不要保存在被监视的主机上,
除非已经加密或者PGP signed。
使用免费Tripwirer例子:
* Yassp安装/secure/tripwire/tripwire及缺少的配置tw.config,也可以获得源代码后自行编译
。
* 如果需要,编辑/secure/tripwire/tw.config,符合自己要求。
* 接下来,做系统的初始状态。
cd /secure/tripwire; ./tripwire -i 2 -initialise -c tw.config建立一个新的文件数据库
。可能会有一些文件无法找到的报错信息,忽略它们。把新产生的数据库(在
/secure/tripwire/database)复制到软盘上。在将来如果怀疑系统遭受攻击或者改动时,可以使
用此文件。
* 可以在cron中设置每天进行检查,也可以手工进行
./tripwire -i 2 -c tw.config
* 告诉tripwire,文件及目录的改变正常
tripwire -update [/file1 /file2 /patch3.....]
* improvements:
* tripwire数据库如果保存在同一主机上,应压缩并加密,或者用强加密工具(如PGP)对其进行
sign。
* 从一台信任主机上检查其它系统,复制tripwire及其数据库,通过SSH远程运行它,检查完后,
删除数据库文件。
* 这样使得攻击者难于觉察系统采用了tripwire进行监控。
* 阅读脚本trip_host.sh,过滤掉“无文件及目录”报错。它必须从‘master'主机上运行,对目
标机有SSH信任关系。
第一次运行
/secure/tripwire/trip_host.sh -init HOST
以后每次运行
/sevure/tripwire/trip_host.sh -check HOST
将database文件妥善保存。
12、安装、测试、加固应用程序
特定的应用,如FTP、DNS、Email等将在其它文章中论述。
13、开始使用
准备使用
1.如果不再需要使用CD-ROM,在/etc/yassp.conf中关闭volume manager。如果在今后需要安装
CD,手工启动vold进行新设备的检测:
drvconfig;disks;vold &df -k
2.如果在安装调试的过程当中,必须将/opt及/usr分区安装成为read-write,那么此时,将它们
mount成为read-only。
3.重新做tripwire的初始化。
4.将系统备份到两盘磁带上,one offsite。
5.使用扫描器扫描系统,确保只有需要的服务开启。
6. 请其他人做测试,避免遗漏。
7. 详细检查-什么在工作?什么被禁止?检查控制台/log的内容,系统是否如希望那样工作?经
常检查日志记录。
日常维护
* 使用Sun的Patchdiag进行补丁的检查,需要就进行升级。对于内核的补丁,要在别的机器上先
进行测试。
* 检查所有的错误日志及异常行为:syslog(/var/adm/messages或
/var/log/*log),/var/cron/log,last,/var/adm/sulog,/var/adm/loginlog,application/server
日志记录。
* 编写脚本,报告关键进程是否正常,关键的系统是否可以ping通。
* 运行tripwire。
* 定期查看最新的漏洞及风险报告。
===================================================================================
此文的原文在这里
http://www.boran.com/security/sp/Solaris_hardening3.HTML
我水平有限,翻译中一定有很多错误,而且也有不少不明白的地方,希望大家一起讨论,指出
其中理解错误的地方,共同提高。
标签: