【Microsoft Azure 的1024种玩法】十六.Cobaltstrike内网渗透工具在Azure Cloud中的部署使用

【简介】

Cobalt Strike 是一款使用java编写,C / S架构的商业渗透软件,适合多人进行团队协作,可模拟APT做模拟对抗,进行内网渗透,是一个为对手模拟和红队行动而设计的平台,主要用于执行有目标的攻击和模拟高级威胁者的后渗透行动,本文将介绍在Azure Cloud中安装部署Cobaltstrike内网渗透工具。

【前期文章】

【Microsoft Azure 的1024种玩法】一.一分钟快速上手搭建宝塔管理面板
【Microsoft Azure 的1024种玩法】二.基于Azure云平台的安全攻防靶场系统构建
【Microsoft Azure 的1024种玩法】三.基于Azure云平台构建Discuz论坛
【Microsoft Azure 的1024种玩法】四. 利用Azure Virtual machines 打造个人专属云盘,速度吊打某云盘
【Microsoft Azure 的1024种玩法】五.基于Azure Cloud Shell 一站式创建Linux VM
【Microsoft Azure 的1024种玩法】六.使用Azure Cloud Shell对Linux VirtualMachines 进行生命周期管理
【Microsoft Azure 的1024种玩法】七.Azure云端搭建部署属于自己的维基百科
【Microsoft Azure 的1024种玩法】八. 基于Azure云端轻松打造一款好用的私有云笔记
【Microsoft Azure 的1024种玩法】九. Microsoft Azure云端轻松构建部署PostgreSQL数据库
【Microsoft Azure 的1024种玩法】十. 基于Azure App Service 快速上手部署 ASP.NET Web 应用
【Microsoft Azure 的1024种玩法】十一.手动对Azure磁盘进行IOPS性能压力测试
【Microsoft Azure 的1024种玩法】十二. 使用Auzre cloud 安装搭建docker+vulhub靶场
【Microsoft Azure 的1024种玩法】十三.Azure cloud|带你快速搭建DVWA靶场漏洞环境
【Microsoft Azure 的1024种玩法】十四.Azure DNS 在线域名委托解析操作指南
【Microsoft Azure 的1024种玩法】十五.通过Web浏览器对Auzre VM 服务器运维管理
【Microsoft Azure 的1024种玩法】十六.Cobaltstrike内网渗透工具在Azure Cloud中的部署使用

【Cobalt Strike的特点】

  1. 丰富的payload生成模块:可生成exe,dll,powershell,hta,图片捆绑,bad USB,vba宏木马,以及shellcode等;
  2. 钓鱼攻击及探针模块:自动化挂马链接生成,自动化钓鱼及探针;
  3. 渗透攻击模块:浏览器进程代理、bypassUAC模块、文件上传,下载,新建,删除、提权模块、vpn跳板、dll注入、端口转发、端口扫描、socks代理、令牌窃取利用、执行身份切换、mimikatz套件等;

【系统要求】

Cobalt Strike 要求 Oracle Java 1.8,Oracle Java 11, 或 OpenJDK 11

【服务端安装操作步骤】

一.创建Virtual Machines

1.1创建资源组

①Azure 资源组是在其中部署和管理 Azure 资源的逻辑容器。 必须在创建虚拟机前创建资源组,通过如下命令执行创建名为myResourceGroupVM的资源组

az group create --name myResourceGroupVM --location eastus

②执行结果如下图所示:

1.2 创建Linux虚拟机

①使用 az vm create 命令创建虚拟机,在创建虚拟机时,可使用多个选项来调配适合自己业务场景的虚拟机配置,具体执行命令如下

az vm create \
    --resource-group myResourceGroupVM \
    --name myVM \
    --image UbuntuLTS \
    --admin-username azureuser \
    --generate-ssh-keys

注:执行命令完毕以后CLI命令行会发送命令到Auzre后台进行调用VM的虚拟资源池,在调用创建的过程可能需要几分钟的时间,当创建完毕以后,Azure CLI会回显输出如下已创建的信息
{
"fqdns": "",
"id": "/subscriptions/d5b9d4b7-6fc1-0000-0000-000000000000/resourceGroups/myResourceGroupVM/providers/Microsoft.Compute/virtualMachines/myVM",
"location": "eastus",
"macAddress": "00-22-48-27-2B-E1",
"powerState": "VM running",
"privateIpAddress": "10.0.0.4",
"publicIpAddress": "20.120.95.240",
"resourceGroup": "myResourceGroupVM"
}

②回显VM信息如下图所示:

③我们访问Azure门户找到VM虚拟机管理页面,点击名称进去查看详情

④在此界面中就可以看到我们利用Azure CLI 命令创建出的VM虚拟机器

二.远程连接Azure Virtual Machines

2.1 利用Azure Cloud Shell 连接VM

① 我们通过控制台或者Azure Cloud Shell返回的信息获取到了远程公网IP地址,IP地址如下图圈中所示

②我们就可以在Azure cloud shell中利用ssh远程连接的方式对已创建的服务器进行远程连接,命令如下:

ssh azuretest@20.120.95.240 ssh user@PublicIPaddress

三.安装配置CS服务端

3.1 上传文件到服务器

首先我们在我们的CS服务器上下载三个文件,分别为:cobaltstrike.auth、cobaltstrike.jar、teamserver。并且在cs服务器上启动服务,使用Xftp将JAVA环境的安装包 和 CS ,传到服务器上.

3.2安装Java环境

执行如下命令安装Java环境

tar -axvf jdk-8u281-linux-x64.tar.gz //进行解压
mv ./jdk1.8.0_131 /opt/Java //将文件改名为java并移动到opt目录

3.3 配置环境变量

编辑/etc/profile文件,在最下行添加变量:

export JAVA_HOME=/opt/java
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JRE_HOME=$JAVA_HOME/jre

执行source /etc/profile
检查java环境变量

关闭防火墙

3.4 运行teamserver服务端

手动切换到CS安装包的路径下,执行如下命令赋予权限
Chmod 777 teamserver

./teamserver ip password(ip和密码自填)

四.客户端的安装

4.1 配置客户端JDK

下载客户端JDK以后进行解压,放在一个没有中文路径的目录,比如 E:\dev_runApp\jdk-11.0.11 如下图所示:

打开环境变量

注意,下面的配置都是系统变量,而非用户变量

1)JAVA主目录设置
2)添加一个变量:JAVA_HOME
3)E:\jdk-11

填写服务器IP地址,用户名自定,密码服务器密码123456

最后就可以成功的运行CS啦

至此,我们已经在Azure cloud 成功部署Cobaltstrike了

posted @ 2021-12-12 22:59  一直特立独行的兔先生  阅读(154)  评论(0编辑  收藏  举报