在红蓝对抗、实战攻防项目中,防守方(蓝队)一般会有许多厂商的安全监控设备,因此,为了防止被蓝队溯源需要采取一些措施去修改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
keystore是java的密钥库,用来进行通信加密,如数字签名。keystore就是用来保存密钥对的,公钥和私钥。Keystore可理解为一个数据库,可以存放很多个组数据。
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 命令查看,已成功修改!
申请SSL证书
网址:点击跳转证书申请
CSR选择->浏览器生成->点击创建
会生成一个TXT记录,然后前往域名配置中去添加一条TXT记录规则
添加A记录指向自己的VPS
TXT解析记录配置成功后,可使用nslookup命令检测TXT配置是否成功
配置成功后,下载SSL证书文件
生成keystore文件
使用openssl将pem证书和key私钥导出为P12格式的证书
使用keytool生成store格式的证书对
CobaltStrike证书配置
CS启动时会加载默认文件,里面配置了证书文件、密码、心跳时间等,配置文件中可以自己修改设定的请求与响应,让CS通信流量看起来更合法一些,这是需要重新写一个配置文件(Profile)引用证书
CS profile文件地址:点击跳转
https Beacon的证书配置如下:
修改完成后,可以用自带的 c2lint 检查配置文件是否正确,没问题就可以正常使用
最后还需要修改 teamserver 文件,将证书文件和密码修改为刚刚生成的。同时也要把端口号修改,因为端口号也是敏感特征信息
启动 teamserver
创建 https 监听
生成木马,让主机上线
已成功上线,并且是https加密传输
查看目标与CS的通讯过程,使用https协议传输。在原有的基础上加了一层ssl安全套接字进行加密
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)