【调试笔记】Cobalt Strike - Beacon信标快速分析

本文详细介绍了Cobalt Strike Beacon信标的分析流程,从Loader到ShellCode的解密执行,强调了利用VirtualAlloc和VirtualProtect断点快速定位关键代码的重要性。通过对宏代码释放的Dll和其导出函数的分析,揭示了Beacon如何通过动态分配内存和函数地址解析来隐藏行为。
摘要由CSDN通过智能技术生成

流程

本次分析的样本为:宏代码释放的dll(也可能被其他的方式代替,初始载荷有多种方式,如压缩包等)→exe加载的.dll(常见的白加黑方式,这个dll才是Beacon)→解密ShellCode2的ShellCode1→ShellCode2→下载文件到本地
根据实际情况,可能有多种组合方式,最核心的问题是快速定位ShellCode并分析。
*由于本人截图没截全或者不满意,所以图片通过调试多次获得,故内存地址稍有不同,请不要太注意不同图片内存地址一定要对应

推荐Cobalt Strike - Beacon分析文章

《记月 - CobaltStrike内层组件分析(一)》

结论先行 - 调试重要的断点

Loader:下VirtualAlloc/VirtualProtect断点,通过CreateThread或者CALL 寄存器进入ShellCode1
ShellCode1:LoadLibrary + GetProcAddress通过HASH寻址获取函数地址后,CALL 寄存器进入ShellCode2
ShellCode2:Dump出来的文件通过IDA静态分析配合OD动态分析

宏代码释放Dll1,并执行其导出函数

Dll1有80+MB没法跟:

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值