1.2.1 什么是 Cobalt Strike
Last updated
Last updated
在使用 Cobalt Strike 前,我们首先对 Cobalt Strike 的发展史做一个简短的介绍。Cobalt Strike 是一款在2012年推出的商业 C2(Command and Control)框架,但是因潜在用户都是爱好破解之人,所以通常我们使用 Cobalt Strike 都是免费的
Cobalt Strike 的初创公司叫 Strategic Cyber LLC ,后被 HelpSystems (现更名为 Fortra)收购,创始人 Raphael Mudge 也一起加入此公司。Raphael Mudge 曾担任美国空军的安全研究员,渗透测试员,属于是老兵二次创业了
Cobalt Strike 因其简单的操作,丰富的功能和插件,同时还具有较好的联动性,多年来收到攻击者的青睐。根据 ATT&CK V13 版本的图像来看, Cobalt Strike 包含的战术仍然不落后于同类型框架
完整版:https://mitre-attack.github.io/attack-navigator//#layerURL=https%3A%2F%2Fattack.mitre.org%2Fsoftware%2FS0154%2FS0154-enterprise-layer.json
从使用人群的角度来看,小到黑灰产组织,大到国家级演习甚至 APT 组织产生的攻击行为中都可以发现 Cobalt Strike 的蛛丝马迹,像是近期发现的 APT29(Cozy Bear) 就是 Cobalt Strike 的拥趸,根据响应头和响应体可以看出,2023 年和 2021 年一样,都是使用了 Cobalt Strike
但近年来 Cobalt Strike 的统治地位也渐渐被瓦解,例如 silver
Manjusaka
BruteRatel
都在市场上有了一定的占有率,对于一些对于保密性需求更强的组织和个人也在尝试自行开发类似框架
使用 Cobalt Strike 的核心步骤大概分为以下三步:
由 Cobalt Strike 创造 Beacon
对 Beacon 进行加工
将 Beacon 植入 Target
在以上三步顺利完成后,Beacon 就正式成为了我们 C&C(Command and Control)链条的一部分了,通过 Beacon 可以对目标进行完整性、保密性、可用性的攻击
我们在一些场景会听到 Cobalt Strike 使用的是 C/S 架构,这里的 C/S 与我们平常所说的 CS 4.x 的概念完全不同,这里的 C/S 架构指的是 Client-server model,译为客户端/服务器架构,与其对应的概念为 B/S (Browser/Server),即浏览器/服务器架构
从广义上来说 C&C 作为名词时可以是 IP、域名、URL 等等,但对于 Cobalt Strike 来说,我更愿意将整个 C&C 链条总结为 C-B-T:
Client(客户端):是操作员连接到团队服务器的方式
Beacon(信标):用于创建与团队服务器的连接的默认恶意软件负载,负责回调目标的信息和向目标发送信息
Teamserver(服务端):是 C&C 服务器的主要组成部分,它可以接受客户端连接、Beacon 回调和一般 Web 请求