一份未完成的cobalt strike beacon代码
这几天因为一些原因跑去还原了一下Beacon的代码,整体上还原了大部分,功能实现没有
差不多一百多个功能
整体的框架已经还原完的跟原版beacon.dll一样可以使用cs的配置文件不是写死的
使用方式生成一个raw格式
然后用16进制编辑器打开生成的bin 搜索2E 2F 2E 2F 2E
然后从这个位置开始选择往后4096个字节把它复制下来替换到项目里
运行后效果如下没有任何功能
基本通信流程就是首先解密配置然后对c2配置进行解析格式化
然后解析一些需要用的配置
构造元数据 设置http请求 发送元数据 接受返回信息 解密并格式化然后交由Parse_Task处理去执行任务
任务执行完发送结果,主要依靠sub_10012CF这个函数
这个还会调用其他函数,其他函数进一步包装返回数据
与之对应的服务端在接收数据解密后会根据返回id进行处理
其中id 31表示此任务执行错误,然后首先读取一个int然后根据这个int判断要显示的错误信息
项目地址:https://github.com/WBGlIl/Beacon_re
项目依赖libtommath-0.42.0和libtomcrypt-1.17,整个项目的代码非常糟糕慎重考虑是否要看
懒的搞了写的也很随意