简介
对BOF(Beacon Object
File)的支持是在CobaltStrike4.1版本中新引入的功能。BOF文件是由c代码编译而来的可在Beacon进程中动态加载执行的二进制程序。无文件执行与无新进程创建的特性更加符合OPSEC的原则,适用于严苛的终端对抗场景。低开发门槛与便利的内部Beacon
API调用与使得BOF特别适合后渗透阶段攻击工具的快速开发与移植。
BOF本质-OBJ文件
当我们通过file命令查看编译后的BOF文件,我们会发现它是一种名为COFF的文件格式。在Windows操作系统中编译产生的.obj中间文件使用的便是这种格式的文件,也可以作为BOF在cobaltstrike中被正确执行。
Intel amd64 COFF object file, no line number info, not stripped, 7 sections,
symboloffset=0x1330, 212 symbols
利用PEView等工具可以观察其结构:

在.text段存在编译完成的代码

通过如下命令可以调用cobaltstrike自带的BOF解析函数查看BOF文件的属性,及其中的重定向信息。

本文深入剖析CobaltStrike的BOF技术,包括其本质为OBJ文件、执行过程、内部API以及优缺点。BOF在内存中执行,避免文件检测,提供动态函数解析功能,但不支持bss段和多线程,适合小型后渗透工具开发。
|BOF实现源码级分析&spm=1001.2101.3001.5002&articleId=132101010&d=1&t=3&u=d108d61db0cf40d9a5c16122017c98cf)
330

被折叠的 条评论
为什么被折叠?



