有段时间对免杀十分感兴趣,想了想好久没在公众号发东西了,一直以来都是写语雀(这可真是好东西啊),决定把以前学习别人项目的和自己试着做的免杀(已失效)的记录发出来凑一凑文章
github:https://github.com/9emin1/charlotte
确认了template.cpp是模板文件,但是不全,其中有一部分都是由python生成后,插入到其中
在.py文件中可以看到,利用replace替换字符串的方式去实现随机字符串的生成
它会将敏感的字符串都进行xor混淆,当然也包括shellcode 要注意的是,xor为了避免可逆或者固定特征,采用的也是随机字符串
通过对比,可以看到 不单单是字符,函数也进行了随机 同时,使用了getprocaddress的方式隐藏了导入表
在python中,会将字符串进行xor后,替换到模板中
然后在生成的文件中,开头可以看到,这一串就是xor混淆后的CreateThread等字符
然后他会放到需要用的地方进行调用
类似以下代码(python版)
项目涉及到的免杀方法