前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >利用 mstsc 反向攻击思路整理

利用 mstsc 反向攻击思路整理

作者头像
信安之路
发布2020-05-09 16:39:04
4.1K0
发布2020-05-09 16:39:04
举报
文章被收录于专栏:信安之路信安之路

在实战中,当面对 DMZ 区隔离、堡垒机时,很多直接的正向攻击方式都很难实现。曾经在某次渗透过程中,通过日志分析,已经确认核心内网的 ip 地址,但是发现目标机器只随机开放远端口与被攻击机进行 rdp 远程连接,所有正向攻击手段都无法使用。很难受,因此收集整理了一下目前的 mstsc 反向攻击方法,供大家参考,不足之处请多指点。

1、tsclient 反向感染

a、原理

tsclient 是通过远程桌面连接到远程计算机时,在远程计算机“网上邻居”中出现的一个机器名,实际为远程计算机分配给本机的名称。

通过\\tsclient\盘符可以在远程计算机上访问本机。其访问方式类似于使用 smb 进行文件传输,虽然本质上都是 smb 协议,但是使用 tsclient 无需身份认证,因此可以直接将通过预制手段,使用 tsclient 反向感染。

b、利用

通常情况下,tsclient 的利用思路较为简单,通过文件传输将恶意程序脚本写入用户的启动(startup)文件夹,当机器重启时,就会执行恶意程序脚本。

大概场景如下:

遍历 tsclient 的自启动目录 -》添加执行程序 -》机器重启 -》目标上线

在这方便已经有较为成熟的工具,RDPInception,github 地址:

https://github.com/mdsecactivebreach/RDPInception/

c、限制条件

该攻击方法使用时限制条件较多。

1、mstsc 需要开启驱动器 C 盘,但是默认情况下 mstsc 是不开启磁盘共享功能的。必须要手工开启,如图所示:

2、当开启 RDP 远程访问时,只有远程登录的用户可以访问 tsclient。其他用户无法访问,包括使用 runas 也无法访问。

使用登录用户执行dir \\tsclient\c命令,可以正常访问。

使用其他用户执行命令无法访问,包括使用 runas:

因此,想使用 tsclient 进行信息收集也相对困难。

虽然限制条件较多,但在实际环境中,很多运维人员为了方便操作,通常会挂载磁盘,因此这一方法并非全然无用,需要根据实际情况判断。猥琐一些的思路:在脚本找不到挂载磁盘的情况下,直接结束 rdpclip.exe 使管理员无法使用剪切板功能,迫使管理员在不清楚原因的状况下,直接重新挂载上磁盘操作。

最后,不同于 smb 上传文件后使用计划任务启动,由于不知道被感染的机器用户身份,因此只能依托于启动项开机自启动。因此,该攻击方式对服务器攻击效果较弱。

2、剪切板窃取

除了利用文件传输以外,其实还可以尝试利用剪切板劫持的方法进行反向攻击。

a、原理

在使用 mstsc 进行远程桌面的时候,会启动一个叫 rdpclip.exe 的进程,该进程的功能是同步服务端与客户端的剪贴板。

而这个进程是一个十分有用的进程,如上文提到的,如果直接结束该进程,那么在服务端(远程机器)上将某些数据拷贝到客户端(本地机器)上时,就会发现剪贴板失效,无法复制。

由于启动该进程时,会自动同步剪切板内容,因此当目标目标机器与其他机器使用 mstsc 建立 RDP 远程连接时,就可以通过读取 rdplicp.exe 进程数据,进行剪贴板窃取,以尽可能地获取更多的信息。

此外,由于该进程是后台运行的,当管理员同时用远程桌面登陆多个服务器,在其中的某一个服务器上进行复制拷贝操作时,会将数据同步到所有服务器的 rdplicp.exe 进程。

b、利用

在 empire 中有一个 Get-ClipboardContents.ps1,可以用 empire 或者 coablt strike 加载该脚本。或者也可以自己编写相关脚本使用。是一个相对简单的工具。

但是需要注意的是,与 tsclient 类似,同计算机的不同用户之间是无法读取的,每一个用户的 rdplicp.exe 是独立启动的。不同用户之间的 rdplicp.exe/cilboard 是不互通的,但是能否在高权限下跨用户读取,未测试

c、限制条件

首先,与 tsclient 类似,mstsc 需要开启剪切板。但是与 tsclient 不同,在 mstsc 中剪切板是默认开启的。

其次,不同用户之间无法直接读取,使用 runas 同样不行。

并且由于 rdplicp.exe 是在远程计算机上运行,初次启动时会直接本地计算机读取剪切板内容,并同步回远程计算机的剪切板中,因此,这是一种单向行为。

从第二次更新剪切板内容开始变为双向同步,并且在结束远程连接时会自动删除双方机器的剪切板内容。

如果是发生在俄罗斯套娃(a 远程 b 远程 c 远程 d 远程……)的场景中,断开连接时,只会自动删除没有建立其他远程连接机器的剪切板。即,当a 断开 b 远程c 时,a 的剪切板清空,b、c 保留;当a 远程 b 断开 c 远程 d时,a、b 和 c、d 剪切板内容都会保留。

3、剪切板劫持

剪切板的利用方法有两种,一种是上面提到的利用共享剪贴板进行剪切板窃取,另外一种则是利用剪切板目录穿越进行恶意文件传输。

与剪切板窃取不同,剪切板劫持(路径穿越)是一个严重的漏洞,在 19 年 2 月被公开,其 CVE 漏洞编号为 CVE-2019-0887。

a、原理

在远程桌面时,使用剪切板传输一个文件的流程如下:

1、在服务器上,"复制"操作会创建格式为 "CF_HDROP" 的剪贴板数据

2、在客户端计算机中执行"粘贴"时,将触发一系列事件

3、要求服务器上的 rdpclip.exe 进程提供剪贴板的内容,并将其转换为 FileGroupDescriptor(Fgd) 剪贴板格式

4、使用 HdropToFgdConverter::AddItemToFgd() 函数,将文件的元数据添加到描述符中

5、完成后,将 Fgd Blob 发送到服务器上的 RDP 服务

6、服务器只是将其包装并将其发送给客户端

7、客户端将其解包并将其存储在自己的剪贴板中

8、"粘贴"事件将发送到当前窗口(例如,explorer.exe)

9、处理事件并从剪贴板读取数据

10、通过 RDP 连接接收文件的内容

在这个过程中,由于在将文件打包成 Fgd 格式然后发送给 PC 端的过程中,没有进行内容检测,再同时配合微软本身 API 支持"/"访问的特性,可以跨目录复制文件,实现类似于 CVE-2018-20250(winrar 解压目录穿越)的攻击效果。

详细过程请参考:

https://paper.seebug.org/1074/

b、利用

目前网上并没有公开此漏洞的 exp,但是可以看到其他人复现的视频:

https://www.bilibili.com/video/av74857336#reply2087757815

目前可以在 github 上检索到一个测试 poc,效果没有视频中那样强大,但是依旧可以实现替换复制文件。对这方面有研究的大佬可以自行修改测试。

https://github.com/0xedh/mstsc-path-traversal

c、限制条件

首先最重要的,还是要开启 mstsc 的剪切板功能。

其次,同 tsclient 的攻击方式类似,该漏洞的触发依旧依托于开机自启,因此对服务器的攻击效果较差。

此外,如果受害者不进行复制粘贴操作,也无法触发次漏洞,而多次进行复制粘贴又会触发文件重复弹窗(修改脚本,每次附加的文件文件名都不同应该可以解决),使用起来限制不小。但是仍不失为一种行之有效的攻击手段。

参考链接:

https://paper.seebug.org/1074/

以上就是目前我收集到的三种 mstsc 反向攻击方法。不足之处请多指教。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-04-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 信安之路 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、tsclient 反向感染
    • a、原理
      • b、利用
        • c、限制条件
        • 2、剪切板窃取
          • a、原理
            • b、利用
              • c、限制条件
              • 3、剪切板劫持
                • a、原理
                  • b、利用
                    • c、限制条件
                    相关产品与服务
                    堡垒机
                    腾讯云堡垒机(Bastion Host,BH)可为您的 IT 资产提供代理访问以及智能操作审计服务,为客户构建一套完善的事前预防、事中监控、事后审计安全管理体系,助力企业顺利通过等保测评。
                    领券
                    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档