前言
在Windows应急工作中,windows日志分析是必不可少的环节,但是windows本身的事件查看器对应急工作者并非十分友好,例如在日志信息显示层面,每次只能查看单条日志的详细信息,并且很多事件ID和日志路径对于非专业人员根本记不住或者不了解,从而大大降低应急溯源工作的效率。
因此,本人出于:服务群众,快乐自己的宗旨,并基于长期的windows应急处置经验,归纳整理常用的日志类型,使用Go语言,开发此款windows日志分析工具,经过多次迭代更新,最终完成此GUI版本(外观不要计较,主打能用就行)。
工具原理
简单说下:利用Go调用Windows API获取原始日志信息,根据原始日志xml格式,定义对应事件ID结构体,从结构体中映射关键字段信息。将提取出来的日志信息存在SQLLite数据库不同表中,使用SQL语句对日志进行检索,大致就是这样。后续再分享具体Windows API使用、GO GUI编程和一些细节问题,喜欢的同学可以持续关注;
支持系统版本
PC:win7、win10、win11
Server:WinServer2008、WinServer2012、WinServer2016等
日志分析功能介绍
登录成功&登录失败
展示详细的登录日志,包括:日志时间、源地址、源用户名、目的用户名、登录类型、登录进程、认证协议等信息
4624:登录成功
4625:登录失败
登录类型:3(SMB)、10(RDP)
认证协议:Kerberos、NTLM、Negotiate(RDP服务)
登录认证进程:lsass.exe、winlogon.exe、svchost.exe、services.exe
RDP登录记录
这里主要记录了事件ID为:21、25、1149这3个日志,具体什么场景会触发这3个ID,建议大家自己复现学习
21: RDP连接
25:RDP重连
1149:RDP协议认证成功
RDP连接记录
使用场景:判断当前主机通过RDP协议登录过哪些机器,定位横向攻击受害面时可以参考;
1024:尝试利用RDP协议登录
1102:利用RDP协议登录成功
服务创建
使用场景:
用户日志
记录主机上面创建用户、删除用户、修改用户组、激活用户日志信息
4720:创建用户
4722:激活用户
4724:修改用户密码
4732:修改所在用户组
4726:删除用户
创建进程
定位恶意进程创建时间、创建用户、对应的父进程,类似于EDR行为日志监测
截图中:
-
artifact.exe 是administrator用户通过cmd.exe运行启动; -
winlogchechv3.3.exe是administrator用户通过explore.exe进程创建;
4688:进程创建
MSSQL
针对SQLServer服务器,主要查看爆破记录,是否开启xp_cmdshell组件之类的记录
使用场景:
-
爆破数据库勒索、爆破数据库挖矿 -
SQL注入攻击场景,在配合内存检索功能 可以确认攻击者执行的命令或者访问的接口路径
18454:SqlServer认证成功(默认不记录)
18456:SqlServer认证失败
15457:配置选项记录
Powershell记录
在分析勒索病毒、挖矿病毒,通过会利用powershell下载恶意程序,通过powershell日志可以确认恶意行为。截图中举例利用powershell上线CS的记录
400:powershell执行记录
说明:win7、win2008、win2012日志中不会记录详细的powershell命令,所以对应字段为No match
其他的日志功能大家自己点击测试,不再一一展示介绍了。如果有些日志功能列表是空的,那就是没有开启对应的日志审核策略,具体怎么开启可以自己百度,也可以私信。
威胁检索功能介绍
内存检索
此功能遍历内存字符串信息,可以根据安全设备告警信息快速定位恶意进程,此工具之前有单独在Freebuf介绍过创作思路:https://www.freebuf.com/sectool/408673.html。
使用场景:
-
根据外联域名或者IP定位恶意进程(很推荐); -
在无web访问日志的主机,也可以定位漏洞利用接口 微步MD5分析
微步MD5分析,此功能不会直接上文件上传微步,而是计算文件的MD5,将MD5进行检索,返回文件是否为已知恶意文件
MD5检索
指定目录查找相同MD5值的文件
使用场景:当发现恶意文件后,可以检索指定目录先是否存在相同文件
文件同步
利用企业微信机器人接口,将本地文件快速同步到本地,从而进一步分析日志或者文件
使用场景:发现未知样本,可以迅速上传企业微信,内部进行逆向分析;
主机信息
进程信息
进程列表,输出:PID、进程名、PPID、父进程名、所属用户、所属服务、外联地址、创建时间、执行路径及参数;
用户信息
任务计划
遍历主机所有计划任务,输出名称、Imagepaath、status等信息
启动项
服务信息
获取主机所有的服务项信息,在病毒处置时常用,部分病毒通常会创建服务进行维权;
工具下载地址
github地址:
https://github.com/Fheidt12/Windows_Log
觉得好用的 记得给小星星
免责声明:此工具仅限于安全研究,用户承担因使用此工具而导致的所有法律和相关责任!作者不承担任何法律责任!!!
文章评论 本文章有个评论