cs特征混淆流量混淆

传输过程中,把流量伪造成高信誉的网站,比如Google 、bing等 。


现在的大多数硬件WAF防护设备都能检测出来Cs的流量特征,所以我们必须要修改CS的流量特征,CS的流量由malleable C2配置来掌控的,所以我们需要定向去配置这个C2。


Malleable C2 是一种特定领域的语言,主要用来控制“Cobalt Strike Beacon”攻击载荷中的网络指针。


malleable C2详细知识参考:


https://bluescreenofjeff.com/2017-01-24-how-to-write-malleable-c2-profiles-for-cobalt-strike/


去配置之前先了解下有关Beacon的通信基础:




从Cobalt Strike 3.6版开始,可以将HTTP动词从POST更改为GET。Beacon忽略了此POST请求(配置文件中的http-post服务器)的响应。默认情况下,Beacon将HTTP POST请求用于上述步骤#3和#4。根据您的目标环境或您正在模拟的流量,可能会注意到交替的GET和POST请求。在这种情况下,请将http-post部分的动词设置为GET。


Beacon与teamserver端c2的通信逻辑:

Cobaltstrike去除特征_加载

1.stager的beacon会先下载完整的payload执行

2.beacon进入睡眠状态,结束睡眠状态后用 http-get方式 发送一个metadata(具体发送细节可以在malleable_profie文件里的http-get模块进行自定义),metadata内容大概是目标系统的版本,当前用户等信息给teamserver端 。如图

的  1)


3.如果存在待执行的任务,则teamserver上的c2会响应这个metadata发布命令。beacon将会收到具体会话内容与一个任务id。

4.执行完毕后beacon将回显数据与任务id用post方式发送回team server端的C2(细节可以在malleable_profile文件中

的http-post部分进行自定义),然后又会回到睡眠状态。


参考资料

https://www.chabug.org/web/832.html


许多 Beacon 指标由一个 C2 拓展文件控制。一个 C2 拓展文件由设置和数据转换组成。数据转换是一 个简单的程序,它指定如何转换数据并将其存储在事务中。转换和存储数据的同一程序,向后解释,还 从事务中提取和恢

复数据。



cs官网给出的配置文件编写指南

https://www.cobaltstrike.com/help-malleable-c2

官方也给出了一个可修改的配置文件

https://github.com/rsmudge/Malleable-C2-Profiles






CS中集成了一个包含在Linux平台下的C2lint工具,下面是检测这段代码是否存在问题(我在视频演示的时候没有写这个因为我已经配置好了):

这个c2lint在cs目录下的,需要用这个东西来加载配置文件







有三种方式:


1.下载后自己修改找到APT目录下的havex.profile修改这个

https://github.com/rsmudge/Malleable-C2-Profiles




2.使用已经配置好的

https://github.com/threatexpress/malleable-c2







3.使用python脚本生产的文件使用

https://github.com/threatexpress/random_c2_profile






./c2lint /home/kali/Desktop/yijian/Malleable-C2-Profiles/APT/havex.profile

 配文件

最后都需要加载文件,检测文件是否可以使用

Cobaltstrike去除特征_加载_02

这样就是成功执行






如何加载:

cs底版本

1.检查配置文件是否可以使用的./c2lint:

指定加载文件:

└─$ sudo ./teamserver 192.168.73.129 admin /home/kali/Desktop/yijian/Malleable-C2-Profiles/APT/TeamServer.prop

[*] Will use existing X509 certificate and keystore (for SSL)

[+] I see you're into threat replication. /home/kali/Desktop/yijian/Malleable-C2-Profiles/APT/TeamServer.prop loaded.

[*] Loading properties file (/home/kali/Desktop/CSAgent_4.4/TeamServer.prop).

[!] Properties file (/home/kali/Desktop/CSAgent_4.4/TeamServer.prop) was not found.

[+] Team server is up on 0.0.0.0:50050

[*] SHA256 hash of SSL cert is: b96fc0c921a4302453fead58f15033e624d04da074c688f6ffe24674a405c1ad

[+] Listener: 80 started!



4.4版本,需要指定prop文件

1.(需要把配置文件的名字改为TeamServer.prop,因为这个是默认名字,否则在启动的时候会产生警告,但是可以不用修改,配置文件为加载,而且要放在cs同一目录下才能使用:

[*] Loading properties file (/home/kali/Desktop/CSAgent_4.4/TeamServer.prop).

[!] Properties file (/home/kali/Desktop/CSAgent_4.4/TeamServer.prop) was not found.

)。


如:

└─$ sudo ./teamserver 192.168.73.129 admin /home/kali/Desktop/yijian/teamserver.prop

 ip             密码                           特征文件