当前位置: 首页 > 图文教程 > 服务器 > Linux服务器 > Web服务器记录中查找黑客踪迹的方法

Linux服务器
用VMwareGSX和W2K群集服务实现Exchange群集
在RHAS3中配置流媒体服务器
虚拟服务器实现方法(动态均衡)
用Linux建立局域网服务器
如何设置一个基本的OpenLDAPServer
Apache服务器实现用户验证
巧用TMPFS加速Linux服务器
SUNEnterprise220RServer做Raid1小结
如何查看OpenServer产品的许可过期日
快速搭建TimeServer与NISServer
用Apache+Tomcat创建与管理Web服务器
基于Fedora上建立功能强大的邮件服务器
RedHat8.0上CVS服务器的建立和权限配置
RedHatLinux下配置DHCP服务器实战
Linux代理服务全攻略:Squid篇
MOD_MP3让Apache成为流媒体服务器
Linux服务器设置指南-代理接入服务器(1)
Linux服务器设置指南-代理接入服务器(2)
Linux服务器设置指南-代理接入服务器(3)
Linux服务器设置指南-代理接入服务器(4)

Linux服务器 中的 Web服务器记录中查找黑客踪迹的方法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-18   浏览: 37 ::
收藏到网摘: n/a


摘要:本文主要讲述如何分析Web服务器记录,在众多记录里查找黑客攻击的蛛丝马迹,并针对当今流行的两类Web服务器给出具体的一些实例。

现今的网络,安全越来越受到大家的重视,在构建网络安全环境时,在技术手段,管理制度等方面都逐步加强,设置防火墙,安装入侵检测系统等等。但网络安全是个全方位的问题,忽略哪一点都会造成木桶效应,使得整个安全系统虚设。本文从分析Web服务器的logging记录来找出漏洞,防范攻击,从而加强Web服务器安全。

Web服务是Internet所提供最多,最丰富的服务,各种Web服务器自然也是受到攻击最多的,我们采用了很多措施来防止遭受攻击和入侵,其中查看Web服务器的记录是最直接,最常用,又比较有效的一种方法,但logging记录很庞大,查看logging记录是很繁琐的事情,如果抓不住重点,攻击线索就容易被忽略。下面就对最流行的两类Web服务器:Apache和IIS做攻击的实验,然后在众多的记录中查到攻击的蛛丝马迹,从而采取适当的措施加强防范。

1、默认的web记录
对于IIS,其默认记录存放在c:\winnt\system32\logfiles\w3svc1,文件名就是当天的日期,记录格式是标准的W3C扩展记录格式,可以被各种记录分析工具解析,默认的格式包括时间、访问者IP地址、访问的方法(GETorPOST…)、请求的资源、HTTP状态(用数字表示)等。对于其中的HTTP状态,我们知道200-299表明访问成功;300-399表明需要客户端反应来满足请求;400-499和500-599表明客户端和服务器出错;其中常用的如404表示资源没找到,403表示访问被禁止。

Apache的默认记录存放在/usr/local/apache/logs,其中最有用的记录文件是access_log,其格式包括客户端IP、个人标示(一般为空)、用户名(如果需要认证)、访问方式(GETorPOST…)、HTTP状态、传输的字节数等。

2、收集信息
我们模拟黑客攻击服务器的通常模式,先是收集信息,然后通过远程命令一步步实施入侵。我们使用的工具是netcat1.1forwindows,Web服务器ip为10.22.1.100,客户端IP为:10.22.1.80。

C:>nc-n10.22.1.10080
HEAD/HTTP/1.0
HTTP/1.1200OK
Server:Microsoft-IIS/4.0
Date:Sun,08Oct200214:31:00GMT
Content-Type:text/html
Set-Cookie:ASPSESSIONIDGQQQQQPA=IHOJAGJDECOLLGIBNKMCEEED;path=/
Cache-control:private

在IIS和Apache的log里显示如下:

IIS:15:08:4410.22.1.80HEAD/Default.asp200
Linux:10.22.1.80--[08/Oct/2002:15:56:39-0700]"HEAD/HTTP/1.0"2000

以上的活动看上去很正常,也不会对服务器产生任何影响,但这是通常攻击的前奏。

3、Web站点镜像
黑客经常镜像一个站点来帮助攻击服务器,常用来镜像的工具有Windows下的Teleportpro和Unix下的Wget。

下面我们看使用这两个工具后在服务器记录里的信息:

16:28:5210.22.1.80GET/Default.asp200
16:28:5210.22.1.80GET/robots.txt404
16:28:5210.22.1.80GET/header_protecting_your_privacy.gif200
16:28:5210.22.1.80GET/header_fec_reqs.gif200
16:28:5510.22.1.80GET/photo_contribs_sidebar.jpg200
16:28:5510.22.1.80GET/g2klogo_white_bgd.gif200
16:28:5510.22.1.80GET/header_contribute_on_line.gif200
16:49:0110.22.1.81GET/Default.asp200
16:49:0110.22.1.81GET/robots.txt404
16:49:0110.22.1.81GET/header_contribute_on_line.gif200
16:49:0110.22.1.81GET/g2klogo_white_bgd.gif200
16:49:0110.22.1.81GET/photo_contribs_sidebar.jpg200
16:49:0110.22.1.81GET/header_fec_reqs.gif200
16:49:0110.22.1.81GET/header_protecting_your_privacy.gif200

10.22.1.80是使用Wget的Unix客户端,10.22.1.81是使用Teleportpro的Windows客户端,都请求robots.txt文件,Robots.txt是请求没有被镜像的文件时所要用到的。所以看到有对robots.txt文件的请求,表明有镜像的企图。当然,在Wget和Teleportpro客户端,可以手工禁止对robots.txt文件的访问,这时,辨别方法可以看是否有从同一IP地址来的重复资源请求。

4、漏洞扫描
随着攻击的发展,我们可以用一些Web漏洞检查的软件,如Whisker,它可以检查已知晓的各种漏洞,如cgi程序导致的安全隐患等。下面是运行Whisker1.4的IIS和Apache的相关记录:

IIS
12:07:5610.22.1.81GET/SiteServer/Publishing/viewcode.asp404
12:07:5610.22.1.81GET/msadc/samples/adctest.asp200
12:07:5610.22.1.81GET/advworks/equipment/catalog_type.asp404
12:07:5610.22.1.81GET/iisadmpwd/aexp4b.htr200
12:07:5610.22.1.81HEAD/scripts/samples/details.idc200
12:07:5610.22.1.81GET/scripts/samples/details.idc200
12:07:5610.22.1.81HEAD/scripts/samples/ctguestb.idc200
12:07:5610.22.1.81GET/scripts/samples/ctguestb.idc200
12:07:5610.22.1.81HEAD/scripts/tools/newdsn.exe404
12:07:5610.22.1.81HEAD/msadc/msadcs.dll200
12:07:5610.22.1.81GET/scripts/iisadmin/bdir.htr200
12:07:5610.22.1.81HEAD/carbo.dll404
12:07:5610.22.1.81HEAD/scripts/proxy/403
12:07:5610.22.1.81HEAD/scripts/proxy/w3proxy.dll500
12:07:5610.22.1.81GET/scripts/proxy/w3proxy.dll500

Apache
10.22.1.80-[08/Oct/2002:12:57:28-0700]"GET/cfcache.mapHTTP/1.0"404266
10.22.1.80-[08/Oct/2002:12:57:28-0700]"GET/cfide/Administrator/startstop.htmlHTTP/1.0"404289
10.22.1.80-[08/Oct/2002:12:57:28-0700]"GET/cfappman/index.cfmHTTP/1.0"404273
10.22.1.80-[08/Oct/2002:12:57:28-0700]"GET/cgi-bin/HTTP/1.0"403267
10.22.1.80-[08/Oct/2002:12:57:29-0700]"GET/cgi-bin/dbmlparser.exeHTTP/1.0"404277
10.22.1.80-[08/Oct/2002:12:57:29-0700]"HEAD/_vti_inf.htmlHTTP/1.0"4040
10.22.1.80-[08/Oct/2002:12:57:29-0700]"HEAD/_vti_pvt/HTTP/1.0"4040
10.22.1.80-[08/Oct/2002:12:57:29-0700]"HEAD/cgi-bin/webdist.cgiHTTP/1.0"4040
10.22.1.80-[08/Oct/2002:12:57:29-0700]"HEAD/cgi-bin/handlerHTTP/1.0"4040
10.22.1.80-[08/Oct/2002:12:57:29-0700]"HEAD/cgi-bin/wrapHTTP/1.0"4040
10.22.1.80-[08/Oct/2002:12:57:29-0700]"HEAD/cgi-bin/pfdisplay.cgiHTTP/1.0"404
检查这种攻击的关键是看同一IP地址对cgi目录(IIS是scripts,Apache是cgi-bin)文件请求出现多个404状态。这时就要检查相应cgi目录里的程序安全性。

5、远程攻击
下面我们以针对IIS的MDAC攻击为例,来了解远程攻击在log里的记录情况。MDAC漏洞使得攻击者可以在Web服务器端执行任何命令。

17:48:4910.22.1.80GET/msadc/msadcs.dll200
17:48:5110.22.1.80POST/msadc/msadcs.dll200

当攻击发生后,在log会留下对msadcs.dll请求的记录。

另一个有名的攻击是asp源代码泄漏的漏洞,当这种攻击发生时,log文件会有如下记录:

17:50:1310.22.1.81GET/default.asp+.htr200

对于未授权访问的攻击记录,Apachelog会显示:

[08/Oct/2002:18:58:29-0700]"GET/private/HTTP/1.0"401462

6、总结
管理一个安全站点要求系统管理人员具备安全的常识和警惕性,从不同的渠道了解安全的知识不仅能对付已发生的攻击,还能对将会发生的攻击做到较好的防范。而通过Log文件来了解、防范攻击是很重要但又经常容易忽略的手段。

IDS(入侵检测系统)能帮助你很多,但不能完全代替安全管理。仔细检查Log,IDS所遗漏的东西,就可能在这里发现。