前两天心血来潮尝试玩了下Webshell免杀, 二进制免杀。得出结论Webshell免杀有手就行 [手动狗头]。二进制刚刚初学,推荐 TideSec 的文章:
https://github.com/TideSec/BypassAntiVirus
我写的加载器是用 C 写的,简单学了下 XOR 加密、反沙箱和进程注入。实战用师弟的电脑可过 Avast [doge]
这里有个小问题:360在虚拟机里居然不检测我的马子,但是物理机一下载就秒杀。。。真是奇了怪了。盲猜 360 有虚拟机检测机制
怼了一会360。
发现一些些规律:
1、一层 XOR 的 shellcode 单单放在那里就会被杀
2、用 C 写了个 Socket 客户端,就单单创建 socket 套接都会被 360 杀
我写的马带反沙箱、异或值为 31。下载被360秒杀。师弟的就一个 异或,但异或值为 \x71,比我的异或值大很多。下载360识别为未知文件不杀,但执行被杀
猜测:
360可能检测了 cs shellcode 的某些特征值,病毒码我已经改成自定义的了应该不是问题。盲猜检测了 shellcode 长度以及 360 尝试过进行 XOR 解密。
对策:
现在先把 OSCP 干完。干完后回头再来看看免杀:
todo:
1、抓 360 的流量,尝试拦截其自动上传恶意程序,随便看看他是怎么发样本出去的,他认为的特征值有什么。就可以对症下药了
2、尝试自行修改 cs 的源码,生成的 shellcode 都是固定长度的不太好,尝试修改下。如果能做到内存中分段解密更妙了
结果玩免杀玩上头了,结果三天没摸 OSCP。。。白浪费了三天的 OSCP lab 时间。。。呜呜呜