被入侵系统的恢复指南(3)
C.入侵分析 |
现在你可以审查日志文件和系统配置文件了,检查入侵的蛛丝马迹,入侵者对系统的修改,和系统配置的脆弱性。
1.检查入侵者对系统软件和配置文件的修改
a.校验系统中所有的二进制文件
在检查入侵者对系统软件和配置文件的修改时,一定要记住:你使用的校验工具本身可能已经被修改过,操作系统的内核也有可能被修改了,这非常普遍。因此,建议你使用一个可信任的内核启动系统,而且你使用的所有分析工具都应该是干净的。对于UNIX系统,你可以通过建立一个启动盘,然后对其写保护来获得一个可以信赖的操作系统内核。
你应该彻底检查所有的系统二进制文件,把它们与原始发布介质(例如光盘)做比较。因为现在已经发现了大量的特洛伊木马二进制文件,攻击者可以安装到系统中。
在UNIX系统上,通常有如下的二进制文件会被特洛伊木马代替:telnet、in.telnetd、login、su、ftp、ls、ps、netstat、ifconfig、find、du、df、libc、sync、inetd和syslogd。除此之外,你还需要检查所有被/etc/inetd.conf文件引用的文件,重要的网络和系统程序以及共享库文件。
在NT系统上。特洛伊木马通常会传播病毒,或者所谓的"远程管理程序",例如Back Orifice和NetBus。特洛伊木马会取代处理网络连接的一些系统文件。
一些木马程序具有和原始二进制文件相同的时间戳和sum校验值,通过校验和无法判断文件是否被修改。因此,对于UNIX系统,我们建议你使用cmp程序直接把系统中的二进制文件和原始发布介质上对应的文件进行比较。
你还可以选择另一种方法检查可疑的二进制文件。向供应商索取其发布的二进制文件的MD5校验值,然后使用MD5校验值对可疑的二进制文件进行检查。这种方法适用于UNIX和NT。
b.校验系统配置文件
在UNIX系统中,你应该进行如下检查:
检查/etc/passwd文件中是否有可疑的用户
检查/etc/inet.conf文件是否被修改过
如果你的系统允许使用r命令,例如rlogin、rsh、rexec,你需要检查/etc/hosts.equiv或者.rhosts文件。
检查新的SUID和SGID文件。下面命令会打印出系统中的所有SUID和SGID文件:
#find / ( -perm -004000 -o -perm -002000 ) -type f -print
对于NT,你需要进行如下检查:
检查不成对的用户和组成员
检查启动登录或者服务的程序的注册表入口是否被修改
检查"net share"命令和服务器管理工具共有的非验证隐藏文件
检查pulist.ext程序无法识别的进程