目 录CONTENT

文章目录

应急响应 | Windows系统日志审计

0x5T4Rer
2025-06-10 / 0 评论 / 0 点赞 / 10 阅读 / 0 字 / 正在检测是否收录...
温馨提示:
本文内容仅供参考,旨在探讨网络空间安全相关话题,仅供个人学习交流使用,请严格遵守法律法规。文中提及的技术建议、措施及工具仅供参考,并无法保证其绝对准确性或适用性。读者在使用过程中应结合自身实际情况进行谨慎判断,并自行承担相关风险。 文中所附的第三方链接仅供读者参考,并不代表对其内容的认可或推荐,且不对链接内容承担任何责任。部分文章内容基于公开信息整理而成,若存在侵权问题,请及时联系删除。作者本人不承担相关法律责任。如需转载本文,请附上原文链接。

0x01 Windows系统日志概述

日志审计

日志审计是一种对系统日志进行监控和分析的技术,旨在发现系统中的异常行为和安全威胁。通过对日志进行审计,可以追踪系统的使用情况、检测攻击行为、识别安全漏洞等,从而提高系统的安全性和可靠性。Windows操作系统提供了多种类型的日志,包括安全日志、应用程序日志、系统日志等。这些日志记录了各种事件,如用户登录、文件访问、应用程序错误等。

Windows系统日志

Windows系统日志是记录系统中硬件、软件和系统问题的信息,同时还可以监视系统中发生的事件。用户可以通过它来检查错误发生的原因,或者寻找受到攻击时攻击者留下的痕迹。

0x02 Windows系统日志位置

依赖的服务:EventLog服务

位置:

Windows 2000/Server2003/Windows XP :%SystemRoot%\System32\Config\*.evtx 
Windows Vista/7/10/Server2008 及以上版本: %SystemRoot%\System32\Winevt\Logs\*.evtx

Windows11例图:

C:\Windows\System32\winevt\Logs

0x03 Windows日志分类

Windows主要有以下三类日志记录系统事件:应用程序日志、系统日志和安全日志。

日志类型

概述

系统日志 (System.evtx)

系统日志包含由Windows系统组件记录的事件,记录系统进程和设备 驱动程序的活动。由它审核的系统事件包括启动失败的设备驱动程序、硬件错误、重复的IP地址 以及服务启动、暂停和停止。

应用程序日志(Application.evtx)

记录程序在运行过程中的日志信息。

安全日志(Security.evtx)

安全日志记录各种系统审核和安全处理,包括用户权限的变化、文件 和目录的访问、打印以及用户系统登陆和注销,如有效或无效的登陆尝试、与资源使用有关的事 件。管理员有按需要指定安全日志中要记录的事件类型。

系统日志

记录操作系统组件产生的事件,主要包括驱动程序、系统组件和应用软件的崩溃以及数据丢失错误等。系统日志中记录的时间类型由Windows NT/2000操作系统预先定义。
默认位置: %SystemRoot%\System32\Winevt\Logs\System.evtx

应用程序日志

包含由应用程序或系统程序记录的事件,主要记录程序运行方面的事件,例如数据库程序可以在应用程序日志中记录文件错误,程序开发人员可以自行决定监视哪些事件。如果某个应用程序出现崩溃情况,那么我们可以从程序事件日志中找到相应的记录,也许会有助于你解决问题。 
默认位置:%SystemRoot%\System32\Winevt\Logs\Application.evtx

安全日志

记录系统的安全审计事件,包含各种类型的登录日志、对象访问日志、进程追踪日志、特权使用、帐号管理、策略变更、系统事件。安全日志也是调查取证中最常用到的日志。默认设置下,安全性日志是关闭的,管理员可以使用组策略来启动安全性日志,或者在注册表中设置审核策略,以便当安全性日志满后使系统停止响应。
默认位置:%SystemRoot%\System32\Winevt\Logs\Security.evtx

系统和应用程序日志存储着故障排除信息,对于系统管理员更为有用。 安全日志记录着事件审计信息,包括用户验证(登录、远程访问等)和特定用户在认证后对系统做了什么,对于调查人员而言,更有帮助。

其他日志

PowerShell 日志

在执行任何 PowerShell 命令或脚本时,无论是本地还是通过远程处理,Windows 都会将事件写入以下三个日志文件:

Windows PowerShell.evtx
Microsoft-Windows-PowerShell/Operational.evtx
Microsoft-Windows-PowerShell/Analytic.etl

Windows 远程管理日志

Windows 远程管理(WinRM)日志记录了 Windows 远程管理服务的所有操作

Microsoft-Windows-WinRM/Operational.evtx
Microsoft-Windows-WinRM/Analytic.etl
Microsoft-Windows-RemoteDesktopServices-RdpCoreTS/operational.evtx
Microsoft-Windows-TerminalServices-RemoteConnectionManager/operational.evtx
Microsoft-Windows-TerminalServices-LocalSessionManager/operational.evtx

0x04 Windows审核策略

在默认情况下, Windows日志仅仅记录一些特定日志,因为Windows日志中每种日志的大小默认为 20M,超过大小之后会覆盖最早的日志记录。如果我们需要记录详细的安全日志,则需要通过修改本地策略或者在高级审核策略配置中来启用其他项的日志记录功能。

Win+R --> gpedit.msc --> 组策略管理器

审核策略(需要配置)

计算机配置 --> Windows设置 --> 安全设置 --> 本地策略 --> 审核策略

可以参考如下修改

  1. 审核账户登录事件

  • 功能:审核用户尝试登录到计算机或域的行为。

  • 应用场景:

    • 成功:记录用户成功登录的事件,可以帮助追踪用户活动。

    • 失败:记录用户登录失败的事件,例如输入错误的密码或用户名,这对于检测暴力破解攻击非常有用。

  1. 审核账户管理

  • 功能:审核对用户账户和组的管理操作,例如创建、修改或删除用户账户或组。

  • 应用场景:

    • 成功:记录对账户管理操作的成功执行,例如管理员创建了一个新用户账户。

    • 失败:记录对账户管理操作的失败尝试,例如未经授权的用户试图修改账户权限。

  1. 审核目录服务访问

  • 功能:审核对 Active Directory 目录服务的访问行为。

  • 应用场景:

    • 成功:记录对目录服务的正常访问,例如查询用户信息。

    • 失败:记录对目录服务的访问失败事件,例如未经授权的访问尝试。

  1. 审核策略更改

  • 功能:审核对系统安全策略的更改,例如修改审核策略或用户权限分配。

  • 应用场景:

    • 成功:记录对安全策略的正常更改,例如管理员更新了审核策略。

    • 失败:记录对安全策略更改的失败尝试,例如未经授权的用户试图修改策略。

  1. 审核系统事件

  • 功能:审核系统级别的事件,例如系统启动、关闭、系统时间更改等。

  • 应用场景:

    • 成功:记录系统正常启动或关闭的事件。

    • 失败:记录系统启动或关闭失败的事件,例如系统崩溃或未经授权的系统时间更改。

  1. 审核对象访问

  • 功能:审核对文件、文件夹、注册表项等对象的访问行为。

  • 应用场景:

    • 成功:记录对敏感文件或注册表项的正常访问。

    • 失败:记录对敏感对象的访问失败事件,例如未经授权的用户试图访问受限文件。

  1. 审核特权使用

  • 功能:审核用户或进程使用特权操作的行为,例如以管理员身份运行程序。

  • 应用场景:

    • 成功:记录正常使用的特权操作。

    • 失败:记录未经授权的特权使用尝试。

  1. 审核登录事件

  • 功能:审核用户登录到系统的行为,包括交互式登录、网络登录等。

  • 应用场景:

    • 成功:记录用户正常登录的事件。

    • 失败:记录登录失败的事件,例如密码错误或账户锁定。

  1. 审核过程跟踪

  • 功能:审核系统中的进程创建和终止事件。

  • 应用场景:

    • 成功:记录进程的正常创建和终止。

    • 失败:记录进程创建或终止失败的事件。

详细跟踪(需要配置)

计算机配置 --> Windows设置 --> 安全设置 --> 高级审核策略配置 --> 系统审核策略 --> `详细跟踪

  1. 审核 DPAPI 活动

功能:审核数据保护 API(DPAPI)的使用情况。DPAPI 是 Windows 提供的一种加密服务,用于保护用户数据。

应用场景:如果系统中存在敏感数据加密和解密操作,启用此审核策略可以帮助追踪相关活动,确保数据保护机制的正常运行。

  1. 审核进程创建

功能:审核系统中进程的创建操作。

应用场景:通过记录进程的启动,可以检测到未经授权的程序启动,帮助识别潜在的安全威胁。

  1. 审核进程终止

功能:审核系统中进程的终止操作。

应用场景:记录进程的终止可以帮助检测异常的进程关闭行为,例如恶意软件试图关闭安全监控进程。

  1. 审核 RPC 事件

功能:审核远程过程调用(RPC)事件。

应用场景:RPC 是一种允许程序调用另一台计算机上的程序功能的技术。审核 RPC 事件可以检测到跨网络的潜在恶意通信。

0x05 Windows事件查看器

Windows 事件查看器(Event Viewer)是 Windows 操作系统中一个非常重要的工具,用于收集、显示和管理系统事件日志。它可以帮助系统管理员监控系统的运行状态、诊断问题、追踪用户活动以及分析安全事件。事件查看器是系统管理和故障排除的重要工具之一。

Win+R --> eventvwr.msc --> 事件查看器

修改日志记录最大大小(需要配置)

设置合理的日志属性,即日志最大大小、事件覆盖阀值等:

事件查看器 --> Windows日志 --> 日志属性

事件级别

事件级别

描述

示例

信息(Information)

表示正常的系统或应用程序操作。

系统启动、软件安装

警告(Warning)

表示可能会影响系统正常运行的事件,但不会导致系统故障。

磁盘空间不足

错误(Error)

表示可能导致系统故障或功能异常的严重事件。

驱动程序加载失败、应用程序崩溃

审核成功(Audit Success)

表示安全事件成功执行。

用户登录成功

审核失败(Audit Failure)

表示安全事件失败。

用户登录失败、未经授权的权限更改尝试

0x06 Windows日志分析

常见事件ID

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

事件ID

说明

4624

登录成功

4625

登录失败

4634

注销成功

4647

用户启动的注销

4672

使用超级用户(如管理员)进行登录

4720

创建用户

每个成功登录的事件都会标记一个登录类型,不同登录类型代表不同的方式:

登录类型

描述

说明

2

交互式登录(Interactive)

用户在本地进行登录。

3

网络(Network)

最常见的情况就是连接到共享文件夹或共享打印机时。

4

批处理(Batch)

通常表明某计划任务启动。

5

服务(Service)

每种服务都被配置在某个特定的用户账号下运行。

7

解锁(Unlock)

屏保解锁。

8

网络明文(NetworkCleartext)

登录的密码在网络上是通过明文传输的,如FTP。

9

新凭证(NewCredentials)

使用带/Netonly参数的RUNAS命令运行一个程序。

10

远程交互,(RemoteInteractive)

通过终端服务、远程桌面或远程协助访问计算机。

11

缓存交互(CachedInteractive)

以一个域用户登录而又没有域控制器可用

审核策略更改

此安全设置确定 OS 是否对尝试更改用户权限分 配策略、审核策略、帐户策略或信任策略的每 一个实例进行审核。

类别

子类别

默认状态

对应高级审核策略配置

审核策略更改

审核审核策略更改

成功

策略更改

审核身份验证策略更改

成功

审核授权策略更改

无审核

审核筛选平台策略更改

无审核

审核 MPSSVC 规则级策略更改

无审核

审核其他策略更改事件

无审核

子类别

默认状态

事件ID

事件说明

审核审核策略更改

成功

4715

对象的审核策略 (SACL) 已更改。

4719

系统审核策略已更改。

4817

对象的审核设置已更改。

4902

创建了每用户审核策略表。

4904

已尝试注册安全事件源。

4905

已尝试取消注册安全事件源。

4906

CrashOnAuditFail 值已更改。

4907

对象的审核设置已更改。

4908

特殊组登录表已修改。

4912

每用户审核策略已更改。

4713

Kerberos 策略已更改。

4716

可信域信息已修改。

审核身份验证策略更改

成功

4717

系统安全访问被授予一个帐户。

4718

系统安全访问权限已从帐户中删除

4739

域策略已更改。

4864

检测到命名空间冲突。

4865

添加了受信任的林信息条目。

4866

删除了受信任的林信息条目。

4867

受信任的林信息条目已修改。

审核登录事件

此安全设置确定 OS 是否对尝试登录此计算机 或从中注销的用户的每个实例进行审核。

类别

子类别

默认状态

对应高级审核策略配置

审核登录事件

审核账户锁定

成功

登录/注销

审核 IPsec 扩展模式

无审核

审核 IPsec 主模式

无审核

审核 IPsec 快速模式

无审核

审核注销

成功

客户端:成功

服务器:成功和失败

审核网络策略服务器

成功和失败

审核其他登录/注销事件

无审核

审核特别登录

成功

子类别

默认状态

事件ID

事件说明

审核账户锁定成功

成功

4625

账户登录失败。

审核注销

成功

4634

帐户已注销。

4647

用户发起的注销。

4624

一个帐户已成功登录。

审核登录

客户端PC: 成功

4625

一个账户登录失败。

服务器: 成功和失败

4648

尝试使用显式凭据登录。

4675

SID 被过滤。

审核网络策略服务器

成功和失败

6273

网络策略服务器拒绝访问用户。

6274

网络策略服务器放弃了对用户的请求。

6275

网络策略服务器丢弃了用户的计费请求。

6276

网络策略服务器隔离了一个用户。

6277

网络策略服务器授予用户访问权限,但由于主机不符合定义的健康策略而使其处于试用状态。

6278

网络策略服务器授予用户完全访问权限,因为主机符合定义的健康策略。

6279

由于多次失败的身份验证尝试,网络策略服务器锁定了用户帐户。

6280

网络策略服务器解锁了用户帐户。

审核特别登录

成功

4964

已将特殊组分配给新登录。

登录类型

描述

说明

2

交互式登录(Interactive)

用户在本地进行登录。

3

网络(Network)

最常见的情况就是连接到共享文件夹或共享打印机时。

4

批处理(Batch)

通常表明某计划任 务启动。

5

服务(Service)

每种服务都被配置 在某个特定的用户 账号下运行。

7

解锁(Unlock)

屏保解锁。

8

网络明文(NetworkCleartext)

登录的密码在网络 上是通过明文传输 的,如FTP。

9

新凭证(NewCredentials)

使用带/Netonly参数 的RUNAS命令运行一 个程序。

10

远程交互(RemoteInteractive)

通过终端服务、远 程桌面或远程协助 访问计算机。

11

缓存交互(CachedInteractive)

以一个域用户登录 而又没有域控制器 可用

地位和子状态码

描述(不针对失败的原因:检查)

0xc0000064

用户名不存在

0xc000006a

用户名是正确的,但密码是错误的

0xc0000234

用户当前锁定

0xc0000072

帐户目前禁用

0xc000006f

用户试图登录天的外周或时间限制

0xc0000070

工作站的限制

0xc0000193

帐号过期

0xc0000071

过期的密码

0xc0000133

时钟之间的直流和其他电脑太不同步

0xc0000224

在下次登录用户需要更改密码

0xc0000225

显然一个缺陷在Windows和不是一个风险

0xc000015b

没有被授予该用户请求登录类型(又名登录 正确的)在这台机器

0xc000006d

似乎是由于系统问题和不安全

审核账户管理

此安全设置确定是否审核计算机上的每个帐户管理事件。帐户管理事件示例包括:

创建、更改或删除用户帐户或组。

重命名、禁用或启用用户帐户。

设置或更改密码。

类别

子类别

默认状态

对应本地审核策略

账户管理

审核应用组程序管理

无审核

审核账户管理

审核计算机账户管理

无审核

审核通讯组管理

无审核

审核其他账户管理事件

无审核

审核安全组管理

成功

审核用户账户管理

成功

子类别

默认状态

事件ID

事件描述

审核安全组管理

成功

4727

已创建启用安全性的全局组。

4728

一个成员被添加到启用安全的全局组中。

4729

成员已从启用安全的全局组中删除。

4730

已删除启用安全的全局组。

4731

已创建启用安全性的本地组。

4732

一个成员被添加到启用安全的本地组。

4733

成员已从启用安全的本地组中删除。

4734

已删除启用安全的本地组。

4735

已更改启用安全的本地组。

4737

已更改启用安全的全局组。

4754

已创建启用安全的通用组。

4755

已更改启用安全的通用组。

4756

一个成员被添加到启用安全的通用组。

4757

成员已从启用安全的通用组中删除。

4758

已删除启用安全的通用组。

4764

组的类型已更改。

审核用户账户管理

成功

4720

已创建用户帐户。

4722

已启用用户帐户。

4723

试图更改帐户的密码。

4724

已尝试重置帐户密码。

4725

用户帐户被禁用。

4726

用户帐户被删除。

4738

用户帐户已更改。

4740

用户帐户被锁定。

4765

SID 历史记录已添加到帐户。

4766

尝试向帐户添加SID 历史记录失败。

4767

用户帐户已解锁。

4780

ACL 是在作为管理员组成员的帐户上设置的。

4781

帐户名称已更改:

4794

已尝试设置目录服务还原模式。

5376

凭据管理器凭据已备份。

5377

凭据管理器凭据是从备份中恢复的。

案例分析

案例1:可以利用eventlog事件来查看系统账号登录情况:

  1. 在“开始”菜单上,依次指向“所有程序”、“管理工具”,然后单击“事件查看器”;

  2. 在事件查看器中,单击“安全”,查看安全日志;

  3. 在安全日志右侧操作中,点击“筛选当前日志”,输入事件ID进行筛选。
    4624 --登录成功
    4625 --登录失败
    4634 -- 注销成功 4647 -- 用户启动的注销
    4672 -- 使用超级用户(如管理员)进行登录

我们输入事件ID:4625进行日志筛选,发现事件ID:4625,事件数175904,即用户登录失败了175904次,那么这台服务器管理员账号可能遭遇了暴力猜解。

案例2:可以利用eventlog事件来查看计算机开关机的记录:

1、在“开始”菜单上,依次指向“所有程序”、“管理工具”,然后单击“事件查看器”;

2、在事件查看器中,单击“系统”,查看系统日志;

3、在系统日志右侧操作中,点击“筛选当前日志”,输入事件ID进行筛选。

其中事件ID 6006 ID6005、 ID 6009就表示不同状态的机器的情况(开关机)。 6005 信息 EventLog 事件日志服务已启动。(开机) 6006 信息 EventLog 事件日志服务已停止。(关机) 6009 信息 EventLog 按ctrl、alt、delete键(非正常)关机

我们输入事件ID:6005-6006进行日志筛选,发现了两条在2018/7/6 17:53:51左右的记录,也就是我刚才对系统进行重启的时间。

0x07 windows审计命令

在Windows操作系统中,可以使用命令行工具来进行日志审计配置和管理。以下是一些常用的Windows日志审计命令:

wevtutil:用于管理Windows事件日志的命令行工具。

  • 查询可用的日志列表:wevtutil el

  • 导出指定日志的内容到文件:wevtutil epl <log_name> <output_file>

  • 清除指定日志的内容:wevtutil cl <log_name>

  • 查询指定日志的详细信息:wevtutil gl <log_name>

  • 启用或禁用指定日志的记录:wevtutil sl <log_name> /e:true|false

auditpol:用于管理Windows安全审计策略的命令行工具。

  • 查询当前系统的安全审计策略:auditpol /get /category:*

  • 启用或禁用特定安全审计策略:auditpol /set /subcategory:<subcategory> /success:<enabled|disabled> /failure:<enabled|disabled>

gpedit.msc:打开本地组策略编辑器,可以通过编辑组策略来配置Windows日志审计。

  • 打开本地组策略编辑器:gpedit.msc

  • 在“计算机配置”或“用户配置”下的“Windows设置”->“安全设置”->“本地策略”->“审核策略”中配置需要的审计策略。

上述命令需要以管理员身份运行,具体的命令和参数可能因Windows版本和配置而有所不同,建议在使用命令前查阅相应的官方文档以获取准确的命令使用说明。

0x08 日志分析工具

Log Parser

Log Parser(是微软公司出品的日志分析工具,它功能强大,使用简单,可以分析基于文本的日志文件、XML 文件、CSV(逗号分隔符)文件,以及操作系统的事件日志、注册表、文件系统、Active Directory。它可以像使用 SQL 语句一样查询分析这些数据,甚至可以把分析结果以各种图表的形式展现出来。

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

Log Parser 使用示例:https://mlichtenberg.wordpress.com/2011/02/03/log-parser-rocks-more-than-50-examples/

基本查询结构

Logparser.exe –i:EVT –o:DATAGRID "SELECT * FROM c:\xx.evtx"

使用Log Parser分析日志

1、查询登录成功的事件

登录成功的所有事件
LogParser.exe -i:EVT –o:DATAGRID  "SELECT *  FROM c:\Security.evtx where EventID=4624"

指定登录时间范围的事件:
LogParser.exe -i:EVT –o:DATAGRID  "SELECT *  FROM c:\Security.evtx where TimeGenerated>'2018-06-19 23:32:11' and TimeGenerated<'2018-06-20 23:34:00' and EventID=4624"

提取登录成功的用户名和IP:
LogParser.exe -i:EVT  –o:DATAGRID  "SELECT EXTRACT_TOKEN(Message,13,' ') as EventType,TimeGenerated as LoginTime,EXTRACT_TOKEN(Strings,5,'|') as Username,EXTRACT_TOKEN(Message,38,' ') as Loginip FROM c:\Security.evtx where EventID=4624"

2、查询登录失败的事件

登录失败的所有事件:
LogParser.exe -i:EVT –o:DATAGRID  "SELECT *  FROM c:\Security.evtx where EventID=4625"

提取登录失败用户名进行聚合统计:
LogParser.exe  -i:EVT "SELECT  EXTRACT_TOKEN(Message,13,' ')  as EventType,EXTRACT_TOKEN(Message,19,' ') as user,count(EXTRACT_TOKEN(Message,19,' ')) as Times,EXTRACT_TOKEN(Message,39,' ') as Loginip FROM c:\Security.evtx where EventID=4625 GROUP BY Message"

3、系统历史开关机记录:

LogParser.exe -i:EVT –o:DATAGRID  "SELECT TimeGenerated,EventID,Message FROM c:\System.evtx where EventID=6005 or EventID=6006"

LogParser Lizard

对于GUI环境的Log Parser Lizard,其特点是比较易于使用,甚至不需要记忆繁琐的命令,只需要做好设置,写好基本的SQL语句,就可以直观的得到结果。

下载地址:http://www.lizard-labs.com/log_parser_lizard.aspx

依赖包:Microsoft .NET Framework 4 .5,下载地址:https://www.microsoft.com/en-us/download/details.aspx?id=42642

查询最近用户登录情况:

Event Log Explorer

Event Log Explorer是一款非常好用的Windows日志分析工具。可用于查看,监视和分析跟事件记录,包括安全,系统,应用程序和其他微软Windows 的记录被记载的事件,其强大的过滤功能可以快速的过滤出有价值的信息。

下载地址:https://event-log-explorer.en.softonic.com/

参考链接:

Windows日志分析 https://mp.weixin.qq.com/s/ige5UO8WTuOOO3yRw-LeqQ

0
  1. 支付宝打赏

    qrcode alipay
  2. 微信打赏

    qrcode weixin
  3. QQ打赏

    qrcode qq

评论区