CobaltStrike特征隐藏合法证书SSL加密通讯

0x01 CobaltStrike介绍

在红蓝对抗、实战攻防项目中,防守方(蓝队)一般会有许多厂商的安全监控设备,因此,为了防止被蓝队溯源需要采取一些措施去修改CobaltStrike工具特征,CobaltStrike服务端与客户端使用SSL加密通讯的(默认证书CobaltStrike.store),默认情况下的一些配置文件导致keystore文件的内容被用于安全设备所识别、敏感特征识别等,所以该如何修改不易被蓝方发现是至关重要的!

0x02 修改特征的几种方法

1.更改默认端口

方法一:
赋予 teamserver 权限: chmod 777 teamserver
直接编辑teamserver进行启动项修改 vim teamserver

方法二:
启动时候指定server_port

java -XX:ParallelGCThreads=4 -Duser.language=en -Dcobaltstrike.server_port=XXXX -Djavax.net.ssl.keyStore=./cobaltstrike.store -Djavax.net.ssl.keyStorePassword=123456 -server -XX:+AggressiveHeap -XX:+UseParallelGC -Xmx1024m -classpath ./cobaltstrike.jar server.TeamServer xxx.xxx.xx.xx test google.profile
在这里插入图片描述

2.去除证书特征

keystore介绍

keystore是java的密钥库,用来进行通信加密,如数字签名。keystore就是用来保存密钥对的,公钥和私钥。Keystore可理解为一个数据库,可以存放很多个组数据。
在这里插入图片描述

keytool生成证书对

Keytool是一个java数据证书的管理工具,Keytool可以将密钥和证书存放在keystore的文件中,形成后缀为.store文件的证书对。

进入CS目录下
在这里插入图片描述
查看 keytool -list -v -keystore cobaltstrike.store 证书情况 默认密码为:123456 即可查看所有信息
在这里插入图片描述
可以看到里面有明显的CobaltStrike特征信息!

keytool管理工具,使用如下:
在这里插入图片描述
keytool -keystore cobaltstrike.store -storepass 123456 -keypass 123456 -genkey -keyalg RSA -alias google.com -dname "CN=US, OU=”google.com“, O=“Sofatest”, L=Beijing, ST=Cyberspace, C=CN"

在使用 keytool -list -v -keystore cobaltstrike.store 命令查看,已成功修改!
在这里插入图片描述

3.生成合法证书

申请SSL证书
网址:点击跳转证书申请
在这里插入图片描述
CSR选择->浏览器生成->点击创建
在这里插入图片描述
会生成一个TXT记录,然后前往域名配置中去添加一条TXT记录规则
在这里插入图片描述
添加A记录指向自己的VPS
在这里插入图片描述
TXT解析记录配置成功后,可使用nslookup命令检测TXT配置是否成功
在这里插入图片描述
配置成功后,下载SSL证书文件
在这里插入图片描述
生成keystore文件

使用openssl将pem证书和key私钥导出为P12格式的证书
在这里插入图片描述
使用keytool生成store格式的证书对
在这里插入图片描述
在这里插入图片描述

4.启用合法证书

CobaltStrike证书配置

CS启动时会加载默认文件,里面配置了证书文件、密码、心跳时间等,配置文件中可以自己修改设定的请求与响应,让CS通信流量看起来更合法一些,这是需要重新写一个配置文件(Profile)引用证书

CS profile文件地址:点击跳转

https Beacon的证书配置如下:
在这里插入图片描述
在这里插入图片描述
修改完成后,可以用自带的 c2lint 检查配置文件是否正确,没问题就可以正常使用
在这里插入图片描述
最后还需要修改 teamserver 文件,将证书文件和密码修改为刚刚生成的。同时也要把端口号修改,因为端口号也是敏感特征信息

0x03 修改完成后上线测试

启动 teamserver
在这里插入图片描述
创建 https 监听
在这里插入图片描述
生成木马,让主机上线
在这里插入图片描述
已成功上线,并且是https加密传输
在这里插入图片描述
在这里插入图片描述
查看目标与CS的通讯过程,使用https协议传输。在原有的基础上加了一层ssl安全套接字进行加密
在这里插入图片描述

SSL证书加密算法漏洞是指在使用SSL/TLS协议进行通信时,使用了弱加密算法或者加密算法配置不当导致的安全漏洞。这些弱加密算法可能会被攻击者轻易破解,从而获取到通信中的敏感信息。 常见的SSL证书加密算法漏洞包括以下几种: 1. RSA密钥长度过短:RSA是一种非对称加密算法,使用了公钥和私钥进行加密和解密。如果使用的RSA密钥长度过短(比如512位),则存在被暴力破解的风险。 2. 使用过时的SSL/TLS版本:旧版本的SSL/TLS协议存在安全漏洞,容易受到中间人攻击或者数据篡改。建议使用较新的SSL/TLS版本,如TLS 1.2或TLS 1.3。 3. 弱密码套件:SSL/TLS协议支持多种加密算法和密钥交换算法,但有些算法已经被证实不安全。如果服务器配置了弱密码套件,攻击者可以选择弱算法进行攻击。 4. 未正确验证证书:客户端在建立SSL/TLS连接时应该对服务器的证书进行验证,以确保连接的安全性。如果客户端未正确验证证书,攻击者可以使用伪造的证书进行中间人攻击。 为了防止SSL证书加密算法漏洞的发生,可以采取以下措施: 1. 使用较长的RSA密钥长度,推荐使用2048位或以上的密钥长度。 2. 配置服务器只支持较新的SSL/TLS版本,禁用旧版本的协议。 3. 禁用弱密码套件,只支持安全的加密算法和密钥交换算法。 4. 在建立SSL/TLS连接时,确保正确验证服务器的证书,可以使用受信任的证书机构颁发的证书
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

李火火安全阁

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值