开发者社区> 老朱教授> 正文

IIS日志分析方法及工具

简介:
+关注继续查看


日志的重要性已经越来越受到程序员的重视,IIS的日志更是不言而喻。

IIS日志建议使用W3C扩充日志文件格式,这也是IIS 5.0已上默认的格式,可以指定每天记录客户IP地址、用户名、服务器端口、方法、URI资源、URI查询、协议状态、用户代理,每天要审查日志。如图1所示。



IIS 的WWW日志文件默认位置为 %systemroot%\system32\logfiles\w3svc1\,(例如:我的则是在 C:\WINDOWS\system32\LogFiles\W3SVC1\),默认每天一个日志。

建议不要使用默认的目录,更换一个记录日志的路径,同时设置日志访问权限,只允许管理员和SYSTEM为完全控制的权限。 如图2所示。




如果发现IIS日志再也不记录了,解决办法:
看看你有没有启用日志记录:你的网站--> 属性 -->“网站”-->“启用日志”是否勾选。

日志文件的名称格式是:ex+年份的末两位数字+月份+日期。
( 如2002年8月10日的WWW日志文件是ex020810.log )

IIS的日志文件都是文本文件,可以使用任何编辑器或相关软件打开,例如记事本程序,AWStats工具。

开头四行都是日志的说明信息

#Software 生成软件
#Version 版本
#Date 日志发生日期
#Fields 字段,显示记录信息的格式,可由IIS自定义。

日志的主体是一条一条的请求信息,请求信息的格式是由#Fields定义的,每个字段都有空格隔开。

字段解释

data 日期
time 时间
cs-method 请求方法
cs-uri-stem 请求文件
cs-uri-query 请求参数
cs-username 客户端用户名
c-ip 客户端IP
cs-version 客户端协议版本
cs(User-Agent) 客户端浏览器
cs(Referer) 引用页

下面列举说明日志文件的部分内容(每个日志文件都有如下的头4行):
#Software: Microsoft Internet Information Services 6.0
#Version: 1.0
#Date: 2007-09-21 02:38:17
#Fields: date time s-sitename s-ip cs-method cs-uri-stem cs-uri-query s-port cs-username c-ip cs(User-Agent) sc-status sc-substatus sc-win32-status

2007-09-21 01:10:51 10.152.8.17 - 10.152.8.2 80
GET /seek/images/ip.gif - 200 Mozilla/5.0+(X11;+U;+Linux+2.4.2-2+i686;+en-US;+0.7)

上面各行分别清楚地记下了远程客户端的:

连接时间 2007-09-21 01:10:51
IP地址 10.152.8.17 - 10.152.8.2
端 口 80
请求动作 GET /seek/images/ip.gif - 200
返回结果 - 200 (用数字表示,如页面不存在则以404返回)
浏览器类型 Mozilla/5.0+
系统等相关信息 X11;+U;+Linux+2.4.2-2+i686;+en-US;+0.7


附:IIS的FTP日志

IIS的FTP日志文件默认位置为%systemroot%\system32\logfiles\MSFTPSVC1\,对于绝大多数系统而言(如果安装系统时定义了系统存放目录则根据实际情况修改)则是C:\winnt\system32\logfiles\ MSFTPSVC1\,和IIS的WWW日志一样,也是默认每天一个日志。日志文件的名称格式是:ex+年份的末两位数字+月份+日期,如2002年8月10日的WWW日志文件是ex020810.log。它也是文本文件,同样可以使用任何编辑器打开,例如记事本程序。和IIS的WWW日志相比,IIS的FTP日志文件要丰富得多。下面列举日志文件的部分内容。

#Software: Microsoft Internet Information Services 6.0
#Version: 1.0
#Date: 2002-07-24 01:32:07
#Fields: time cip csmethod csuristem scstatus
03:15:20 210.12.195.3 [1]USER administator 331 
(IP地址为210.12.195.2用户名为administator的用户试图登录)

03:16:12 210.12.195.2 [1]PASS - 530 (登录失败)

03:19:16 210.12.195.2 [1]USER administrator 331 
(IP地址为210.12.195.2用户名为administrator的用户试图登录)

03:19:24 210.12.195.2 [1]PASS - 230 (登录成功)
03:19:49 210.12.195.2 [1]MKD brght 550 (新建目录失败)
03:25:26 210.12.195.2 [1]QUIT - 550 (退出FTP程序)

有经验的用户可以通过这段FTP日志文件的内容看出,来自IP地址210.12.195.2的远程客户从2002年7月24日3:15开始试图登录此服务器,先后换了2次用户名和口令才成功,最终以administrator的账户成功登录。这时候就应该提高警惕,因为administrator账户极有可能泄密了,为了安全考虑,应该给此账户更换密码或者重新命名此账户。

如何辨别服务器是否有人曾经利用过UNICODE漏洞入侵过呢?可以在日志里看到类似如下的记录:
如果有人曾经执行过copy、del、echo、.bat等具有入侵行为的命令时,会有以下类似的记录:
13:46:07 127.0.0.1 GET /scripts/..\../winnt/system32/cmd".exe 401
13:46:07 127.0.0.1 GET /scripts/..\../winnt/system32/cmd".exe 200
13:47:37 127.0.0.1 GET /scripts/..\../winnt/system32/cmd".exe 401


相关软件介绍:

如果入侵者技术比较高明,会删除IIS日志文件以抹去痕迹,这时可以到事件查看器看来自W3SVC的警告信息,往往能找到一些线索。当然,对于访问量特别大的Web服务器,仅靠人工分析几乎是不可能的--数据太多了!可以借助第三方日志分析工具,如Faststs Analyzer、Logs2Intrusions v.1.0等。此处仅仅介绍一下Logs2Intrusions日志分析工具。它是一个由Turkish Security Network公司开发的自由软件,是免费的日志分析工具,可以分析IIS 4/5、Apache和其他日志文件。可以到http://www.trsecurity.net/logs2intrusions下载最新的版本。该软件简单易用,下面是它的主界面,如图3所示。




单击【Select】按钮后选择要分析的日志文件,然后单击【Next】按钮,在出现的窗口中单击【Begin Work】按钮即可开始分析,如图4所示。




如图4所示,它表明已经发觉入侵的痕迹。如果没有发现痕迹则弹出如图5所示的对话框。




在发现痕迹后单击【Next】按钮继续,如图6所示。




【View Report】按钮是查看报告,【Save Report】按钮是保存报告,【New Report】按钮是生成新报告。下面是报告的例子,如图7所示。




在"Intrusion Attempt"列中列出了超链接,选择它可以得到Trsecurity公司的专家的建议。和该软件同一目录中的sign.txt是入侵行为特征的关键字,用户可以根据新的漏洞的发现而随时补充。


AWStats简介:Apache/IIS的日志分析工具
http://www.chedong.com/tech/awstats.html


不同的日志类型,其存储的位置也不同:
应用程序日志、安全日志、系统日志、DNS日志默认位置:%systemroot%\system32\config
Web,Ftp的日志的默认位置在:%systemroot%\system32\logfiles
具体参看这篇文章: Win2k日志详细

IIS日志的启用和设置
如何在 Windows 2000 中启用 IIS 日志记录站点活动

日志分析工具
日志的分析工具很多,AWStats是一个优秀的跨平台的开源日志分析工具
Awstats 安装使用说明

IIS日志的内容其实是一些记录的文本
IIS日志分析

如何在 Windows 2000 中启用 IIS 日志记录站点活动 ( MSDN )
http://support.microsoft.com/default.aspx?scid=kb;zh-cn;300390




本文转自钢钢博客园博客,原文链接:http://www.cnblogs.com/xugang/archive/2007/09/21/901143.html,如需转载请自行联系原作者


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
阿里云服务器如何登录?阿里云服务器的三种登录方法
购买阿里云ECS云服务器后如何登录?场景不同,大概有三种登录方式:
9857 0
阿里云服务器怎么设置密码?怎么停机?怎么重启服务器?
如果在创建实例时没有设置密码,或者密码丢失,您可以在控制台上重新设置实例的登录密码。本文仅描述如何在 ECS 管理控制台上修改实例登录密码。
20552 0
windows管理员利器之用Log Parser Studio分析IIS日志(附逐浪CMS官方命令集)
原文:windows管理员利器之用Log Parser Studio分析IIS日志(附逐浪CMS官方命令集) Log Parser Studio是一个强大的IIS图形分析工具,值得推荐。
1637 0
阿里云ECS云服务器初始化设置教程方法
阿里云ECS云服务器初始化是指将云服务器系统恢复到最初状态的过程,阿里云的服务器初始化是通过更换系统盘来实现的,是免费的,阿里云百科网分享服务器初始化教程: 服务器初始化教程方法 本文的服务器初始化是指将ECS云服务器系统恢复到最初状态,服务器中的数据也会被清空,所以初始化之前一定要先备份好。
13842 0
阿里云服务器端口号设置
阿里云服务器初级使用者可能面临的问题之一. 使用tomcat或者其他服务器软件设置端口号后,比如 一些不是默认的, mysql的 3306, mssql的1433,有时候打不开网页, 原因是没有在ecs安全组去设置这个端口号. 解决: 点击ecs下网络和安全下的安全组 在弹出的安全组中,如果没有就新建安全组,然后点击配置规则 最后如上图点击添加...或快速创建.   have fun!  将编程看作是一门艺术,而不单单是个技术。
18823 0
如何设置阿里云服务器安全组?阿里云安全组规则详细解说
阿里云安全组设置详细图文教程(收藏起来) 阿里云服务器安全组设置规则分享,阿里云服务器安全组如何放行端口设置教程。阿里云会要求客户设置安全组,如果不设置,阿里云会指定默认的安全组。那么,这个安全组是什么呢?顾名思义,就是为了服务器安全设置的。安全组其实就是一个虚拟的防火墙,可以让用户从端口、IP的维度来筛选对应服务器的访问者,从而形成一个云上的安全域。
17165 0
阿里云服务器如何登录?阿里云服务器的三种登录方法
购买阿里云ECS云服务器后如何登录?场景不同,阿里云优惠总结大概有三种登录方式: 登录到ECS云服务器控制台 在ECS云服务器控制台用户可以更改密码、更换系.
25154 0
+关注
3546
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
JS零基础入门教程(上册)
立即下载
性能优化方法论
立即下载
手把手学习日志服务SLS,云启实验室实战指南
立即下载