20145304 Exp3 免杀原理与实践

基础问题回答

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

  • 检验特征码,包含特征码的代码会被杀软认为是恶意代码,例如一些常用恶意代码加壳后就有一个固定的代码会被认为是特征码。
  • 启发式恶意代码检测,做了不该做的事情,则有可能被认为是恶意软件。
  • 基于行为的恶意软件检测,根据软件的行为来判断该软件是否为恶意软件。

(2)免杀是做什么?

  • 使恶意代码不被杀软检测到。

(3)免杀的基本方法有哪些?

  • 改变特征码。
  • 改变行为。

实践总结与体会

这次的实验使我认识到,知识越多认识越深,上星期对杀软和防火墙的信赖倒塌了一半,我们按照一定的方法步骤操作一些现成的软件便可以制造出杀软和防火墙都无法识别的恶意代码,制造病毒与杀毒相互促进、共同发展。及时更新病毒库很有必要。
此次实验中恶意代码程序都是我们自己运行的,但现实生活中,很多恶意代码都可自运行,新型病毒查杀较为困难,需要一定的时间,所以,我们应从根源避免自己遭受恶意代码的攻击,养成良好的上网习惯,及时更新病毒库。

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

感觉离实战还有很大的距离,首先,我们的病毒需要人为的启动,而用户是不会轻易帮助你进行这一步的,所以我们的病毒中需要一些自启动的代码,其次,我们的病毒没有传播性,只能单一的感染某个特定的主机。目前我们所做到的只是攻击者与被攻击者之间相互配合的恶意代码,如果要做到病毒的自启动,自我复制等功能,需在代码上加以完善,这样有被杀软通过行为查杀的风险,所以需要做的还有很多。

实践过程记录

理解免杀技术原理

免杀技术是能使病毒木马避免被免杀软件查杀的技术。做免杀,应了解杀毒软件是依据什么来判断代码是否为恶意代码,所谓“知己知彼,百战不殆”。恶意软件的检测可基于其特征码、基于其行为以及启发式检测。基于这些,我们可以通过加壳、编码器编码、用其他语言重写再编译来改变其特征码,也可使用反弹式连接、隧道或加密等技术来改变其行为,实现免杀。

正确使用msf编码器,veil-evasion,自己利用shellcode编程等免杀工具或技巧

使用msf编码器

  • 使用msf编码器生成一个后门。

  • 放到http://www.virscan.org检测,结果是39款杀毒软件中有21款杀毒软件认为其为恶意代码。

  • 编码1次。

  • 编码15次。

  • 对比结果,39款杀毒软件中有20款杀毒软件认为其为恶意代码,结果证明多编码几次对baidusd这款杀毒软件是有用的。

veil-evasion

  • 打开veil-evasion软件,按提示一步步操作。

  • 结果显示39款软件中有10款认为其为恶意代码,

C语言调用Shellcode

  • 在Kali下生成一个C语言格式的shellcode数组,回连的IP为Kali的IP,端口自定。

  • 用VC6.0照模板生成一个可运行文件。

  • Kali下进入MSF监听。
  • 在win下运行上诉生成的文件,查看结果。

  • 360安全卫士提示有木马运行。

  • 在http://www.virscan.org检测,显示安全,该网站很多病毒库许久未更新,结果不是很可靠。

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

逆序修改shellcode并进行实测

  • 参考高其同学的博客,对shellcode代码进行逆序处理。
  • 实测结果如图

电脑杀毒软件为:360安全卫士 版本为11 备用木马库为:2017-03-23

20145304 Exp3 免杀原理与实践的更多相关文章

  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. XTU 1267 - Highway - [树的直径][2017湘潭邀请赛H题(江苏省赛)]

    这道题可能有毒……总之一会儿能过一会儿不能过的,搞的我很心烦…… 依然是上次2017江苏省赛的题目,之前期末考试结束了之后有想补一下这道题,当时比较懵逼不知道怎么做……看了题解也不是很懂……就只好放弃 ...

  2. javascript 字符串去空格

    1.正则去空格 a.去掉字符串中所有空格 " hello world ".replace(/\s+/g,"");//helloworld b.去掉字符串左边空格 ...

  3. 在排序模型方面,点评搜索也经历了业界比较普遍的迭代过程:从早期的线性模型LR,到引入自动二阶交叉特征的FM和FFM,到非线性树模型GBDT和GBDT+LR,到最近全面迁移至大规模深度学习排序模型。

    https://mp.weixin.qq.com/s/wjgoH6-eJQDL1KUQD3aQUQ 大众点评搜索基于知识图谱的深度学习排序实践 原创: 非易 祝升 仲远 美团技术团队 前天    

  4. bzip2 zip 压缩后体积比 0.8:1

    1. 对.bz2 后缀文件 跳过不处理 2.逐行同字段的json文件,压缩后大小为原文件的12.81% 测试文件近似认为为逐行json文本数据,没有进行多文件重复测试,没有统计时间: {"u ...

  5. flask中的url_for

    转自:https://blog.csdn.net/dengfan666/article/details/78320188 1.URL反转:根据视图函数名称得到当前所指向的url 2.url_for() ...

  6. $("this") $(this) 区别

    1.$("this")是使用标签选择器,查找名为this的标签2.$(this)取出当前对象并转换为jQuery对象3.$(this)是jquery对象,能调用jquery的方法, ...

  7. 怎么设置输入的EditText字母自己主动大写

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/t80t90s/article/details/25048917 复于: 2013-09-06 09: ...

  8. ListView and gridview常用属性

    刷新:notifyDataSetChanged 1.gridview常用属性 GridView的一些特殊属性:   1.Android:numColumns=”auto_fit”   //GridVi ...

  9. SparkSQL UDF两种注册方式:udf() 和 register()

    调用sqlContext.udf.register() 此时注册的方法 只能在sql()中可见,对DataFrame API不可见 用法:sqlContext.udf.register("m ...

  10. [vue]vue条件渲染v-if(template)和自定义指令directives

    条件渲染: v-if/template <div id="app"> <h1>v-show: display: none</h1> <di ...