Windows应急响应和系统加固(8)—— Windows IIS日志提取和安全检查分析
Windows IIS日志提取和安全检查分析
一、IIS日志介绍:
1.IIS简介:
IIS全称Internet Information Services,是由微软公司提供的基于运行Microsoft Windwos的互联网基本服务,IIS是一种Web(网页)服务组件,其中包括Web服务器、FTP服务器、NNTP服务器和SMTP服务器,分别用于网页浏览、文
件传输、新闻服务和邮件发送等方面,它使得在网络(包括互联网和局域网)上发布信息成了一件很容易的事。
IIS可设置的内容包括:虚拟目录及访问权限、默认文件名称、目录浏览。
2.IIS日志的路径:
Server 2003,路径为:C:\WINDOWS\system32\LogFiles;
Server 2008/R2,路径为:C:\inetpub\logs\LogFiles。
Win10系统默认的IIS服务是关闭的,如果需要开启服务,参考:https://jingyan.baidu.com/article/ea24bc39c43d72da62b331ce.html
3.W3C扩展日志文件格式:
转自博客:https://www.cnblogs.com/fox-yu/p/7965509.html
下面是一段常见的IIS生产的W3C扩展WEB日志:
2011-09-01 16:02:22 GET /Enterprise/detail.asp 70.25.29.53 http:/ /www .example.com/searchout.asp 202 17735 369 4656
date time s-ip cs-method cs-uri-stem cs-uri-query s-port(#7) cs-username c-ip cs(User-Agent) cs(Cookie) cs(Referer) cs-host sc-status sc-substatus sc-win32-status time-taken
这个日志可以解读为:IP是70.25.29.53,来自"http://www.example.com/searchout.asp"的访客,在2011-09-01 16:02:22,访问(GET)了主机的/Enterprise/detail.asp,访问成功,得到17735字节数据。
目前常见的WEB日志格式主要由两类,一类是Apache的NCSA日志格式,另一类是IIS的W3C日志格式。NCSA格式又分为NCSA普通日志格式 (CLF)和NCSA扩展日志格式(ECLF)两类,目前最常用的是NCSA扩展日志格式(ECLF)及
基于自定义类型的Apache日志格式;而W3C 扩展日志格式(ExLF)具备了更为丰富的输出信息,主要是微软IIS(Internet Information Services)中应用。
日期:date 动作发生时的日期。
时间:time 动作发生时的时间(默认为UTC标准)。
客户端IP地址:c-ip 访问服务器的客户端IP地址。
用户名:cs-username 通过身份验证的访问服务器的用户名。不包括匿名用户(用‘-’表示)。
服务名:s-sitename 客户所访问的Internet服务名以及实例号。
服务器名:s-computername 产生日志条目的服务器的名字。
服务器IP 地址:s-ip 产生日志条目的服务器的IP地址。
服务器端口:s-port 服务端提供服务的传输层端口。
方法:cs-method 客户端执行的行为(主要是GET与POST行为)。
URI Stem:cs-uri-stem 被访问的资源,如Default.asp等。
URI Query:cs-uri-query 客户端提交的参数(包括GET与POST行为)。
协议状态:sc-status 用HTTP或者FTP术语所描述的、行为执行后的返回状态。
Win32状态:sc-win32-status 用Microsoft Windows的术语所描述的动作状态。
发送字节数:sc-bytes 服务端发送给客户端的字节数。
接受字节数:cs-bytes 服务端从客户端接收到的字节数。
花费时间:time-taken 执行此次行为所消耗的时间,以毫秒为单位。
协议版本:cs-version 客户端所用的协议(HTTP、FTP)版本。对HTTP协议来说是HTTP 1.0或者HTTP 1.1。
主机:cs-host 客户端的HTTP报头(host header)信息。
用户代理:cs(User-Agent) 客户端所用的浏览器版本信息。
Cookie:cs(Cookie) 发送或者接受到的cookie内容。
Referrer:cs(Referer) 用户浏览的前一个网址,当前网址是从该网址链接过来的。
协议底层状态:sc-substatus 协议底层状态的一些错误信息。
二、使用Splunk大数据引擎分析IIS日志(Win10虚拟机为例):
1.步骤:
打开虚拟机Dos指令输入“net start splunkd”打开splunk服务,稍等几秒(打开默认端口为8080)——输入用户名密码即可登录splinkd界面,如图(登录界面):
2.搜索、处理IIS日志数据的命令:
source="oa_pc_iis_logs.log" host="oa_pc_iis_logs" index="main" sourcetype="iis"
3.统计所搜索的数据(可提供可视化的百分比显示)
source="oa_pc_iis_logs.log" host="oa_pc_iis_logs" index="main" sourcetype="iis" | stats count by sc_status | sort - count
4.夸张脚本攻击/尝试指令:
source="security_edu_u_ex2014_1.log" host="security_edu_u_ex2014_1" index="main" sourcetype="iis" "alert" sc_status=200
5.访问网页的异常情况:
source="security_edu_u_ex2014_1.log" host="security_edu_u_ex2014_1" index="main" sourcetype="iis" sc_status=200 cs_method=GET ORcs_method=POST cs_uri_stem=*.aspx| stats count by cs_uri_stem | sort by count