文章总结: 文章详细解析CobaltStrike流量分析技术,涵盖通信流程拆解、checksum8路径特征、JA3指纹识别等关键痕迹。核心展示如何通过提取Beacon配置、获取RSA私钥解密元数据,最终批量解密攻击指令与回传数据。可操作建议包括使用1768.py解析配置、cs-decrypt-metadata.py解密元数据、cs-parse-traffic.py还原流量,并指出TeamServer日志可直接获取攻击证据链。 综合评分: 85 文章分类: 漏洞分析,威胁情报,应急响应,恶意软件,安全工具

3.2 获取 RSA 私钥
有公钥还不够,得拿到对应的私钥。两条路:
方法一:从 TeamServer 本地文件提取
如果能拿到攻击者 TeamServer 上的.cobaltstrike.beacon_keys文件,直接用脚本就能导出私钥:
importbase64
importjavaobj.v2asjavaobj
withopen("keys","rb")asfd:
pobj = javaobj.load(fd)
privateKey = pobj.array.value.privateKey.encoded.data
privateKey = (
b"-----BEGIN PRIVATE KEY-----\n"
+ base64.encodebytes(bytes(map(lambdax: x &0xFF, privateKey)))
+b"-----END PRIVATE KEY-----"
)
print(privateKey.decode())
方法二:因数分解公钥(难度极大)
从 Beacon 配置里提取 RSA 的 n 和 e,然后用 yafu 之类的工具分解 n 得到 p 和 q,再算出私钥。
这条路基本走不通。2048 位的 RSA,分解难度不是开玩笑的。想办法拿原密钥文件更现实。
3.3 解密元数据,拿到 raw_key 有了私钥,就能解密 Beacon 发的第一个心跳包。元数据通常藏在 Cookie 头里,base64 编码。
用cs-decrypt-metadata.py脚本:
python cs-decrypt-metadata.py -p <私钥(hex格式)>
解密后能得到raw_key。这是后续所有解密的关键。
3.4 批量解密流量
拿到 raw_key 之后,就可以派生出aes_key和hmac_key,然后批量解密整个会话。
用cs-parse-traffic.py,过滤出非 GET 的 HTTP 包(响应包是命令,POST 包是结果):
python cs-parse-traffic.py
-r a4553adf7a841e1dcf708afc912275ee
-k a368237121ef51b094068a2e92304d46:b6315feb217bd87188d06870dd92855b
-e
-o res.txt
cs-spec.pcapng
参数说明: –-r:raw_key –-k:HMAC_KEY:AES_KEY –-e:同时提取恶意 payload –-o:输出文件
跑完打开res.txt,攻击者下发的命令和回传的结果,全都明文躺在这里。
四、TeamServer 日志里的宝藏
除了抓包解密,如果能接触到 TeamServer 的环境,日志目录里东西不少。
日志一般在Cobalt_Strike/logs/下,按日期分文件夹(YYMMDD格式)。
每个日期文件夹里都有什么: –events.log—— 全局事件:谁登录了、Beacon 什么时候上线、监听器增删记录 –weblog_.log—— 对应端口的 web 服务日志,Stager 下载 Beacon 的记录就在这里 –downloads.log—— 从被控机下载文件的记录
每个被攻击 IP 的子目录里: –beacon_.log—— 和这个 Beacon 的所有交互:执行的命令、命令回显、元数据 –keystrokes/—— 键盘记录 –screenshots.log+screenshots/—— 截屏记录和实际图片
beacon_.log的格式长这样:
02/12 11:51:15 UTC [input] shell whoami
时间、操作员、执行的命令,一目了然。有时候这比解密流量更直接。
五、总结
识别 CobaltStrike 流量,checksum8 路径、固定 URI、JA3 指纹这几条规则基本够用了。拿到密钥之后解密通信内容,才能知道攻击者到底下了什么命令、回传了什么数据。运气好的话还能接触到 TeamServer 日志,那就是现成的证据链。 加密从来不是为了杜绝分析,只是让分析变麻烦。流程跑熟了,遇到这类流量心里也就有底了。
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:哈拉少安全小队 《CobaltStrike流量分析实战》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。








评论