专栏首页晨星先生的自留地日志攻防初探之windows篇(iis日志介绍)

日志攻防初探之windows篇(iis日志介绍)

萌生出再写一系列文章的想法,虽然有一些系列还没完成,或者说完成的很基础。但还是想着写出来分享~ 因为这是我的乐趣,并不是想为这个行业做多少贡献,为多少爱好者提供帮助,而是做自己喜欢的事。不是什么客,也不是什么帽子~

1

iis日志初探

作为一名安全人员,除了前阶段的渗透攻击,后阶段的日志清除、分析然后做出安全响应也是及其重要的。到后面的阶段,熟练掌握日志的分析不止可以帮助你溯源甚至你还能搭建一个蜜罐诱捕猎物。

首先要了解iis日志的路径

2003下,路径为:C:\WINDOWS\system32\LogFiles

2008下,路径为:C:\inetpub\logs\LogFiles

本文以2003为例,实际上掌握了2003,后续的多差不多~

打开iis管理器,右键属性

在网站选项卡点击属性,可以看到日志文件的位置。

如果在IIS6.0中启用了日志记录,并使用W3C扩展日志文件格式,查看日志时你会发现记录的时间总是比本地时间晚8小时

原因是IIS中使用的时间是(GMT)格林威治标准时间,而我们本地通常是使用(GMT+08:00)北京时间,两者相差8小时。这样导致的问题是按天记录日志时,同一天的日志文件中记录的实际是当天08:00至第二天07:59的访问日志,这要注意下。

每个网站都有对应自己的标识符

网站对应的的日志文件夹以“W3SVC+标识符”为名称命名

有一些标识符是一串随机的字符串,为了方便管理。我们经常修改为特定的编号。

怎么修改呢?

首先需要断开IIS的连接,然后在"控制面板---管理工具---服务"中停止IISAdmin相关服务。

打开C:\WINDOWS\system32\inetsrv\MetaBase.xml

比如我们要修改xss这个网站对应的标识符。

1.打开Metabase Explorer - 找到W3SVC节点

2.把站点标识重命名。

3.编辑站点的root节点下面的AppRoot的/LM/W3SVC/XXXXX/Root, 把XXXXX位置的值换成你新的标识的值。

PS:我就是没改AppRoot, IIS改后就找不到路径。

为了保证不会出错,我们用notepad打开,然后搜索906155全部替换掉

更改完别忘记启动下IISAdmin服务~

更改完成,我们看到文件夹也变了。

2

iis日志的管理与分析

为了方便和安全起见,建议使用微软官方的管理工具IIS 6.0 Resource Kit Tools来对日志进行分析。下载链接:https://www.microsoft.com/en-us/download/details.aspx?id=17275

更改标识符可以用IIS 6.0 Resource Kit Tools中的 Metabase Explorer

IIS 6.0 Resource Kit Tools安装完会集成很多工具

接下来就是日志的分析。

方法1:

直接找到日志文件用excel处理

1、找到日志文件,复制之后,选定A

2、在上面的工具栏里选择数据→分列

3、分隔符号,点击下一步

4、选择空格,去掉Tab键前面的钩,点击完成。

网站的iis日志就这样被拆分出来了,之后自己再调整一下表格的列宽、升降序等即可。

在截图中,日志的创建方式是每天产生一个新文件,按日期来生成文件名(这是默认值)。

说明:IIS使用UTC时间,所以我勾选了最下面的复选框,告诉IIS用本地时间来生成文件名。

点击【高级】选项卡,将出现以下对话框:

注意:【发送的字段数】和【接收的字节数】默认是没有选择的。建议勾选它们。

至于其它字段,你可以根据需要来决定是否要勾选它们。

日志记录了:

1. 请求发生在什么时刻,

2. 哪个客户端IP访问了服务端IP的哪个端口,

3. 客户端工具是什么类型,什么版本,

4. 请求的URL以及查询字符串参数是什么,

5. 请求的方式是GET还是POST,

6. 请求的处理结果是什么样的:HTTP状态码,以及操作系统底层的状态码,

7. 请求过程中,客户端上传了多少数据,服务端发送了多少数据,

8. 请求总共占用服务器多长时间、等等。

方法2:

这里提供另一种方法提取、整理日志,用微软的Log Parse。

下载地址:https://www.microsoft.com/en-us/download/details.aspx?id=24659

一般选择输出格式为 SQL ,步骤为三。

1、查看命令:

2、导入数据库:

3、"SELECT * FROM 'C:\Users\Administrator\Downloads\170109.log' to MyMVC_WebLog" -i:IISW3C -o:SQL -oConnString:"Driver={SQL Server};server=localhost\sqlexpress;database=test;Integrated Security=SSPI" -createtable:ON

其中:C:\Users\Administrator\Downloads\170109.log 为日志地址;需要在localhost\sqlexpress实例中创建test数据库。

然后就可以根据sql语句进行分析了

3

代码实现日志文件的分析

这里为了节省时间我写了个批处理直接生成日志的结果,选择的字段大家可以自行选择。

git项目地址:https://github.com/lonelyvaf/Log-analysis/

运行时候要和日志文件通过一个目录,省去了冗长的命令构造。

后续会写一些脚本或者小程序做为分析工具,有兴趣的朋友可以一起做。

本文分享自微信公众号 - 晨星先生(MoXuanIT)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2017-07-16

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 全方位绕过安全狗

    lonelyvaf
  • mysql注入高级篇3--报错注入

    lonelyvaf
  • 一次不完全成功的渗透

    lonelyvaf
  • 日志轮替logrotate

    每年都要买衣服,有的衣服旧了,有的衣服破了,所以总是要将旧衣服放在一边,进行归档,新的衣服放在一边,是正在使用的。

    SRE运维实践
  • 一种高并发环境下交易日志连续输出的机制

    原文地址:http://www.xzbu.com/1/view-6507464.htm

    后端技术探索
  • 不一样的日志

    这里提的日志并不是应用程序产生的日志,应用程序产生的日志是以一种人类读得懂的方式展示程序运行信息的记录方式,本身不包含任何数据,这篇文章所要描述的日志指的数据系...

    哒呵呵
  • 使用 Node 开发服务器项目时如何高效地打日志?

    是 「山月七八月原创计划」 中的「第四篇」文章,简述了在 Node 服务中如何打日志

    山月
  • 数据安全分析思想探索

    日志分析在入侵检测中的应用越来越广泛,合适的使用日志,使日志产生巨大的价值,本文旨在探讨如何让日志的价值在安全领域发挥作用。

    FB客服
  • Java 程序如何正确地打日志

    我们 Java 程序员在开发项目时都是依赖 Eclipse/ Idea 等开发工具的 Debug 调试功能来跟踪解决 Bug,在开发环境可以这么做,但项目发布到...

    CSDN技术头条
  • 老大要我搭建一个TB级的日志监控系统,听说 ELK 不错

    本文主要介绍怎么使用 ELK Stack 帮助我们打造一个支撑起日产 TB 级的日志监控系统。

    java进阶架构师

扫码关注云+社区

领取腾讯云代金券