Skip to content

8. 远控工具开发

8.1 CobaltStrike实战去特征免杀

插件开发(BOF/CNA)

工具 功能
LSTAR 综合信息收集
OperatorsKit 运维工具
CS-AutoPostChain 自动化后渗透
Ghosting-BOF -
WindowSpy 窗口监控
CS-Remote-OPs-BOF 远程操作
PrivKit 提权
PPEnum 权限枚举
Chisel-Strike 隧道
cmstplua-uac-bypass UAC绕过
CSx4Ldr 加载器
AceLdr 位置无关代码加载
bof-vs VS BOF模板
No-Consolation 控制台隐藏
BOF-patchit 内存补丁
ScreenShot-BOF 截图
SCMUACBypass SCM UAC绕过
Slacker -
Mockingjay_BOF -
ScreenshotBOFPlus -
DropSpawn_BOF -
HiddenDesktop 隐藏桌面
whereami 地理定位
Cookie-and-Handle-Stealer 凭证窃取

BOF开发参考: bof_helper / Visual-Studio-BOF-template

服务器设置

  • 禁ping: /etc/sysctl.confnet.ipv4.icmp_echo_ignore_all=1
  • CDN: 免费CF账号

Beacon修改

特征修改核心:

1. 修改Key: OriginKey → CustomizeKey
2. Profile:
   - strrep "beacon.x64.dll" "" (修改关键字)
   - set magic_mz_x86 "1234"; set magic_mz_x64 "5678" (修改MZ头)
   - set magic_pe "BB" (修改PE头)
   - set cleanup "true" (清除原始Beacon DLL)
   - set obfuscate "true" (去掉DLL头部)
   - set userwx "false" (不给可写)
3. SleepMask: 修改key和异或逻辑
   - my_mask_section中修改key = "cf81d743beef8422"
   - 修改MSSE pipe特征
4. 替代Beacon: [geacon_plus](https://github.com/Z3ratu1/geacon_plus) / [beacon-rust](https://github.com/b1tg/cobaltstrike-beacon-rust) / [Beacon.dll](https://github.com/NoOne-hub/Beacon.dll)(简单逆向) / [Beacon_Source](https://github.com/kyxiaxiang/Beacon_Source)

Profile工具: Burp2Malleable / C2concealer / GraphStrike / goMalleable / pyMalleableC2 / JustC2file

BeaconEye检测特征: 6A 00

8.2 流量转发工具二次开发

修改方法: | 方向 | 具体操作 | |------|---------| | 修改UA头 | UA参考 / User-Agent Switcher and Manager插件 | | 配置文件自删除 | 硬编码配置到main(XOR加密ip/port) / 配置后os.Remove(cfgFile) | | 远程加载配置 | - | | TLS指纹 | burp-awesome-tls / frp pkg/util/net/tls.go | | 域前置 | pkg/util/net/websocket.go + CDN配置回源HTTP | | 外联小众协议 | QUIC: transport.protocol = "quic" | | Protobuf插件 | frp protobuf支持 | | 自定义加解密 | ChaCha20 / XOR / 复杂加密给配置文件认证+流量包简单加密(不然卡) | | 去硬编码 | salt/json数据 → 可能崩溃需动调 / 认证部分指纹(models/msg/msg.go) / FrpWebsocketPath = "/~!frp" | | 编译混淆加壳 | UPX / garble / go-strip | | DLL加载 | - | | 签名伪造 | Sign-Sacker |

框架结构学习方法(以fscan为例):

common → 数据解析/结构体/变量存储
plugins → 插件(理解项目结构从写插件开始)
webscan → web扫描(框架指纹识别/调度流程)
关键函数: 正看框架逻辑(改框架) → 打断点倒看调用(改插件)
动态调试 + 加解密加log输出

8.3 哥斯拉去特征

自定义流量加密: - 去除MD5校验: core/ApplicationConfig.java - 去掉HTTP头特征 - 修改key取值为后16位: ShellEntity.getSecretKeyX + 加密类.generate

自定义命令执行: - 修改execCommand: 复制cmd到临时目录执行并删除 - 修改默认变量名 - 重新编译后替换payload.dll - 修改ShellExecCommandPanel默认命令

WebShell去特征: - 修改反射Load方法名和GetMethod过特征免杀(Java/C#一样) - 其他变量随意修改 - 根据GenerateShellShellLoder的填充方式修改template/base64.bin - 修改shell.aspx去掉头尾 - ILspy反编译payload.dll导出源码修改文件名类名

插件开发: - 修改打包好的jar替换原始lib中的jar - Godzilla API - 包名: shells.plugins.* + PluginnAnnotation注解 + Plugin接口 - Swing UI设计 - 菜单注册: MainActivity.registerJMenu/registerPluginJMenuItem/registerShellViewJMenuItem(必须在static代码块中)

需要的工具: JETBRAIN IDEA / RIDER / ILspy / sqlitestudio / Visual Studio 2022