unix和linux的区别:Unix 的入侵追踪

  在*NIX系统遭受入侵后确定损失及入侵者攻击源地址相当重要虽然在大多数入侵者懂得使用曾被他们攻陷机器作为跳板来攻击你服务器可在他们发动正式攻击前所做目标信息收集工作(试探性扫描)常常是从他们工作机开始本篇介绍如何从遭受入侵系统日志中分析出入侵者IP并加以确定

  1.messages

  /var/adm是UNIX日志目录(linux下则是/var/log)有相当多ASCII文本格式日志保存的下当然 让我们把焦点首先集中在messages 这个文件,这也是入侵者所关心文件它记录了来自系统级别信息在这里大量日志记录对于我们是无用

  比如:

  Apr 25 21:49:30 2000 unix: Copyright (c) 1983-1997, Sun Microsystems, Inc.

  Apr 25 21:49:30 2000 unix: mem = 262144K (0x10000000)

  这样显示版权或者硬件信息记录而:

  Apr 29 19:06:47 www login[28845]: FAILED LOGIN 1 FROM xxx.xxx.xxx.xxx ,

  User not known to the underlying authentication module

  这样登录失败记录:

  Apr 29 22:05:45 game PAM_pwdb[29509]: (login) session opened for user ncx by (uid=0)因此第步应该是 Kill -HUP cat `/var/run/syslogd.pid`(当然有可能入侵者已经帮我们做过了;-)那样我们得不到任何有用信息)

  在下面这个网址你可以找到大量日志审计分析工具或者脚:

  http://www.securityfocus.com/tem ... platform=&path=[%20auditing%20][%2-0log%20analysis%20]

  2.wtmp,utmp logs,ftp日志

  你能够在/var/adm,/var/log,/etc目录中找到名为wtmp,utmp文件,这记录着用户何时何地telnet上主机 在黑客中最古老也是最流行zap2(编译后文件名般叫做z2或者是叫wipe). 也是用来抹掉在这两个文件中用户登录信息然而由于懒惰或者糟糕网络速度(>3秒echo就令人崩溃而我经常遇见10 倍于此回显时间 )很多入侵者没有上载或编译这个文件管理员所需要就是使用lastlog这个命令来获得入侵者上次连接源地址( 当然这个地址有可能是他们个跳板)ftp日志般是/var/log/xferlog该文本形式文件详细记录了以FTP 方式上传文件时间来源文件名等等不过由于该日志太明显所以稍微高明些入侵者几乎不会使用该思路方法来传文件而使用rcp较普遍些.当然你可以# cat /var/log/xferlog | grep -v 202.106.147.来查看那些不应该出现地址

  3.sh_history

  在获得root 权限后入侵者建立了他们自己入侵帐号更高级窍门技巧是给类似uucplp不常使用系统用户名加上密码在遭受入侵后即使入侵者删除了.sh_history或者.bash_hi-story 这样文件执行kill -HUP `cat /var/run/inetd.conf`即可将保留在内存页中bash命令记录重新写回到磁盘然后执行find / -name.sh_historypr仔细查看每个可疑shell命令日志尤其是当你在/usr/spool/lp(lp home dir),/usr/lib/uucp/(uucp home dir)这样目录下找了.sh_history文件时往往入侵者在需要目标机和工作机传送文件时为了避免被syslog,可能使用从目标机ftp到工作机思路方法因此在sh_history中你有可能发现类似ftp xxx.xxx.xxx.xxx或者[email protected]:/tmp/backdoor /tmp/backdoor这样显示出入侵者IP或域名命令

  5.http服务器日志

  这很有可能是确定入侵者真实攻击发源地最有效思路方法以最流行apache服务器为例在?${prefix}/logs/ 目录下你可以发现access.log这个文件该文件记载了访问者IP,访问时间和请求访问内容在遭受入侵后我们应该可以在该文件中发现类似下面:record:xxx.xxx.xxx.xxx - - [28/Apr/2000:00:29:05 -0800] "GET/cgi-bin/rguest.exe"404 -xxx.xxx.xxx.xxx - - [28/Apr/2000:00:28:57 -0800] "GET /msads/Samples/SELECTOR/showcode.asp" 404 -来自IP为xxx.xxx.xxx.xxx某人在2000年4月28号0点28分试图访问/msads/Samples/SELECTOR/showcode.asp文件这是在使用web cgi扫描器后遗留下日志大部分web扫描器都是基于MS操作系统而为了更快速度使用基于*nix扫描器入侵者常选择离自己最近服务器结合攻击时间和IP我们可以知道入侵者大量信息

  6.核心dump

  这是种相对较复杂思路方法但是也有效 个安全稳定守护进程在正常运行时候是不会dump出系统核心当入侵者利用远程漏洞攻击时许多服务正在执行个getpeername (参见编程)因此入侵者IP也保存在内存中此时服务overflow ,系统p 内存页文件被dump到core文件,这意味着你可能在大段杂乱无章中(事实上是个全局数据库中进程变量)找到个包含有执行此expoloitIPBTW: 这段是参考了http://members.tripod.com/mixtersecurity/paper.html后写出我做了个cmsd远程攻击测试但只在中间找到了入侵者远程overflow部分命令没有找到IP不过这仍有理由相信Mixter(paper.html作者)

  7.代理服务器日志

  代理是大中型企业网常使用来做为内外信息交换个接口它忠实地记录着每个用户所访问内容当然也包括入侵者访问内容以最常用squid代理为例通常你可以在/usr/local/squid/logs/下找到access.log 这个庞大日志文件当然由于日志记录添加得很快在安全事故后应该及时备份它你可以在以下地址获得squid日志分析脚本:http://www.squid-cache.org/Doc/Users-Guide/added/stats.html通过对敏感文件访问日志分析可以知道何人在何时访问了这些本该保密内容

  8.路由器日志

  默认方式下路由器不会记录任何扫描和登录因此入侵者常用它做跳板来进行
Tags:  unix网络编程 chinaunix unix的特点 unix和linux的区别

延伸阅读

最新评论

发表评论