该项目已归档,因为更好的实际利用工具已在其他地方开发出来。
https://blog.rapid7.com/2019/09/06/initial-metasploit-exploit-module-for-bluekeep-cve-2019-0708/
bluekeep_CVE-2019-0708_poc_to_exploit
请在发布诸如“不工作”、“运行脚本后没有任何反应”或“出现错误(没有具体信息),请帮我”之类的内容之前,阅读所有 issue(包括已关闭的和开放的)。
============================================================================
============================================================================
============================================================================ 这不是一些可以直接拿来就用的现成利用工具。
此外,投递方法也很重要,需要确保你的代码能在远程机器上执行。
到目前为止,我们仍然无法成功弹出 shell 并实现 RCE。
大多数现有的扫描器和 PoC 仅通过分析目标主机的响应来判断主机是否存在漏洞(正如你们所知,已修补和未修补的版本返回不同的响应,未受影响的系统也是如此)。它们实际上并没有“利用”目标主机。要实现 RCE,首先我们应该尝试通过发送精心构造的数据包(请参考 RDP MSDN 协议规范)来触发漏洞。触发漏洞后,第二步是分析崩溃或内存转储,找出我们的代码如何能够嵌入其中。这并不像大多数人想象的那么简单。
一些有用的资源:
你可以使用 @trustedsec 的 Magic Unicorn 来生成 shellcode。 https://github.com/trustedsec/unicorn
**注意:请使用 Python 3
当用户提供要连接的远程桌面名称时,RDP 客户端发起连接。RDP 客户端通过发送 X.224 连接请求协议数据单元(PDU)来向 RD 会话主机发起连接。
RD 会话主机使用 X.224 连接确认 PDU 进行响应。
RDP 客户端发送多播通信服务(MCS)连接初始 PDU 以及 GCC 会议创建请求。--> 漏洞与此请求相关。
RD 会话主机使用 MCS 连接响应 PDU 以及 GCC 会议创建响应进行回应。
RDP 客户端发送 MCS 构建域请求 PDU。
RDP 客户端发送 MCS 附加用户请求 PDU。
RD 会话主机使用 MCS 附加用户确认 PDU 进行响应。
RDP 客户端发送多个(本例中为六个)MCS 通道加入请求 PDU。
RD 会话主机发送多个(本例中为六个)MCS 通道加入确认 PDU。
RDP 客户端发送安全交换 PDU。
RDP 客户端发送客户端信息 PDU。
RD 会话主机发送许可证错误 PDU - 有效客户端。
RD 会话主机发送活动需求 PDU。
RDP 客户端使用确认活动 PDU 进行响应。
RDP 客户端发送同步 PDU。
RDP 客户端发送控制 PDU - 协作。
RDP 客户端发送控制 PDU - 请求控制。
RDP 客户端发送零个或多个持久密钥列表 PDU。本例中发送了零个 PDU。
RDP 客户端发送字体列表 PDU。
RD 会话主机发送同步 PDU。
RD 会话主机发送控制 PDU - 协作。
RD 会话主机发送控制 PDU - 授予控制。
RD 会话主机发送字体映射 PDU。