Windows系统日志分析工具-- Log Parser

2022/1/13 7:06:10

本文主要是介绍Windows系统日志分析工具-- Log Parser,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

可参考文章:日志分析工具 LogParser 学习笔记_Memetali_ss的博客-CSDN博客  写完才看见。吐了

 0x01 基本设置 

事件ID及常见场景

 对于Windows事件日志分析,不同的EVENT ID代表了不同的意义,摘录一些常见的安全事件的说明。

4624  --登录成功   
4625  --登录失败  
4634 -- 注销成功
4647 -- 用户启动的注销   
4672 -- 使用超级用户(如管理员)进行登录

系统:
1074,通过这个事件ID查看计算机的开机、关机、重启的时间以及原因和注释。
6005,表示计算机日志服务已启动,如果出现了事件ID为6005,则表示这天正常启动了系统。
104,这个时间ID记录所有审计日志清除事件,当有日志被清除时,出现此事件ID。

安全:
4624,这个事件ID表示成功登陆的用户,用来筛选该系统的用户登陆成功情况。
4625,这个事件ID表示登陆失败的用户。
4720,4722,4723,4724,4725,4726,4738,4740,事件ID表示当用户帐号发生创建,删除,改变密码时的事件记录。
4727,4737,4739,4762,事件ID表示当用户组发生添加、删除时或组内添加成员时生成该事件。

例如:

1、管理员登录

 使用mstsc远程登录某个主机时,使用的帐户是管理员帐户的话,成功的情况下会有ID为4776、4648、4624、4672的事件产生。

2、执行系统命令

Win+R打开运行,输入“CMD”,回车运行“ipconfig”,产生的日志过程是这个样子:

进程创建 C:\Windows\System32\cmd.exe 

进程创建 C:\Windows\System32\ipconfig.exe

进程终止 C:\Windows\System32\ipconfig.exe 

3、在入侵提权过程中,常使用下面两条语句,会形成怎么样的日志呢?

net user  USER  PASSWORD /add
net localgroup administrators USER /add

 0x02 日志分析工具

2.1. Log Parser 2.2下载地址

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

Log Parser的日志可以通过SQL进行查询。

2.1.1 sql字段

S:String 数组   

调用格式:

EXTRACT_TOKEN(EventTypeName, 0, ' ') )
EventTypeName:字段名
0:顺序,从0开始
“|”:分隔符

T:Time。时间类

I:intger。整数类

T和I二者都是直接调用:

SELECT TO_DATE(TimeGenerated), TO_UPPERCASE( EXTRACT_TOKEN(EventTypeName, 0, ' ') ), SourceName FROM System

TimeGenerated

2.1.2字段解释

RecordNumber:日志记录编号从0开始

TimeGenerated:事件生成时间

TimeWritten:事件记录时间

EventID:事件ID

EventType:事件类型

EventCategory:不懂。参考Windows API ReportEvent 写系统日志 - jqdy - 博客园

String:

各个位置含义:

0安全IP(SID)        1账号名称         2账户域         3登录ID         4安全ID        5账户名

6账户域        7登录ID        8登录类型        9登录进程        10身份验证数据包

11网络账户名称        12账号GUID        13网络账户域        14数据包名        15密钥长度

16进程ID        17进程路径        18源网络地址        19源端口        20模拟级别

21        22        23         24 虚拟账户        25         26 提升的令牌

EventLog:

各个位置含义:

0 文件绝对路径  

EventTypeName

各个位置含义:

0 审核成功/审核失败

SourceName:来源

各个位置含义:

0:来源位置

eg:Microsoft-Windows-Security-Auditing

SID:查看结果为全空

Message:消息

各个位置含义:

0 The description for Event ID 4625 in Source "Microsoft-Windows-Security-Auditing" cannot be found. The local computer may not have the necessary registry information or message DLL files to display messages from a remote compute

Data:全空

ComputerName:计算机名称

0 WIN-L5ST0VQ25FA   
计算机名称

EventCategoryName

0 The name for category 12544 in Source "Microsoft-Windows-Security-Auditing" cannot be found. The local computer may not have the necessary registry information or message DLL files to display messages from a remote computer 

主要字段为:TimeGenerated:事件生成时间         EventID:事件ID        EventType:事件类型        String:         EventLog        ComputerName:计算机名称

2.1.3命令组成

        基本格式:logparser -i:输入文件格式 [-输入文件参数] -o:输出文件格式 [-输出格式参数] "SQL 查询语句"

LogParser.exe -i:EVT "SELECT  EventID as EventID,TimeGenerated as LoginTime,EXTRACT_TOKEN(Strings,5,'|') as username,EXTRACT_TOKEN(Strings,19,'|') as ip FROM  C:\Users\172.16.5.30\sec.evtx where EventID=4625"

EventID :该值为System节点下的EventID;

TimeGenerated:该值情况类似于EventID,时间

EXTRACT_TOKEN(Strings,5,'|'):该值为EventData部分的第六部分的值,为TargetUserName的值。

 

2.1.1. 常用命令

        1.管理员登录时间和登录用户名(登陆成功)

LogParser.exe -i:EVT "SELECT TimeGenerated as LoginTime,EXTRACT_TOKEN(Strings,5,'|') as username FROM c:\11.evtx where EventID=4624"

        2. 查看(登陆失败)的记录

LogParser.exe -i:EVT "SELECT TimeGenerated as LoginTime,EXTRACT_TOKEN(Strings,5,'|') as username FROM c:\11.evtx where EventID=4625"

        3. RDP爆破使用的用户名及爆破次数

待续。。



这篇关于Windows系统日志分析工具-- Log Parser的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程