免杀生成器之Charlotte解析

免杀生成器之Charlotte解析

一、工具介绍

charlotte是一款Python编写的自动化免杀工具,用来生成免杀的dll文件,在线查杀是1/26报毒,总的来说免杀效果还可以
免杀生成器之Charlotte解析
下载地址:https://github.com/9emin1/charlotte,需要mingw-w64环境,直接使用以下命令安装即可

apt-get install mingw-w64*

二、代码分析

利用动态导出以及xor编码实现了对杀软的绕过。通过python操作cpp,然后使用mingw去编译为dll文件,最后删除生成的cpp文件。
注释python代码第195行,即可看到生成的代码

BOOL (WINAPI * pVirtualProtect)(LPVOID lpAddress, SIZE_T dwSize, DWORD flNewProtect, PDWORD lpflOldProtect);
XOR((char *) virtual_alloc, va_len, va_key, sizeof(va_key));
pVirtualAlloc = GetProcAddress(GetModuleHandle("kernel32.dll"), virtual_alloc);
rvba = pVirtualProtect(exec_mem, calc_len, PAGE_EXECUTE_READ, &oldprotect);

具体是由python实现,获取随机字符串
免杀生成器之Charlotte解析

xor异或函数
免杀生成器之Charlotte解析

替换,最后生成dll
免杀生成器之Charlotte解析

三、测试效果

使用CS生成raw格式的shellcode
免杀生成器之Charlotte解析
使用python脚本生成dll,获取dll和key
免杀生成器之Charlotte解析

总的来说效果还可以,可以直接过掉360全家桶和火绒,利用白名单rundll32加载
免杀生成器之Charlotte解析

免杀生成器之Charlotte解析

上一篇:深入解析多态和方法调用在JVM中的实现


下一篇:ffmpeg交叉