CS隐藏桌面工具

admin 2023年5月29日14:45:05评论287 views字数 1348阅读4分29秒阅读模式

声明公众分享安全工具项目来自互联网仅提供安全研究学习使用用于其他目的使用者需要承包所有法律责任相关连带责任公众工具作者无关声明

项目介绍

隐藏桌面(通常称为 HVNC)是一种允许操作员在用户不知情的情况下与远程桌面会话进行交互的工具。不涉及VNC协议,但结果是类似的体验。这个 Cobalt Strike BOF 实现是作为用 C++ 编写的 TinyNuke/forks 的替代品创建的。

隐藏桌面有四个组件:

  • BOF initializer:负责将 HVNC 代码注入 Beacon 进程的小程序。
  • HVNC shellcode:TinyNuke HVNC 的 PIC 实现。
  • 服务器和操作员 UI:侦听来自 HVNC shellcode 的连接的服务器和允许操作员与远程桌面交互的 UI。目前仅支持 Windows。
  • 应用程序启动器 BOF:在新桌面中执行应用程序的信标对象文件集。

使用方法

下载最新版本或使用make. 在可从 teamserver 访问的 Windows 计算机上启动 HVNC 服务器。然后您可以执行客户端:

HiddenDesktop <server> <port>

您应该会在服务器计算机上看到一个新的空白窗口。默认情况下,BOF 不执行任何应用程序。您可以使用应用程序启动器 BOF 在新桌面上执行常用程序:

hd-launch-edge
hd-launch-explorer
hd-launch-run
hd-launch-cmd
hd-launch-chrome

您还可以使用鼠标和键盘通过文件资源管理器启动程序。可以使用以下命令执行其他应用程序:

hd-launch <command> [args]

演示

实施细节

  1. Aggressor 脚本生成随机管道和桌面名称。这些作为参数传递给 BOF 初始值设定项。桌面名称在执行时存储在 CS 首选项中,并由应用程序启动器 BOF 使用。HVNC 流量使用rportfwd. 状态更新通过命名管道发送回 Beacon。
  2. BOF 初始化程序首先解析所需的模块和函数。来自 Aggressor 脚本的参数已解决。指向包含参数和函数地址的结构的指针被传递给InputHandlerHVNC shellcode 中的函数。它用于BeaconInjectProcess执行 shellcode,这意味着可以在 Malleable C2 配置文件或进程注入 BOF 中自定义行为。您可以修改隐藏桌面以定位远程进程,但目前不支持。这样做是为了让 BOF 可以退出并且 HVNC shellcode 可以继续运行。
  3. InputHandler创建一个新的命名管道供 Beacon 连接。建立连接后,将打开 ( OpenDesktopA) 或创建 ( CreateDesktopA) 指定的桌面。新套接字通过反向端口转发 ( rportfwd) 建立到 HVNC 服务器。输入处理程序为DesktopHandler下面描述的函数创建一个新线程。该线程将从 HVNC 服务器接收鼠标和键盘输入并将其转发到桌面。
  4. DesktopHandler通过反向端口转发建立到 HVNC 服务器的附加套接字连接。此线程将监视窗口的更改并将它们转发到 HVNC 服务器。

下载地址

https://github.com/WKL-Sec/HiddenDesktop

 

 

原文始发于微信公众号(红蓝公鸡队):CS隐藏桌面工具

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年5月29日14:45:05
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   CS隐藏桌面工具https://cn-sec.com/archives/1763294.html

发表评论

匿名网友 填写信息