C. 分析入侵
当你的系统从网络上断开之后,你可以开始彻底查看日志文件和配置文件,以期发现入侵的信号,入侵者的改动和配置的弱点.
1. 查看系统软件和配置文件的更改
校验所有的系统二进制和配置文件.当查看系统软件和配置文件的修改时,要记住在被入侵系统中的任何校验二进制和配置文件的工具都有可能被更改.还要记住操作系统的内核本身也可能被更改.因此,建议从一个可信内核启动并且使用一个干净工具来分析入侵活动.在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.在有些入侵案例中,负责处理Internet连接的系统文件被换成木马程序.因为某些木马程序可能与原始的二进制文件拥有相同的时戳,校验值,在UNIX系统上推荐使用cmp命令进行原始发行介质和二进制文件的直接比较.或者可以对UNIX或NT系统上的可疑二进制文件进行MD5检查,把结果和原始二进制文件的MD5校验和比较.很多厂商提供发行版本中二进制文件的MD5校验和.接下来,对比确信没有被改动过的文件检查你的配置文件. 当检查UNIX系统的配置文件时,
需要检查:
/etc/passwd文件中不属于本系统的条目.
/etc/inetd.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"命令或Server Manager工具检查未授权的隐藏共享.使用从NT resource kit中得到的工具pulist.exe或NT任务管理器检查无法识别的进程.
2. 查看数据的更改
在被入侵系统上的数据通常都会被入侵者更改.建议检验Web页面,ftp文挡,用户主目录中的文件,以及系统上的其他数据文件.
3. 查看入侵者留下的工具和数据
入侵者通常会安装定制的工具,以便于持续监视或再次访问被入侵的主机.入侵者经常留下的文件类型有:
Network Sniffers
网络sniffer是一个可以监视和记录网络活动并将结果写入文件的工具.入侵者通常使用网络sniffer来捕获在网络上明文传送的用户名和密码数据. Sniffers在UNIX平台上更常见一些,但是在NT平台上应检查关键的日志记录程序
Trojan Horse Programs
特络依木马程序是指那些看起来完成一种功能但同时又具备另一种完全不同功能的程序.入侵者使用木马程序来隐藏他们的活动,捕获用户名和密码,为将来再次记入被入侵的系统创建后门.
Backdoors
后门程序设计成可以使入侵者在目标主机内部隐藏自己.后门允许安装它的用户不通过正常的验证过程或利用系统漏洞来访问系统.
Vulnerability Exploits
大部分入侵事件都是由于计算机运行了带有漏洞的软件造成的.入侵者经常使用工具来利用已知的漏洞从而获得非授权的访问.这些工具通常留在系统的隐含目录中.
Other Intruder Tools
上面提到的入侵者工具并不是确切及全面的列表.入侵者还会留下其他工具.应该注意的工具有:
探测系统漏洞的工具
发起大范围探测其他站点的工具
发起拒绝服务攻击的工具
使用计算机和网络资源的工具
Intruder Tool Output
你会发现许多入侵者工具的记录文件.这些记录文件可能会包含其他相关站点的信息,你被入侵主机的漏洞和其他站点的漏洞.建议彻底搜查这样的工具和输出文件.注意搜查时要使用确信是干净的工具.在被入侵系统上搜索入侵者工具时:
查看在UNIX系统中/dev目录下不应有的ACSII文件.某些木马二进制程序的配置文件通常在/dev目录下.仔细查看隐含文件和目录.如果入侵者建立了一个新账号和主目录,通常是隐含文件和目录.
查看奇怪的文件和目录,比如"…"(三个点)或".. "(两个点和一些空格)[UNIX].入侵者经常在这样的目录中使用和隐藏文件.在NT系统上,查看那些看起来很象系统文件 (EXPLORE.EXE, UMGR32.EXE, etc)的文件和目录.
4. 检查日志文件
检查日志文件会帮助你确认系统是如何被入侵的,在入侵时发生了什么事情,访问你计算机的远程主机是谁.但是要知道被入侵系统中的任何日志信息都有可能被入侵者修改过.在UNIX系统上,应该先看看/etc/syslog.conf文件,确定syslog在哪里记录事件.NT系统通常向NT事件三个日志中的一个记录每件事情,所有这些可以通过事件查看器来检查.其他NT应用程序比如IIS服务器可能记录到其他地方,IIS服务器缺省的日志是在
c:\winnt\system32\logfiles
下面列出了一些通用UNIX日志文件名,它们的功能和文件的内容.这些日志文件是否在系统中存在,依赖于系统的配置.
messages
messages日志包含相当广泛的信息.查看该文件中的异常情况.超越常理的任何事情都应该被查出来,在入侵发生时间附近的事件应该仔细检查.
xferlog
如果被入侵的系统有FTP服务器功能, xferlog会记录所有传输的文件名.这有助于发现入侵者上载到系统中的工具,也能发现从你系统中下载的内容.
utmp
这个文件包含当前登录在系统上每一位用户的信息(二进制格式).这个文件仅在确定当前有哪些用户登录时有用.通过who命令可以得到其中的内容.
wtmp
用户每一次成功的登录,退出,系统重启,wtmp文件都会被修改.这是一个二进制文件;因此 需要使用工具来从文件中获取有用的信息.last就是这样一种工具.last的输出包含一个表 ,表中记录了用户名,相关登录时间和来源主机.在这个文件中检查可疑连接(比如从未授权主机),这些信息可以用 于确定是否还有其他主机受到影响以及系统中究竟有哪些账号被破解使用.
secure
某些版本的UNIX(比如RedHat Linux)向secure日志文件中记录tcpwrapper消息.每次当一个从inetd派生并使用tcpwrapper启动的服务连接建立时,该文件中会添加一条日志消息. 查看这个文件时,注意那些对不常用服务的访问或从不熟悉主机来的连接等异常情况.查看日志文件时要注意那些不寻常的记录项.
LINUX NT入侵后的恢复
0
相关文章