基于RDP的SSL中间人攻击 (rdp协议分析)

教程大全 2025-07-18 00:22:37 浏览

本文通过演示在RDP会话期间劫持的按键发送信息,向读者演示了为什么用户忽略那些基于SSL的RDP连接的证书警告可能导致中间人(MiTM)攻击,并总结了一些关于如何避免成为这种攻击的受害者的建议。

RDP连接的类型

在开始之前,首先明确本文讨论了三种类型的RDP连接,包括:

- RDP安全层(RDPSecurity Layer)- SSL(TLS 1.0)- CredSSP (SSL with NLA)

本文要演示的是中间的那个类型,即SSL(TLS 1.0)。在终端 服务器 上,SSL一般会如下配置(不选中任意NLA复选框):

RDP使用的配置

如果服务器被设置“Negotiate”,某些连接可能包含比较容易受到攻击,因为其安全层可能使用SSL。

SSL证书警告

如果有用户在每次连接时经常不重视类型如下的警告提示,本文恰好就是针对这些用户的:

经常被习惯性忽视的SSL警告

攻击简介

在较高的层面,攻击与其它的SSL中间人攻击类似:

1. 想办法使受害者连接到我们系统上的PoC工具(rdp-ssl-mitm.py),而不是其要连接的RDP服务器。

2. 该工具使用RDP协议,通过协商使其在交互过程中使用SSL。

3. 一旦连接被协商使用SSL,我们的工具就会用其自己(不可信的)SSL证书与RDP客户端协商一次SSL连接。这样就使欺骗工具有机会访问RDP客户端发送的信息明文。

4. 该工具也需要与正常的RDP服务器创建SSL连接,将RDP客户端的数据发送到该服务器。

这种攻击的唯一缺点是在创建所需的SSL连接之前,我们的欺骗工具必须通过RDP协议与客户端有一个简短的交互。

1、使受害者连接到我们这里

在真实的攻击过程中,我们需要使RDP客户端连接到我们的系统,而不是其目标服务器。因此会用到ARP欺骗、DNS欺骗或一些其它方法,为简便起见,本文不再演示这些细节,假设已经成功欺骗受害者的RDP客户端使其连接攻击者的系统。

在我们的攻击系统上(192.168.190.170),启动PoC工具,告诉它与正常的RDP服务器192.168.2.96连接:

$ ./rdp-ssl-mitm.py -r192.168.2.96:3389[+] Listening forconnections on 0.0.0.0:3389

这里我们只需要简单地将攻击系统的IP地址输入到RDP客户端(客户端从192.168.190.1连接):

直接输入攻击者的IP,略过ARP欺骗步骤

2、与RDP客户端交互协商使用SSL

SSL的协商在RDP协议内非常短:

Message #1: Client >MiTM > Server03 00 00 13 0e e0 00 00 00 00 00 01 00 0800 *03*00 00 00

这段消息是静态不变的,我们的欺骗工具直接将其传递给服务器,不做修改。*03*表示客户端支持RDP安全层、SSL与CredSSP。

Message #2: Server >MiTM > Client03 00 00 13 0e d0 00 00 12 34 00 02 00 0800 *01*00 00 00

接下来的消息表示服务器选择使用的协议,*01*表示服务器已经选择使用SSL(*02*表示CredSSP)。我们也将这条消息不加修改地传递给客户端。

注意如果服务器如果选择了CredSSP(*02*),本次演示会失败,因为这里只是攻击SSL,不是CredSSP。

3、与RDP客户端创建SSL连接

Message #3: Client >MiTM

第三条消息用来开始创建一条SSL连接。这里SSL客户端的消息从*16 0301*开始(03 01表示SSL使用的版本:SSL 3.1AKA TLS 1.0)

*16 03 01* 00 5a 01 00 00 56 03 01 52 21 acbe 6320 ce de 4b a5 90 18 f0 66 97 ee 9d 54 14e3 1c... snip ...

欺骗工具不会将这些数据直接发给服务器,而是直接向服务器发送创建连接的请求,同时与客户端完成SSL连接的建立。

这里我们使用的SSL证书会被RDP客户端认为非法,并在mstsc中向用户显示SSL警告:

因PoC工具使用的证书产生的安全警告

如果用户仔细检查就会发现,这里使用的SSL证书与正常证书是存在区别的。要改进攻击的质量,我们需要不断改进证书使其无限接近真实的证书,但我们永远无法得到与正常证书相同的签名,因此总会有些不同。

4、与RDP服务器创建SSL连接

同时,我们的工具也向RDP服务器发起创建连接的消息,并与其创建第二条SSL连接。

显示按键信息

至些,我们的欺骗工具就可以明文显示RDP客户端发给服务器所有按键操作了。很容易确定发送的是哪种类型的消息,以下两个4字节的消息就是按‘p’键时发送的。

44 04 00 1944 04 01 19

第三个字节表示按键的方向(00表示键被按下,01表示键弹起)。第四个字节是键的扫描码(scancode),通过查询可以发现0×19恰好对应字母“p”键。

通常情况下,与字符对应的扫描码取决于所使用的键盘。我所使用的PoC工具中,已经实现了对QWERTY键盘的映射,所以如果读者使用的是UK/US键盘,该工具可以直接将大部分扫描码转换成对应的字符。注意我们无法知道字符是大写的还是小写的,需要根据CAPSLock键和SHIFT键的状态的状态确定。

话不多说,直接上例子。以下是PoC工具的一些输出,显示了记录的按键,同时也记录下了登录的用户名为Administrator,密码为Password:

$ ./rdp-ssl-mitm.py -r 192.168.2.96:3389[+] Listening for connections on0.0.0.0:3389[+] Incoming connection from192.168.190.1:60370[+] New outgoing request to192.168.2.96:3389 (SSL: 0)[+] Connected[+] Detected incoming SSL connection.Turning self into SSL socket[+] Incoming connection from192.168.190.1:60374[+] New outgoing request to192.168.2.96:3389 (SSL: 0)[+] Connected[+] Detected incoming SSL connection.Turning self into SSL socketADMINISTRATORPASSWORD

总结

习惯性忽略RDP连接中的SSL认证警告提示可能造成与忽视HTTPS网站的证书同样的后果:用户可以轻而易举受到中间人攻击。这种攻击可以截获到用户的用户名、密码、按键信息及其它敏感信息。

使用RDP客户端可信的、由认证授权机构签名的SSL证书,正常情况下是没有警告提示的,因此本文也强烈推荐用户注意这一点。

rdp协议分析

如果服务器授权了NLA,这种攻击也会失效,所以我们也强烈推荐使用NLA。

不过需要知道的是,这并不是RDP客户端或服务器软件的漏洞,这种利用方法也不是新发现。这只是RDP使用过程中的一些脆弱特性,在用户忽略安全警告时可能产生,在技术层面只是一个普通的SSL中间人攻击。

这种攻击中一个比较有趣的扩展就是可以记录屏幕画面,也有机会攻击任意RDP客户端映射的驱动器,更多细节可以参考《Attacking the RDP Clients》,不过这种攻击需要攻击有一定的编码基础。

[via portcullis]


ARP断网攻击怎么办

ARP攻击就是通过伪造IP地址和MAC地址实现ARP欺骗,能够在网络中产生大量的ARP通信量使网络阻塞,攻击者只要持续不断的发出伪造的ARP响应包就能更改目标主机ARP缓存中的IP-MAC条目,造成网络中断或中间人攻击。 你可以安装360木马防火墙,勾选360下面的小勾勾。

电子商务是学什么的?好就业吗?一般去什么地方就业?

电子商务,英文是Electronic Commerce,简称EC。 电子商务通常是指是在全球各地广泛的商业贸易活动中,在因特网开放的网络环境下,基于浏览器/服务器应用方式,买卖双方不谋面地进行各种商贸活动,实现消费者的网上购物、商户之间的网上交易和在线电子支付以及各种商务活动、交易活动、金融活动和相关的综合服务活动的一种新型的商业运营模式。 “中国网络营销网” Tinlu相关文章指出,电子商务涵盖的范围很广,一般可分为企业对企业(Business-to-Business),或企业对消费者(Business-to-Customer)两种。 另外还有消费者对消费者(Customer-to-Customer)这种大步增长的模式。 随着国内Internet使用人数的增加,利用Internet进行网络购物并以银行卡付款的消费方式已渐流行,市场份额也在迅速增长,电子商务网站也层出不穷。 电子商务最常见之安全机制有SSL及SET两种。 SSL(安全套接层协议)SET(安全电子交易协议)电子商务的定义:首先将电子商务划分为广义和狭义的电子商务。 广义的电子商务定义为,使用各种电子工具从事商务或活动。 这些工具包括从初级的电报、电话、广播、电视、传真到计算机、计算机网络,到NII(国家信息基础结构-信息高速公路)、GII(全球信息基础结构)和Internet等现代系统。 而商务活动是从泛商品(实物与非实物,商品与非商品化的生产要素等等)的需求活动到泛商品的合理、合法的消费除去典型的生产过程后的所有活动。 狭义电子商务定义为,主要利用Internet从事商务或活动。 电子商务是在技术、经济高度发达的现代社会里,掌握信息技术和商务规则的人,系统化地运用电子工具,高效率、低成本地从事以商品交换为中心的各种活动的总称。 这个分析突出了电子商务的前提、中心、重点、目的和标准,指出它应达到的水平和效果,它是对电子商务更严格和体现时代要求的定义,它从系统的观点出发,强调人在系统中的中心地位,将环境与人、人与工具、人与劳动对象有机地联系起来,用系统的目标、系统的组成来定义电子商务,从而使它具有生产力的性质。

什么叫电子商务?

电子商务,Electronic Commerce,简称EC。 电子商务通常是指是在全球各地广泛的商业贸易活动中,在因特网开放的网络环境下,基于浏览器/服务器应用方式,买卖双方不谋面地进行各种商贸活动,实现消费者的网上购物、商户之间的网上交易和在线电子支付以及各种商务活动、交易活动、金融活动和相关的综合服务活动的一种新型的商业运营模式。 “中国网络营销网” Tinlu相关文章指出,电子商务涵盖的范围很广,一般可分为企业对企业(Business-to-Business),或企业对消费者(Business-to-Consumer)两种。 另外还有消费者对消费者(Consumer-to-Consumer)这种大步增长的模式。 随着国内Internet使用人口之增加,利用Internet进行网络购物并以银行卡付款的消费方式已渐流行,市场份额也在快速增长,电子商务网站也层出不穷。 电子商务最常见之安全机制有SSL及SET两种。 SSL(安全套接字协议)SSL(安全套接字协议)电子商务的定义: 首先将电子商务划分为广义和狭义的电子商务。 广义的电子商务定义为,使用各种电子工具从事商务或活动。 这些工具包括从初级的电报、电话、广播、电视、传真到计算机、计算机网络,到NII(国家信息基础结构-信息高速公路)、GII(全球信息基础结构)和Internet等现代系统。 而商务活动是从泛商品(实物与非实物,商品与非商品化的生产要素等等)的需求活动到泛商品的合理、合法的消费除去典型的生产过程后的所有活动。 狭义电子商务定义为,主要利用Internet从事商务或活动。 电子商务是在技术、经济高度发达的现代社会里,掌握信息技术和商务规则的人,系统化地运用电子工具,高效率、低成本地从事以商品交换为中心的各种活动的总称。 这个分析突出了电子商务的前提、中心、重点、目的和标准,指出它应达到的水平和效果,它是对电子商务更严格和体现时代要求的定义,它从系统的观点出发,强调人在系统中的中心地位,将环境与人、人与工具、人与劳动对象有机地联系起来,用系统的目标、系统的组成来定义电子商务,从而使它具有生产力的性质。

本文版权声明本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请联系本站客服,一经查实,本站将立刻删除。

发表评论

热门推荐