关于SigFlipSigFlip是一款可以篡改PE文件(exe、dll、sys等)身份验证码签名的工具。换句话说,我们可以使用SigFlip将数据(例如Shellcode)嵌入到PE文件中,修改PE文件的校验和或哈希,而不破坏文件签名、完整性检查或PE文件功能。.SigInject组件可以将Shellcode注入到PE文件的[WIN_CERTIFICATE]证书表中,输出加密密钥供BOF/C/C#加载器(SigLoader)使用。SigInject会保存对PE文件的修改操作,并保持其签名和证书有效性不变。SigLoader是一个基本加载器,它将修改后的PE文件路径和SigInject创建的解密密钥作为参数,然后提取和解密嵌入的shellcode以用于选择shellcode注入。SigFlip将检查PE哈希是否已成功更改,然后退出以绕过终端对此类行为的检查。SigFlip可用于持续感染、横向渗透、命令/代码执行等场景。注意:igFlip、SigInject和SigLoader将作为BOF脚本和.NET程序集提供。工具安装研究人员可以使用以下命令将项目源码克隆到本地:gitclonehttps://github.com/med0x2e/SigFlip.git工具build/compile本项目不提供预编译BOF,我们可以使用Mingw-w64来编译。如果是.NET,可以用VS或者csc.exe编译.NET项目(SigFlip、SigLoader);如果是BOF,请按照以下步骤操作:?i686-w64-mingw32-gcc-csigflip.c-osigflip.x86。o?x86_64-w64-mingw32-gcc-csigflip.c-osigflip.x64.o?x86_64-w64-mingw32-gcc-cSigLoader/sigloader.c-osigloader.x64.o?i686-w64-mingw32-gcc-cSigLoader/sigloader.c-osigloader.x86.o确保所有目标文件都存储在与sigflip.cna相同的目录中,然后在CobaltStrike中加载sigflip.cna。注意:预编译BOF使用的是mingw-64v8.0.0_3,如果使用mingw-64>=v9,可能会出现crash。CobaltStrike执行程序集:execute-assemblySigFlip.exe-heexecute-assemblySigLoader-hBOF:当我们在CobaltStrike中加载sigflip.cna时,会注册两个新命令,我们可以使用SigFlip和SigInjected。SigFlip:在不破坏签名或证书有效性的情况下修改PE文件哈希:SigFlip"
