1. 1. 01 - 系统基础与注册表
  2. 2. 一、Windows 目录结构
    1. 2.1. 1.1 核心系统目录
      1. 2.1.1. C:\Windows\System32\
      2. 2.1.2. C:\Windows\SysWOW64\
      3. 2.1.3. C:\Windows\Temp\
      4. 2.1.4. C:\Windows\Prefetch\
      5. 2.1.5. C:\Windows\System32\winevt\Logs\
      6. 2.1.6. C:\Windows\System32\config\
    2. 2.2. 1.2 用户相关目录
      1. 2.2.1. C:\Users\<username>\
      2. 2.2.2. C:\Users\<username>\AppData\
      3. 2.2.3. C:\Users\<username>\NTUSER.DAT
      4. 2.2.4. C:\Users\<username>\AppData\Local\Microsoft\Windows\UsrClass.dat
    3. 2.3. 1.3 全局应用数据目录
      1. 2.3.1. C:\ProgramData\
      2. 2.3.2. C:\Program Files\ 和 C:\Program Files (x86)\
    4. 2.4. 1.4 与 Linux 目录结构对照
  3. 3. 二、注册表体系(重点)
    1. 3.1. 2.1 五大根键详解
      1. 3.1.1. HKLM(HKEY_LOCAL_MACHINE)
      2. 3.1.2. HKCU(HKEY_CURRENT_USER)
      3. 3.1.3. HKCR(HKEY_CLASSES_ROOT)
      4. 3.1.4. HKU(HKEY_USERS)
    2. 3.2. 2.2 注册表 Hive 文件与磁盘位置
      1. 3.2.1. 在线提取 Hive 文件
      2. 3.2.2. 离线分析 Hive 文件
    3. 3.3. 2.3 注册表数据类型
    4. 3.4. 2.4 IR 关键注册表路径(按用途分类)
      1. 3.4.1. 自启动 / 持久化相关
      2. 3.4.2. 用户/认证相关
      3. 3.4.3. 网络相关
      4. 3.4.4. 程序执行痕迹相关
  4. 4. 三、用户与组模型
    1. 4.1. 3.1 SID 结构详解
    2. 4.2. 3.2 内置安全主体 SID
    3. 4.3. 3.3 本地组与安全影响
    4. 4.4. 3.4 SAM 数据库分析
    5. 4.5. 3.5 排查命令汇总
      1. 4.5.1. CMD 版本
      2. 4.5.2. PowerShell 版本
    6. 4.6. 3.6 与 Linux 对照
  5. 5. 四、Windows 安全模型
    1. 5.1. 4.1 访问令牌(Access Token)
    2. 5.2. 4.2 关键特权(Privileges)
    3. 5.3. 4.3 完整性级别(Integrity Levels)
    4. 5.4. 4.4 UAC 与令牌提升
  6. 6. 五、关键系统配置
    1. 6.1. 5.1 hosts 文件
    2. 6.2. 5.2 services 文件
    3. 6.3. 5.3 组策略(Group Policy)
    4. 6.4. 5.4 防火墙配置
    5. 6.5. 5.5 Windows Defender 配置
  7. 7. 六、Windows vs Linux 全面对照表
    1. 7.1. 6.1 系统路径对照
    2. 7.2. 6.2 命令对照
    3. 7.3. 6.3 安全概念对照
  8. 8. 七、本页小结
  9. 9. 导航

Windows应急响应 - 01 系统基础与注册表

01 - 系统基础与注册表

本页是 Windows 应急响应的基石章节,内容量大且重要。注册表体系是贯穿整个系列的核心知识。

前置阅读:00-学习路线

Linux 对照:Linux应急响应/01-系统基础(如有)


一、Windows 目录结构

理解 Windows 的目录布局是取证排查的第一步。与 Linux 的 FHS(Filesystem Hierarchy Standard)不同,Windows 的目录结构以驱动器盘符为根,系统文件集中在 C:\Windows\ 下。

1.1 核心系统目录

C:\Windows\System32\

最重要的系统目录,包含所有核心系统二进制文件

关键文件:

cmd.exe — 命令提示符

powershell.exe — Windows PowerShell 5.x

svchost.exe — 服务宿主进程

lsass.exe — 本地安全授权子系统(认证核心)

csrss.exe — 客户端/服务端运行时子系统

conhost.exe — 控制台宿主

taskmgr.exe — 任务管理器

mmc.exe — 管理控制台

IR 关键点:

攻击者常将恶意文件伪装为系统文件名放在其他目录

正常的 svchost.exe 必须位于 C:\Windows\System32\

在其他路径发现同名文件即为高度可疑

1
2
3
4
5
# 检查 svchost.exe 是否有异常实例
Get-Process svchost -ErrorAction SilentlyContinue |
Select-Object Id, Path |
Where-Object { $_.Path -ne 'C:\Windows\System32\svchost.exe' -and
$_.Path -ne 'C:\Windows\system32\svchost.exe' }

C:\Windows\SysWOW64\

64 位系统上用于存放 32 位系统二进制文件的目录

WOW64 = Windows on Windows 64

注意命名容易混淆:

System32 → 64 位程序(名称为历史遗留)

SysWOW64 → 32 位程序

IR 关键点:恶意软件可能利用这个目录的存在来隐藏(将 32 位恶意 DLL 放入此目录)

C:\Windows\Temp\

系统级临时目录,所有用户和服务共享

权限:普通用户可写入,但不能列出其他用户的文件

IR 关键点:

攻击者经常将工具和 payload 放在这里(可写目录)

排查时必须检查此目录下的可执行文件

1
2
3
4
# 列出 Temp 目录下的可执行文件
Get-ChildItem C:\Windows\Temp -Recurse -Include *.exe,*.dll,*.ps1,*.bat,*.cmd,*.vbs,*.js -ErrorAction SilentlyContinue |
Select-Object FullName, Length, CreationTime, LastWriteTime |
Sort-Object CreationTime -Descending

C:\Windows\Prefetch\

预读取文件目录,记录程序执行历史

文件格式:<程序名>-<路径Hash>.pf

例如:CMD.EXE-4A81B364.pf

IR 关键点:

即使恶意程序已被删除,Prefetch 文件仍然存在

可以证明某个程序曾经被执行过

包含执行次数和最后执行时间

需要使用 PECmd.exe(EZ Tools)解析

1
2
3
4
5
6
7
# 列出最近创建的 Prefetch 文件
Get-ChildItem C:\Windows\Prefetch\*.pf |
Sort-Object LastWriteTime -Descending |
Select-Object Name, LastWriteTime -First 20

# 使用 PECmd 解析(需安装 EZ Tools)
# PECmd.exe -d C:\Windows\Prefetch --csv C:\IR\prefetch_output

详见 → 04-取证制品分析

C:\Windows\System32\winevt\Logs\

Windows Event Log 的存储目录

文件格式:.evtx(二进制 XML 格式)

关键文件:

Security.evtx — 安全事件(登录、权限、审计)

System.evtx — 系统事件(服务、驱动、关机)

Application.evtx — 应用程序事件

Microsoft-Windows-PowerShell%4Operational.evtx — PowerShell 日志

Microsoft-Windows-Sysmon%4Operational.evtx — Sysmon 日志

Microsoft-Windows-TaskScheduler%4Operational.evtx — 计划任务日志

Microsoft-Windows-TerminalServices-LocalSessionManager%4Operational.evtx — RDP 日志

1
2
3
4
# 列出所有 evtx 文件及大小
Get-ChildItem C:\Windows\System32\winevt\Logs\*.evtx |
Sort-Object Length -Descending |
Select-Object Name, @{N='SizeMB';E={[math]::Round($_.Length/1MB,2)}} -First 20

详见 → 03-事件日志分析

C:\Windows\System32\config\

注册表 Hive 文件的物理存储位置

关键文件:

SAM — 本地用户账户数据库

SYSTEM — 系统配置(服务、驱动、时区等)

SOFTWARE — 软件安装和配置信息

SECURITY — 安全策略和缓存凭据

DEFAULT — 默认用户配置文件

IR 关键点:

这些文件在系统运行时被锁定,无法直接复制

离线取证需从镜像中提取,或使用 reg save / KAPE

1
2
3
4
5
:: 导出注册表 Hive(需管理员权限)
reg save HKLM\SAM C:\IR\SAM_backup
reg save HKLM\SYSTEM C:\IR\SYSTEM_backup
reg save HKLM\SOFTWARE C:\IR\SOFTWARE_backup
reg save HKLM\SECURITY C:\IR\SECURITY_backup

1.2 用户相关目录

C:\Users\<username>\

每个用户的主目录,等价于 Linux 的 /home/<username>/

特殊用户目录:

C:\Users\Public\ — 所有用户共享目录(IR 排查重点)

C:\Users\Default\ — 新用户创建时的模板

C:\Users\<username>\AppData\

用户应用程序数据目录,包含三个子目录:

目录 全名 用途 IR 关注度
Local AppData\Local 本地缓存数据,不随漫游配置文件同步
LocalLow AppData\LocalLow 低完整性级别应用数据(如浏览器沙箱)
Roaming AppData\Roaming 随域漫游配置文件同步的数据

攻击者常利用的子路径:

AppData\Local\Temp\ — 用户级临时目录($env:TEMP)

AppData\Local\Microsoft\Windows\Temporary Internet Files\ — IE 缓存

AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\ — 用户启动文件夹

AppData\Roaming\Microsoft\Windows\Recent\ — 最近打开的文件(LNK)

AppData\Roaming\Microsoft\Windows\PowerShell\PSReadLine\ConsoleHost_history.txtPowerShell 命令历史

1
2
3
4
5
6
7
8
9
10
11
12
# 查看当前用户的 PowerShell 命令历史(等价于 Linux bash_history)
$histPath = "$env:APPDATA\Microsoft\Windows\PowerShell\PSReadLine\ConsoleHost_history.txt"
if (Test-Path $histPath) {
Get-Content $histPath | Select-Object -Last 50
}

# 查看所有用户的 PowerShell 历史
Get-ChildItem "C:\Users\*\AppData\Roaming\Microsoft\Windows\PowerShell\PSReadLine\ConsoleHost_history.txt" -ErrorAction SilentlyContinue |
ForEach-Object {
Write-Host "`n=== $($_.FullName) ===" -ForegroundColor Yellow
Get-Content $_.FullName | Select-Object -Last 20
}

C:\Users\<username>\NTUSER.DAT

用户级注册表 Hive 文件,对应 HKCU 根键

系统运行时由当前登录用户加载,注销后保留在磁盘上

IR 关键点:

包含用户级自启动项(HKCU\...\Run

包含用户最近运行的程序(UserAssist)

包含用户的 Shell 配置和文件类型关联

1
2
3
# 列出所有用户的 NTUSER.DAT
Get-ChildItem "C:\Users\*\NTUSER.DAT" -Force -ErrorAction SilentlyContinue |
Select-Object FullName, Length, LastWriteTime

C:\Users\<username>\AppData\Local\Microsoft\Windows\UsrClass.dat

用户级注册表 Hive,对应 HKCU\Software\Classes

包含 COM 对象注册、文件类型关联、Shell 扩展等

IR 关键点:包含 ShellBags 数据 — 记录用户曾浏览过的文件夹(即使文件夹已被删除)

1.3 全局应用数据目录

C:\ProgramData\

全局应用程序数据目录,对所有用户可见

等价于 Linux 的 /var/lib//etc/<app>/

默认为隐藏目录

IR 关键点:

攻击者常在此目录下创建隐蔽文件夹存放工具

检查非标准子目录和可执行文件

1
2
3
4
5
# 检查 ProgramData 下的可执行文件
Get-ChildItem C:\ProgramData\ -Recurse -Include *.exe,*.dll,*.ps1,*.bat -ErrorAction SilentlyContinue |
Where-Object { $_.DirectoryName -notmatch 'Microsoft|Package|Packages|regid|USOShared' } |
Select-Object FullName, Length, CreationTime |
Sort-Object CreationTime -Descending

C:\Program Files\C:\Program Files (x86)\

程序安装目录(需管理员权限写入)

Program Files — 64 位程序

Program Files (x86) — 32 位程序

IR 关键点:

正常情况下只有合法安装程序才能写入

如果发现未知程序,可能是攻击者获得管理员权限后安装

1.4 与 Linux 目录结构对照

Windows 路径 Linux 等价路径 说明
C:\Windows\System32\ /usr/bin/ + /usr/sbin/ 系统核心二进制
C:\Windows\Temp\ /tmp/ 系统临时目录
C:\Users\<user>\ /home/<user>/ 用户主目录
C:\Users\<user>\AppData\Local\Temp\ /tmp/$TMPDIR 用户临时目录
C:\ProgramData\ /var/lib//etc/ 全局应用数据
C:\Program Files\ /usr/local//opt/ 程序安装目录
C:\Windows\System32\drivers\etc\hosts /etc/hosts 主机名映射
C:\Windows\System32\config\ /etc/ (配置) 系统配置/注册表
C:\Windows\System32\winevt\Logs\ /var/log/ 系统日志
C:\Windows\Prefetch\ 无等价物 程序执行记录
C:\$Recycle.Bin\ ~/.local/share/Trash/ 回收站

二、注册表体系(重点)

注册表(Registry)是 Windows 的核心配置数据库,存储了系统和应用程序的几乎所有设置。在 IR 中,注册表是最重要的信息源之一,也是持久化后门最密集的区域。

如果说 Linux IR 的核心是日志文件和配置文件,那么 Windows IR 的核心就是 注册表 + 事件日志

2.1 五大根键详解

根键 缩写 说明 IR 重要度
HKEY_LOCAL_MACHINE HKLM 系统级配置:硬件、服务、软件、安全策略 极高
HKEY_CURRENT_USER HKCU 当前登录用户的配置(映射自 HKU<SID>)
HKEY_CLASSES_ROOT HKCR 文件类型关联和 COM 对象注册(HKLM+HKCU 合并视图)
HKEY_USERS HKU 所有用户的配置文件集合
HKEY_CURRENT_CONFIG HKCC 当前硬件配置文件(HKLM\SYSTEM 的子集)

HKLM(HKEY_LOCAL_MACHINE)

系统级配置,影响所有用户

修改需要管理员权限

关键子键:

HKLM\SYSTEM — 系统启动配置、服务、驱动

HKLM\SYSTEM\CurrentControlSet\Services\ — 所有系统服务

HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\ — 会话管理

HKLM\SOFTWARE — 已安装软件配置

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run系统级自启动

HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon登录过程配置

HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution OptionsIFEO 劫持

HKLM\SAM — 本地用户账户数据库(默认 ACL 限制访问)

HKLM\SECURITY — 安全策略和缓存凭据(默认 ACL 限制访问)

HKCU(HKEY_CURRENT_USER)

当前用户的配置,只影响当前用户

普通用户权限即可修改(低权限持久化的首选

关键子键:

HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run用户级自启动

HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\RunMRU — 运行对话框历史

HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\UserAssist — 程序执行历史(ROT13 编码)

HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\RecentDocs — 最近打开文档

IR 要点:攻击者如果只获得了普通用户权限,通常会在 HKCU 下建立持久化

HKCR(HKEY_CLASSES_ROOT)

HKLM\SOFTWARE\Classes + HKCU\SOFTWARE\Classes 的合并视图

优先级:HKCU 覆盖 HKLM(用户级设置优先)

IR 要点:

COM 劫持通常通过修改 HKCU\SOFTWARE\Classes\CLSID\ 实现

文件类型关联劫持可用于持久化

详见 → 23-COM劫持

HKU(HKEY_USERS)

包含所有已加载用户配置文件的注册表

结构:HKU\<SID>\ — 每个用户一个子键

HKCU 实际上是 HKU\<当前用户SID> 的别名

IR 要点:排查时需要检查所有用户的 Run 键,而不仅仅是当前用户

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# 列出 HKU 下所有已加载的用户 SID
Get-ChildItem "Registry::HKEY_USERS" |
Where-Object { $_.Name -match 'S-1-5-21' -and $_.Name -notmatch '_Classes' } |
Select-Object Name

# 检查所有用户的 Run 键
Get-ChildItem "Registry::HKEY_USERS" |
Where-Object { $_.Name -match 'S-1-5-21' -and $_.Name -notmatch '_Classes' } |
ForEach-Object {
$sid = $_.PSChildName
$runKey = "Registry::HKEY_USERS\$sid\SOFTWARE\Microsoft\Windows\CurrentVersion\Run"
if (Test-Path $runKey) {
Write-Host "`n--- SID: $sid ---" -ForegroundColor Yellow
Get-ItemProperty $runKey | Format-List
}
}

2.2 注册表 Hive 文件与磁盘位置

注册表数据以 Hive 文件 的形式存储在磁盘上。理解 Hive 文件的物理位置对于离线取证至关重要。

Hive 名称 注册表路径 磁盘位置 内容
SAM HKLM\SAM C:\Windows\System32\config\SAM 本地用户账户和密码 Hash
SYSTEM HKLM\SYSTEM C:\Windows\System32\config\SYSTEM 系统配置、服务、驱动
SOFTWARE HKLM\SOFTWARE C:\Windows\System32\config\SOFTWARE 软件配置、自启动项
SECURITY HKLM\SECURITY C:\Windows\System32\config\SECURITY 安全策略、LSA 密钥
DEFAULT HKU\.DEFAULT C:\Windows\System32\config\DEFAULT 默认用户配置
NTUSER.DAT HKU\<SID> / HKCU C:\Users\<user>\NTUSER.DAT 用户个人配置
UsrClass.dat HKU\<SID>_Classes C:\Users\<user>\AppData\Local\Microsoft\Windows\UsrClass.dat 用户级 COM/Shell 配置

每个 Hive 文件还有对应的日志文件(用于事务恢复):

SAM.LOG1, SAM.LOG2

SYSTEM.LOG1, SYSTEM.LOG2

等等

在线提取 Hive 文件

1
2
3
4
5
:: 方法 1:使用 reg save(需管理员权限)
reg save HKLM\SAM C:\IR\SAM
reg save HKLM\SYSTEM C:\IR\SYSTEM
reg save HKLM\SOFTWARE C:\IR\SOFTWARE
reg save HKLM\SECURITY C:\IR\SECURITY
1
2
3
4
5
6
7
8
9
10
# 方法 2:使用卷影副本(Volume Shadow Copy)
# 创建卷影副本
wmic shadowcopy call create Volume='C:\'

# 列出卷影副本
vssadmin list shadows

# 从卷影副本中复制被锁定的文件
# 假设卷影副本 ID 为 {xxx}
# copy \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy1\Windows\System32\config\SAM C:\IR\SAM
1
2
# 方法 3:使用 KAPE 自动采集(推荐)
# kape.exe --tsource C: --tdest C:\IR\KAPE_Output --target RegistryHives

离线分析 Hive 文件

使用 Registry Explorer(EZ Tools)打开 Hive 文件进行分析

使用 RECmd.exe(EZ Tools)进行批量注册表搜索

1
2
:: 使用 RECmd 批量搜索注册表中的关键路径
RECmd.exe --bn BatchExamples\RECmd_Batch_MC.reb -d C:\IR\ --csv C:\IR\RegOutput

2.3 注册表数据类型

注册表值(Value)有多种数据类型,IR 中需要理解每种类型以正确解读数据:

类型 名称 说明 示例
REG_SZ 字符串 固定长度字符串 C:\Windows\notepad.exe
REG_EXPAND_SZ 可扩展字符串 包含环境变量的字符串 %SystemRoot%\notepad.exe
REG_MULTI_SZ 多字符串 多个字符串组成的数组 服务依赖列表
REG_DWORD 32位整数 4 字节整数(小端序) 0x00000001 (启用)
REG_QWORD 64位整数 8 字节整数 大数值配置
REG_BINARY 二进制 原始二进制数据 时间戳、Hash 值
REG_NONE 无类型 未定义类型 罕见

IR 关键点:

REG_EXPAND_SZ 中的环境变量(如 %TEMP%)会在运行时展开,攻击者利用这点进行路径混淆

REG_BINARY 类型的值需要根据上下文解读(可能是时间戳、SID 或加密数据)

REG_DWORD01 通常代表禁用/启用

1
2
3
4
5
6
7
8
9
10
11
# 查看注册表值的类型
Get-ItemProperty "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" |
Get-Member -MemberType NoteProperty |
ForEach-Object {
$prop = Get-ItemProperty "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" -Name $_.Name -ErrorAction SilentlyContinue
[PSCustomObject]@{
Name = $_.Name
Value = $prop.($_.Name)
Type = (Get-Item "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run").GetValueKind($_.Name)
}
} | Format-Table -AutoSize

2.4 IR 关键注册表路径(按用途分类)

这是全系列最核心的参考表之一。建议打印或收藏。

自启动 / 持久化相关

注册表路径 说明 详见
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run 系统级自启动 Windows应急响应/18-Registry-Run-Keys
HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run 用户级自启动 Windows应急响应/18-Registry-Run-Keys
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce 一次性启动(重启后删除) Windows应急响应/18-Registry-Run-Keys
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run 组策略控制的启动 Windows应急响应/18-Registry-Run-Keys
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Shell 登录 Shell(默认 explorer.exe) Windows应急响应/09-注册表持久化排查
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Userinit 登录初始化程序 Windows应急响应/09-注册表持久化排查
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Notify Winlogon 通知包(旧版) Windows应急响应/09-注册表持久化排查
HKLM\SYSTEM\CurrentControlSet\Services\ 系统服务(驱动和用户态服务) Windows应急响应/20-服务后门
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\ IFEO 镜像劫持 Windows应急响应/25-IFEO镜像劫持
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SilentProcessExit\ 静默退出监控(配合 IFEO) Windows应急响应/25-IFEO镜像劫持
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders Shell 文件夹路径(Startup) Windows应急响应/24-启动文件夹后门
HKLM\SOFTWARE\Classes\CLSID\ COM 类注册 23-COM劫持
HKCU\SOFTWARE\Classes\CLSID\ 用户级 COM 类(劫持优先) 23-COM劫持
HKLM\SYSTEM\CurrentControlSet\Control\Print\Monitors\ 端口监视器(持久化) Windows应急响应/29-Print-Spooler-BITS滥用
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows\AppInit_DLLs AppInit DLL 注入 Windows应急响应/22-DLL劫持
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# 快速检查所有常见 Run 键
$paths = @(
"HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run",
"HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce",
"HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run",
"HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce",
"HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices",
"HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServicesOnce",
"HKLM:\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Run",
"HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run",
"HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run"
)
foreach ($p in $paths) {
if (Test-Path $p) {
$items = Get-ItemProperty $p -ErrorAction SilentlyContinue
$props = $items.PSObject.Properties | Where-Object { $_.Name -notin @('PSPath','PSParentPath','PSChildName','PSDrive','PSProvider') }
if ($props) {
Write-Host "`n[!] $p" -ForegroundColor Red
$props | ForEach-Object { Write-Host " $($_.Name) = $($_.Value)" }
}
}
}

用户/认证相关

注册表路径 说明
HKLM\SAM\SAM\Domains\Account\Users\ 本地用户账户列表和 RID
HKLM\SAM\SAM\Domains\Account\Users\Names\ 用户名与 RID 映射
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\ 用户 SID 与配置文件路径映射
HKLM\SECURITY\Cache\ 域凭据缓存(DCC2 Hash)
HKLM\SYSTEM\CurrentControlSet\Control\Lsa\ LSA 配置(认证包、安全包)

网络相关

注册表路径 说明
HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\ 网卡 IP 配置
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\Profiles\ 历史网络连接记录
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\Signatures\ 网络签名(可判断曾连接的 WiFi)
HKLM\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\ 防火墙规则

程序执行痕迹相关

注册表路径 说明
HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\UserAssist\ 程序执行历史(ROT13)
HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\AppCompatCache ShimCache(程序兼容性缓存)
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers\ 兼容性标志
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\ 程序路径注册
HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\RunMRU 运行对话框历史

三、用户与组模型

3.1 SID 结构详解

SID(Security Identifier) 是 Windows 中用户和组的全局唯一标识符,等价于 Linux 的 UID/GID,但复杂得多。

SID 格式:

1
2
3
4
5
6
7
S-1-5-21-3623811015-3361044348-30300820-1013
│ │ │ │ │
│ │ │ └─ 子授权值(域/机器的唯一标识) │
│ │ │ └─ RID (Relative ID)
│ │ └─ 标识授权值(5 = NT Authority)
│ └─ SID 版本(始终为 1)
└─ SID 前缀标记

RID(Relative Identifier) 是 SID 的最后一段,用于区分同一域/机器内的不同用户和组:

RID 用户/组 说明
500 Administrator 内置管理员(即使重命名 RID 不变)
501 Guest 来宾账户
502 krbtgt Kerberos 票据授权(域环境)
512 Domain Admins 域管理员组
513 Domain Users 域用户组
515 Domain Computers 域计算机组
1000+ 普通用户 自定义创建的用户
1
2
3
4
5
6
7
8
9
10
11
12
13
# 查看当前用户的 SID
whoami /user

# 查看所有本地用户的 SID
Get-LocalUser | Select-Object Name, SID, Enabled

# 通过 SID 查找用户名
$sid = New-Object System.Security.Principal.SecurityIdentifier("S-1-5-21-xxx-500")
$sid.Translate([System.Security.Principal.NTAccount]).Value

# 通过用户名查找 SID
$user = New-Object System.Security.Principal.NTAccount("Administrator")
$user.Translate([System.Security.Principal.SecurityIdentifier]).Value

3.2 内置安全主体 SID

Windows 有一系列内置 SID 代表特殊的安全主体(不是真正的用户账户):

SID 名称 说明 IR 关注度
S-1-5-18 SYSTEM / NT AUTHORITY\SYSTEM 最高权限系统账户 极高
S-1-5-19 LOCAL SERVICE 低权限本地服务账户
S-1-5-20 NETWORK SERVICE 低权限网络服务账户
S-1-5-32-544 BUILTIN\Administrators 管理员组
S-1-5-32-545 BUILTIN\Users 用户组
S-1-5-32-555 BUILTIN\Remote Desktop Users RDP 用户组
S-1-5-32-551 BUILTIN\Backup Operators 备份操作员(可读所有文件)
S-1-1-0 Everyone 所有人
S-1-5-7 ANONYMOUS LOGON 匿名登录

IR 关键点:

SYSTEM (S-1-5-18) 权限高于 Administrator,是服务和驱动的默认运行身份

攻击者获得 SYSTEM 权限 = 完全控制系统

Remote Desktop Users 组的成员可以远程登录,必须严格审计

Backup Operators 可以绕过 NTFS ACL 读取任何文件(包括 SAM)

3.3 本地组与安全影响

组名 安全影响 排查要点
Administrators 完全控制系统 检查是否有未知用户
Remote Desktop Users 可 RDP 远程登录 检查是否有未授权用户
Backup Operators 可读任何文件 可被利用提取 SAM/NTDS.dit
Event Log Readers 可读事件日志 攻击者可能添加侦察账户
Hyper-V Administrators 可管理虚拟机 可能导致虚拟机逃逸
Network Configuration Operators 可修改网络配置 可被用于网络劫持
1
2
3
4
5
6
7
8
9
# 枚举所有本地组及其成员
Get-LocalGroup | ForEach-Object {
$group = $_.Name
$members = Get-LocalGroupMember -Group $group -ErrorAction SilentlyContinue
if ($members) {
Write-Host "`n=== $group ===" -ForegroundColor Cyan
$members | Format-Table Name, ObjectClass, PrincipalSource -AutoSize
}
}

3.4 SAM 数据库分析

SAM(Security Account Manager) 是存储本地用户账户信息的注册表 Hive。

SAM 数据库位置:C:\Windows\System32\config\SAM

运行时对应注册表路径:HKLM\SAM\SAM\

重要: SAM 的 HKLM\SAM\SAM\ 子键默认只有 SYSTEM 权限可以访问,即使 Administrator 也无法直接查看。

1
2
3
4
5
6
7
8
9
10
# 尝试读取 SAM(需要 SYSTEM 权限,普通管理员会被拒绝)
# 方法 1:使用 PsExec 以 SYSTEM 身份运行 regedit
# PsExec.exe -s -i regedit

# 方法 2:离线分析 — 使用 reg save 导出后用工具解析
reg save HKLM\SAM C:\IR\SAM
reg save HKLM\SYSTEM C:\IR\SYSTEM

# 然后使用 secretsdump.py (Impacket) 或 samdump2 提取 Hash
# python secretsdump.py -sam SAM -system SYSTEM LOCAL

IR 排查重点:

检查是否有隐藏账户($ 结尾的用户名在 net user 中不显示)

检查账户创建时间是否在事件时间窗口内

检查 Administrator 账户(RID 500)是否被重命名

检查 Guest 账户(RID 501)是否被启用

1
2
3
4
5
6
7
8
9
10
# 检查隐藏账户($ 结尾)
Get-LocalUser | Where-Object { $_.Name -match '\$$' }

# 比 net user 更全面的用户列表
Get-WmiObject Win32_UserAccount -Filter "LocalAccount=True" |
Select-Object Name, SID, Disabled, Lockout, AccountType, Description

# 检查最近创建的账户(通过 Event ID 4720)
Get-WinEvent -FilterHashtable @{LogName='Security';Id=4720} -MaxEvents 20 -ErrorAction SilentlyContinue |
Select-Object TimeCreated, @{N='NewUser';E={$_.Properties[0].Value}}, @{N='Creator';E={$_.Properties[4].Value}}

3.5 排查命令汇总

CMD 版本

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
:: 列出所有本地用户
net user

:: 查看用户详细信息
net user Administrator

:: 列出管理员组成员
net localgroup Administrators

:: 列出 RDP 用户组成员
net localgroup "Remote Desktop Users"

:: 查看当前用户信息和权限
whoami /all

:: 查看当前登录会话
query user

:: 使用 WMIC 列出用户(含 SID)
wmic useraccount list brief

:: 列出所有本地组
net localgroup

PowerShell 版本

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# 列出所有本地用户(含详细信息)
Get-LocalUser | Format-Table Name, Enabled, LastLogon, PasswordLastSet, PasswordExpires, Description -AutoSize

# 列出特定组的成员
Get-LocalGroupMember -Group "Administrators" | Format-Table -AutoSize
Get-LocalGroupMember -Group "Remote Desktop Users" | Format-Table -AutoSize

# 列出所有本地组
Get-LocalGroup | Select-Object Name, Description

# 检查用户的 SID 和 RID
Get-LocalUser | Select-Object Name, SID, @{N='RID';E={$_.SID.Value.Split('-')[-1]}}, Enabled |
Sort-Object RID

# 检查密码永不过期的账户
Get-LocalUser | Where-Object { $_.PasswordExpires -eq $null -and $_.Enabled } |
Select-Object Name, PasswordLastSet

# 检查近 7 天创建的账户
Get-LocalUser | Where-Object {
$_.PasswordLastSet -gt (Get-Date).AddDays(-7)
} | Select-Object Name, SID, Enabled, PasswordLastSet

3.6 与 Linux 对照

概念 Windows Linux
用户标识 SID (S-1-5-21-xxx-RID) UID (数字)
组标识 SID GID
超级用户 Administrator (RID 500) + SYSTEM (S-1-5-18) root (UID 0)
用户数据库 SAM (Registry Hive) /etc/passwd + /etc/shadow
密码 Hash NTLM Hash (MD4) SHA-512 (默认)
用户枚举 net user / Get-LocalUser cat /etc/passwd / getent passwd
组枚举 net localgroup / Get-LocalGroup cat /etc/group
当前用户 whoami /all id
登录历史 Event ID 4624/4625 last / lastlog
隐藏用户技术 $ 结尾用户名 / 注册表隐藏 UID=0 非 root 用户

四、Windows 安全模型

理解 Windows 安全模型对 IR 至关重要 — 它决定了攻击者能做什么,以及为什么需要提权。

4.1 访问令牌(Access Token)

每个进程都有一个 Access Token,包含该进程的安全上下文:

1
2
3
4
5
6
7
8
9
Access Token 结构:
┌─────────────────────────────────┐
│ 用户 SID │ → 标识进程所属用户
│ 组 SID 列表 │ → 用户所属的所有组
│ 特权列表 (Privileges) │ → 授予的特殊权限
│ 完整性级别 (Integrity Level) │ → Low / Medium / High / System
│ 默认 DACL │ → 新建对象的默认权限
│ Token 类型 │ → Primary / Impersonation
└─────────────────────────────────┘

查看当前进程的 Token:

1
2
3
4
5
6
7
# 查看当前用户的完整 Token 信息
whoami /all

# 输出包含:
# - 用户 SID
# - 组成员资格(含 SID 和属性)
# - 特权列表(Enabled / Disabled)

IR 关键点:

Token 窃取(Token Theft)是 Windows 提权的常见手法

攻击者使用工具(如 Mimikatz、Incognito)窃取高权限 Token

进程的权限不仅取决于用户身份,还取决于 Token 中的特权

4.2 关键特权(Privileges)

Windows 的”特权”是比组成员资格更细粒度的权限控制。某些特权的存在本身就是安全风险。

特权名称 说明 安全风险
SeDebugPrivilege 调试任何进程 极高 — 可注入任何进程、读取 lsass 内存
SeImpersonatePrivilege 模拟客户端令牌 极高 — Potato 系列提权(JuicyPotato 等)
SeBackupPrivilege 绕过 ACL 读取文件 高 — 可读取 SAM、NTDS.dit
SeRestorePrivilege 绕过 ACL 写入文件 高 — 可覆盖系统文件
SeTcbPrivilege 充当操作系统的一部分 极高 — 可创建任意 Token
SeAssignPrimaryTokenPrivilege 替换进程令牌 高 — 配合 Token 操作使用
SeLoadDriverPrivilege 加载/卸载内核驱动 极高 — 可加载 rootkit
SeTakeOwnershipPrivilege 获取对象所有权 高 — 可修改任何文件/键的权限
1
2
3
4
5
6
7
# 查看当前用户的特权
whoami /priv

# 检查哪些用户/组拥有危险特权
# 需要 secpol.msc 或 secedit
secedit /export /cfg C:\IR\secpolicy.inf
# 然后搜索 SeDebugPrivilege、SeImpersonatePrivilege 等
1
2
3
4
5
6
# 查看进程的 Token 特权(需 Sysinternals handle.exe 或 Process Explorer)
# 在 Process Explorer 中:右键进程 → Properties → Security

# PowerShell 方式查看特权
[System.Diagnostics.Process]::GetCurrentProcess() | Select-Object Id, ProcessName
whoami /priv | Select-String "SeDebug|SeImpersonate|SeBackup|SeTcb|SeLoadDriver"

IR 排查要点:

发现普通用户进程拥有 SeDebugPrivilege → 高度可疑

服务账户拥有 SeImpersonatePrivilege → 正常(IIS/SQL 等服务默认拥有),但可能被利用提权

任何非系统进程拥有 SeTcbPrivilege → 极度可疑

4.3 完整性级别(Integrity Levels)

Windows Vista 开始引入的强制完整性控制(MIC),进程和对象都有完整性级别标记:

级别 SID 应用场景
Untrusted S-1-16-0 0 极少使用
Low S-1-16-4096 4096 浏览器沙箱(IE Protected Mode)
Medium S-1-16-8192 8192 普通用户进程(标准)
High S-1-16-12288 12288 管理员进程(UAC 提升后)
System S-1-16-16384 16384 系统服务

规则:低完整性级别的进程不能写入高完整性级别的对象

1
2
3
4
5
6
7
8
# 查看进程的完整性级别
# 方法:使用 Process Explorer 的 Integrity 列

# 或使用 icacls 查看文件的完整性标签
icacls C:\Windows\System32\cmd.exe

# 查看当前进程的完整性级别
whoami /groups | Select-String "Mandatory"

IR 关键点:

恶意软件在 Low 完整性级别运行时,能力受限(无法写入 Program Files 等目录)

UAC Bypass 的目标就是从 Medium 提升到 High

服务通常在 System 完整性级别运行

4.4 UAC 与令牌提升

UAC(User Account Control) 是 Windows Vista 开始引入的安全机制:

管理员组成员登录后实际获得 两个 Token

Filtered Token(Medium 完整性)— 日常使用,大部分特权被剥离

Full Token(High 完整性)— 通过 UAC 提示确认后使用

UAC 提升方式:

右键 → “以管理员身份运行”

程序 Manifest 请求 requireAdministrator

某些白名单程序自动提升(如 mmc.exe、regedit.exe 等高信任程序)

1
2
3
4
5
6
7
8
# 检查 UAC 配置
$uacKey = "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System"
Get-ItemProperty $uacKey | Select-Object EnableLUA, ConsentPromptBehaviorAdmin, ConsentPromptBehaviorUser

# EnableLUA = 1 → UAC 启用
# ConsentPromptBehaviorAdmin = 0 → 自动提升(不提示,不安全!)
# ConsentPromptBehaviorAdmin = 2 → 在安全桌面上提示
# ConsentPromptBehaviorAdmin = 5 → 默认值(非 Windows 二进制需要确认)

UAC Bypass 技术(IR 需要了解的攻击手法):

自动提升白名单滥用:利用 fodhelper.execomputerdefaults.exe 等可自动提升的程序

DLL 劫持:劫持可自动提升程序加载的 DLL

环境变量注入windir 环境变量劫持

COM 对象劫持:修改 HKCU 中的 COM 注册

对 IR 的实际影响:

必须以管理员权限运行排查工具,否则很多信息看不到

某些注册表键(SAM, SECURITY)需要 SYSTEM 权限

内存取证工具(如 winpmem)需要内核级权限

1
2
3
4
5
6
7
8
9
10
# 检查当前是否以管理员身份运行
$identity = [Security.Principal.WindowsIdentity]::GetCurrent()
$principal = New-Object Security.Principal.WindowsPrincipal $identity
$isAdmin = $principal.IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)
Write-Host "以管理员身份运行: $isAdmin"

# 如果不是管理员,以管理员身份重新启动 PowerShell
if (-not $isAdmin) {
Start-Process powershell -Verb RunAs -ArgumentList "-NoProfile -ExecutionPolicy Bypass"
}

五、关键系统配置

5.1 hosts 文件

路径:C:\Windows\System32\drivers\etc\hosts

功能:静态主机名解析,优先级高于 DNS

等价于 Linux 的 /etc/hosts

IR 排查要点:

攻击者可能添加条目将安全更新域名指向 127.0.0.1(阻止更新)

攻击者可能将正常域名指向恶意 IP(DNS 劫持)

挖矿木马可能添加矿池域名的直接 IP 解析

1
2
3
4
5
6
7
# 查看 hosts 文件内容
Get-Content C:\Windows\System32\drivers\etc\hosts |
Where-Object { $_ -notmatch '^\s*#' -and $_ -match '\S' }

# 检查 hosts 文件最近修改时间
Get-Item C:\Windows\System32\drivers\etc\hosts |
Select-Object FullName, LastWriteTime, Length

5.2 services 文件

路径:C:\Windows\System32\drivers\etc\services

功能:端口号与服务名映射

等价于 Linux 的 /etc/services

通常不是 IR 排查重点,但如果被修改可能影响端口识别

5.3 组策略(Group Policy)

本地组策略路径:C:\Windows\System32\GroupPolicy\

域组策略缓存:C:\Windows\System32\GroupPolicy\DataStore\

域组策略SYSVOL路径:\\<domain>\SYSVOL\<domain>\Policies\

1
2
3
4
5
6
7
8
9
# 查看当前生效的组策略
gpresult /z

# 导出组策略到 HTML 报告
gpresult /h C:\IR\gpresult.html

# 查看本地组策略的脚本
Get-ChildItem C:\Windows\System32\GroupPolicy\ -Recurse |
Select-Object FullName, LastWriteTime

IR 排查要点:

检查 GroupPolicy\Machine\Scripts\Startup\ 是否有可疑脚本

检查 GroupPolicy\User\Scripts\Logon\ 是否有可疑脚本

域环境中:检查 GPO 是否被篡改(如添加了恶意启动脚本)

5.4 防火墙配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# 查看防火墙状态(所有配置文件)
Get-NetFirewallProfile | Select-Object Name, Enabled, DefaultInboundAction, DefaultOutboundAction

# 等价 CMD 命令
# netsh advfirewall show allprofiles

# 列出所有防火墙规则(关注 Allow Inbound)
Get-NetFirewallRule | Where-Object {
$_.Enabled -eq 'True' -and
$_.Direction -eq 'Inbound' -and
$_.Action -eq 'Allow'
} | Select-Object DisplayName, Profile, LocalPort, RemoteAddress |
Format-Table -AutoSize

# 检查最近添加的防火墙规则
Get-NetFirewallRule | Where-Object {
$_.Enabled -eq 'True' -and $_.Direction -eq 'Inbound' -and $_.Action -eq 'Allow'
} | Sort-Object -Property CreationClassName |
Select-Object DisplayName, Description -First 20

IR 排查要点:

检查是否有不明的 Allow Inbound 规则

检查防火墙是否被关闭(攻击者常关闭防火墙)

检查是否有针对特定 IP 的放行规则

5.5 Windows Defender 配置

1
2
3
4
5
6
7
8
9
10
11
# 查看 Defender 状态
Get-MpComputerStatus | Select-Object AntivirusEnabled, RealTimeProtectionEnabled,
AntivirusSig*, AMServiceEnabled, AntispywareEnabled

# 查看排除项(攻击者可能添加排除以隐藏恶意软件)
Get-MpPreference | Select-Object -ExpandProperty ExclusionPath
Get-MpPreference | Select-Object -ExpandProperty ExclusionProcess
Get-MpPreference | Select-Object -ExpandProperty ExclusionExtension

# 查看最近的威胁检测
Get-MpThreatDetection | Select-Object -First 10

IR 排查要点:

检查排除列表 — 攻击者经常添加排除路径/进程/扩展名

检查 Defender 是否被禁用

查看检测历史中是否有被清除的威胁(可能有残留)


六、Windows vs Linux 全面对照表

这是全页最核心的参考表,整合了前面各节的对比内容,方便快速查阅。

6.1 系统路径对照

功能 Windows 路径 Linux 路径
系统二进制 C:\Windows\System32\ /usr/bin/ + /usr/sbin/
系统临时目录 C:\Windows\Temp\ /tmp/
用户主目录 C:\Users\<user>\ /home/<user>/
用户临时目录 %TEMP% (AppData\Local\Temp) $TMPDIR/tmp/
全局应用数据 C:\ProgramData\ /var/lib/ + /etc/
程序安装目录 C:\Program Files\ /usr/local/ + /opt/
hosts 文件 drivers\etc\hosts /etc/hosts
服务配置 注册表 Services 键 /etc/systemd/system/
事件日志 winevt\Logs\*.evtx /var/log/*
用户配置 NTUSER.DAT (注册表) ~/.bashrc + ~/.profile
Shell 历史 PSReadLine\ConsoleHost_history.txt ~/.bash_history
启动脚本 shell:startup\ /etc/profile.d/
计划任务 C:\Windows\System32\Tasks\ /var/spool/cron/
防火墙规则 注册表 + WFP /etc/iptables/
DNS 配置 注册表 + Interfaces /etc/resolv.conf
回收站 C:\$Recycle.Bin\<SID>\ ~/.local/share/Trash/

6.2 命令对照

功能 Windows CMD Windows PowerShell Linux
用户列表 net user Get-LocalUser cat /etc/passwd
当前用户 whoami whoami / $env:USERNAME whoami / id
组成员 net localgroup Admins Get-LocalGroupMember getent group sudo
网络连接 netstat -anob Get-NetTCPConnection ss -tlnp / netstat -tlnp
进程列表 tasklist /v Get-Process ps aux
进程树 wmic process Get-CimInstance Win32_Process pstree -p
服务列表 sc query Get-Service systemctl list-units
计划任务 schtasks /query Get-ScheduledTask crontab -l
文件搜索 dir /s /b Get-ChildItem -Recurse find / -name
启动项 reg query ...Run Get-ItemProperty ...Run systemctl list-unit-files
路由表 route print Get-NetRoute ip route / route -n
DNS 缓存 ipconfig /displaydns Get-DnsClientCache resolvectl statistics
文件 Hash certutil -hashfile Get-FileHash sha256sum / md5sum

6.3 安全概念对照

概念 Windows Linux
超级用户 SYSTEM (S-1-5-18) + Administrator (RID 500) root (UID 0)
权限模型 SID + Token + Privilege + DACL + MIC UID/GID + rwx + Capabilities
权限提升 UAC Bypass / Token Theft / Potato sudo / SUID / Capabilities
认证 NTLM + Kerberos (AD) PAM + /etc/shadow
凭据窃取 lsass dump / SAM dump / DCSync /etc/shadow 读取
远程管理 RDP / WinRM / PSRemoting SSH
审计日志 Event Log (Security.evtx) auditd / auth.log
加固基线 CIS Windows Benchmark CIS Linux Benchmark
域/集中管理 Active Directory FreeIPA / LDAP (可选)

七、本页小结

本页覆盖了 Windows 应急响应的基础知识体系:

目录结构 — 知道在哪里找什么

注册表体系 — 理解 Windows 的核心配置数据库

用户与组模型 — SID、RID、本地组的安全影响

安全模型 — Token、特权、完整性级别、UAC

关键系统配置 — hosts、防火墙、Defender、组策略

下一步学习建议:

在虚拟机中逐一执行本页的所有命令

使用 regedit 浏览本页提到的所有注册表路径

使用 Autoruns 查看当前系统的自启动项

导出一份基线快照(Autoruns CSV + 服务列表 + 计划任务)


导航

上一页 → 00-学习路线

下一页 → 02-排查命令速查

返回总索引 → Windows应急响应

Linux 对照 → Linux应急响应/01-系统基础


上一章 目录 下一章
00-学习路线 Windows应急响应 02-排查命令速查