根据Web服务器记录来追击黑客入侵
来源:服务器技术 发布时间:2007-08-23 13:38:00
现今的网络,安全越来越受到大家的重视,在构建网络安全环境时,在技术手段,管理制度等方面都逐步加强,设置防火墙,安装入侵检测系统等等。但网络安全是个全方位的问题,忽略哪一点都会造成木桶效应,使得整个安全系统虚设。本文从分析Web服务器的logging记录来找出漏洞,防范攻击,从而加强Web服务器安全。
Web服务是Internet所提供最多,最丰富的服务,各种Web服务器自然也是受到攻击最多的,我们采用了很多措施来防止遭受攻击和入侵,其中查看Web服务器的记录是最直接,最常用,又比较有效的一种方法,但logging记录很庞大,查看logging记录是很繁琐的事情,如果抓不住重点,攻击线索就容易被忽略。下面就对最流行的两类Web服务器:Apache和IIS做攻击的实验,然后在众多的记录中查到攻击的蛛丝马迹,从而采取适当的措施加强防范。
1、默认的web记录
对于IIS,其默认记录存放在c:\\winnt\\system32\\logfiles\\w3svc1,文件名就是当天的日期,记录格式是标准的W3C扩展记录格式,可以被各种记录分析工具解析,默认的格式包括时间、访问者IP地址、访问的方法(GET or POST...)、请求的资源、HTTP状态(用数字表示)等。对于其中的HTTP状态,我们知道200-299表明访问成功;300-399表明需要客户端反应来满足请求;400-499和500-599表明客户端和服务器出错;其中常用的如404表示资源没找到,403表示访问被禁止。
Apache的默认记录存放在/usr/local/apache/logs,其中最有用的记录文件是access_log,其格式包括客户端IP、个人标示(一般为空)、用户名(如果需要认证)、访问方式(GET or POST...)、HTTP状态、传输的字节数等。
2、收集信息
我们模拟黑客攻击服务器的通常模式,先是收集信息,然后通过远程命令一步步实施入侵。我们使用的工具是netcat1.1 for windows,Web服务器ip为10.22.1.100,客户端IP为:10.22.1.80。
C:>nc -n 10.22.1.100 80 HEAD / HTTP/1.0 HTTP/1.1 200 OK Server: Microsoft-IIS/4.0 Date: Sun, 08 Oct 2002 14:31:00 GMT Content-Type: text/html Set-Cookie: ASPSESSIONIDGQQQQQPA=IHOJAGJDECOLLGIBNKMCEEED; path=/ Cache-control: private 在IIS和Apache的log里显示如下: IIS: 15:08:44 10.22.1.80 HEAD /Default.asp 200 Linux: 10.22.1.80- - [08/Oct/2002:15:56:39 -0700] \"HEAD / HTTP/1.0\" 200 0
以上的活动看上去很正常,也不会对服务器产生任何影响,但这是通常攻击的前奏。
3、Web站点镜像
黑客经常镜像一个站点来帮助攻击服务器,常用来镜像的工具有Windows下的Teleport pro和Unix下的Wget。
下面我们看使用这两个工具后在服务器记录里的信息:
16:28:52 10.22.1.80 GET /Default.asp 200 16:28:52 10.22.1.80 GET /robots.txt 404 16:28:52 10.22.1.80 GET /header_protecting_your_privacy.gif 200 16:28:52 10.22.1.80 GET /header_fec_reqs.gif 200 16:28:55 10.22.1.80 GET /photo_contribs_sidebar.jpg 200 16:28:55 10.22.1.80 GET /g2klogo_white_bgd.gif 200 16:28:55 10.22.1.80 GET /header_contribute_on_line.gif 200 16:49:01 10.22.1.81 GET /Default.asp 200 16:49:01 10.22.1.81 GET /robots.txt 404 16:49:01 10.22.1.81 GET /header_contribute_on_line.gif 200 16:49:01 10.22.1.81 GET /g2klogo_white_bgd.gif 200 16:49:01 10.22.1.81 GET /photo_contribs_sidebar.jpg 200 16:49:01 10.22.1.81 GET /header_fec_reqs.gif 200 16:49:01 10.22.1.81 GET /header_protecting_your_privacy.gif 200
10.22.1.80是使用Wget的Unix客户端,10.22.1.81是使用Teleport pro的Windows客户端,都请求robots.txt文件,Robots.txt是请求没有被镜像的文件时所要用到的。所以看到有对robots.txt文件的请求,表明有镜像的企图。当然,在Wget和Teleport pro客户端,可以手工禁止对robots.txt文件的访问,这时,辨别方法可以看是否有从同一IP地址来的重复资源请求。
4、漏洞扫描
随着攻击的发展,我们可以用一些Web漏洞检查的软件,如Whisker,它可以检查已知晓的各种漏洞,如cgi程序导致的安全隐患等。下面是运行Whisker1.4的IIS和Apache的相关记录:
IIS
12:07:56 10.22.1.81 GET /SiteServer/Publishing/viewcode.asp 404
12:07:56 10.22.1.81 GET /msadc/samples/adctest.asp 200
12:07:56 10.22.1.81 GET /advworks/equipment/catalog_type.asp 404
12:07:56 10.22.1.81 GET /iisadmpwd/aexp4b.htr 200
12:07:56 10.22.1.81 HEAD /scripts/samples/details.idc 200
12:07:56 10.22.1.81 GET /scripts/samples/details.idc 200
12:07:56 10.22.1.81 HEAD /scripts/samples/ctguestb.idc 200
12:07:56 10.22.1.81 GET /scripts/samples/ctguestb.idc 200
12:07:56 10.22.1.81 HEAD /scripts/tools/newdsn.exe 404
12:07:56 10.22.1.81 HEAD /msadc/msadcs.dll 200
12:07:56 10.22.1.81 GET /scripts/iisadmin/bdir.htr 200
12:07:56 10.22.1.81 HEAD /carbo.dll 404
12:07:56 10.22.1.81 HEAD /scripts/proxy/ 403
12:07:56 10.22.1.81 HEAD /scripts/proxy/w3proxy.dll 500
12:07:56 10.22.1.81 GET /scripts/proxy/w3proxy.dll 500
Apache
10.22.1.80-[08/Oct/2002:12:57:28 -0700] \"GET /cfcache.map HTTP/1.0\" 404 266
10.22.1.80-[08/Oct/2002:12:57:28 -0700] \"GET /cfide/Administrator/startstop.html HTTP/1.0\" 404 289
10.22.1.80-[08/Oct/2002:12:57:28 -0700] \"GET /cfappman/index.cfm HTTP/1.0\" 404 273
10.22.1.80-[08/Oct/2002:12:57:28 -0700] \"GET /cgi-bin/ HTTP/1.0\" 403 267
10.22.1.80-[08/Oct/2002:12:57:29 -0700] \"GET /cgi-bin/dbmlparser.exe HTTP/1.0\" 404 277
10.22.1.80-[08/Oct/2002:12:57:29 -0700] \"HEAD /_vti_inf.html HTTP/1.0\" 404 0
10.22.1.80-[08/Oct/2002:12:57:29 -0700] \"HEAD /_vti_pvt/ HTTP/1.0\" 404 0
10.22.1.80-[08/Oct/2002:12:57:29 -0700] \"HEAD /cgi-bin/webdist.cgi HTTP/1.0\" 404 0
10.22.1.80-[08/Oct/2002:12:57:29 -0700] \"HEAD /cgi-bin/handler HTTP/1.0\" 404 0
10.22.1.80-[08/Oct/2002:12:57:29 -0700] \"HEAD /cgi-bin/wrap HTTP/1.0\" 404 0
10.22.1.80-[08/Oct/2002:12:57:29 -0700] \"HEAD /cgi-bin/pfdisplay.cgi HTTP/1.0\" 404
检查这种攻击的关键是看同一IP地址对cgi目录(IIS是scripts,Apache是cgi-bin)文件请求出现多个404状态。这时就要检查相应cgi目录里的程序安全性。
5、远程攻击
下面我们以针对IIS的MDAC攻击为例,来了解远程攻击在log里的记录情况。MDAC漏洞使得攻击者可以在Web服务器端执行任何命令。
17:48:49 10.22.1.80 GET /msadc/msadcs.dll 200
17:48:51 10.22.1.80 POST /msadc/msadcs.dll 200
当攻击发生后,在log会留下对msadcs.dll请求的记录。
另一个有名的攻击是asp源代码泄漏的漏洞,当这种攻击发生时,log文件会有如下记录:
17:50:13 10.22.1.81 GET /default.asp+.htr 200
对于未授权访问的攻击记录,Apache log会显示:
[08/Oct/2002:18:58:29 -0700] \"GET /private/ HTTP/1.0\" 401 462
6、总结
管理一个安全站点要求系统管理人员具备安全的常识和警惕性,从不同的渠道了解安全的知识不仅能对付已发生的攻击,还能对将会发生的攻击做到较好的防范。而通过Log文件来了解、防范攻击是很重要但又经常容易忽略的手段。
IDS(入侵检测系统)能帮助你很多,但不能完全代替安全管理。仔细检查Log,IDS所遗漏的东西,就可能在这里发现。
猜你喜欢
- 内容摘要:今天来简单的谈谈如何写软文,可能大家会觉得:软文,不就是写个小作文,后面带上自己的链接吗,但现在越来越重视软文的结果,就是各个站长
- 1、如果你必须使用Java script的下拉菜单、图片地图、或者图片链接,那么你一定要放置它们的文本链接在页面的某些地方,以便于搜索引擎的
- 酷影小何是我在网上用得最多的名字,我从2003年开始接触计算机网络,以前都是做免费的个人主页,2006年接触kingcms后,在大S的影响下
- 老谢研究网站推广很多年了,SEO是个很不错的推广。站长们研究SEO兴趣也很高,这很好,因为SEO可以直接的为你网站带来流量。但是老谢认为我们
- Godaddy主机用户如果上传文件到网站的话,需要一个FTP客户端。FTP代表File Transfer Protocol (文件传输协议)
- 好几天没写文章了,这几天都在忙两个 * 局的网站。今天抽空写些关于长尾关键词在网站流量中的作用。“长尾”这个词来源于著名的长尾效应。所谓长尾效
- 引言:网站PR值(Page Rank)在网站优化和搜索引擎排名中起到一个不小的作用,就本人对PR 更新的预测,特地和大家分享一下.googl
- NFS是网络文件系统(Network File System)的简称,是分布式计算系统的一个组成部分,可实现在异种网络上共享和装配远程文件系
- 高级安全篇1.关闭DirectDraw这是C2级安全标准对视频卡和内存的要求。关闭DirectDraw可能对一些需要用到DirectX的程序
- 北京时间10月14日消息,据国外媒体报道,市场调研公司comScore刚刚披露的9月数据显示,Facebook和Twitter之间的差距正在
- 下面是该作者对dedecms建站做seo优化的内容1、将当前位置的“主页”字样,改为“你自己的网站名称”。解释:学习过SEO的朋友一看就知道
- Google Base搜索服务(腾讯科技配图) 北京时间10月10日消息,据国外媒体报道,谷歌各类生活信息搜索服务Google B
- WordPress系统本身,默认安装的情况下使用默认模板,实际上对搜索引擎并不友好,并没有针对搜索引擎进行很好的设计,下面我介绍一些方法可以
- 日本著名3D GALGAME游戏厂商Illusion公司官方网站近日放出了一段其将在明年2月19日发售的最新作《真实的女朋友》(リアル彼女,
- 据国外媒体报道,“威比奖”(Webby Awards)周三颁发了互联网十年10大重要时刻大奖,谷歌、
- 从PHP5.2.10版本开始(现在有PHP5.2.10和5.3两个版本),有None-Thread Safe与Thread Safe两种版本
- 自从《精灵》之后,丁磊对于跟韩国人合作的兴趣大为减弱。他相信自己的团队可以开发出更优秀的产品,更相信运营自己开发的产品,无论是可控性还是利润
- 计算机可以被设置为每次重新启动时,都可以在两个或多个操作系统之间选择。例如,可以将服务器设置为大部分时间运行 Windows 2000 Se
- UCenter是康盛创想(Comsenz)旗下各个产品之间信息直接传递的一个桥梁,通过UCenter 站长可以无缝整合Comsenz系列产品
- 主要使用request对象的ServerVariables属性,通过它来获得环境变量的值。使用的语法为:Request.ServerVari