首页 > 其他分享 >20222424 2024-2025-1 《网络与系统攻防技术》实验三实验报告

20222424 2024-2025-1 《网络与系统攻防技术》实验三实验报告

时间:2024-10-30 20:59:51浏览次数:5  
标签:免杀 恶意代码 扫描 如下 2024 2025 20222424 使用 veil

20222424 2024-2025-1 《网络与系统攻防技术》实验三实验报告

1.实验内容

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

  • 正确使用msf编码器,使用msfvenom生成如jar之类的其他文件
  • veil,加壳工具
  • 使用C + shellcode编程

(2)通过组合应用各种技术实现恶意代码免杀
如果成功实现了免杀的,简单语言描述原理,不要截图。与杀软共生的结果验证要截图。
(3)用另一电脑实测,在杀软开启的情况下,可运行并回连成功,注明电脑的杀软名称与版本

2.实验过程

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

2.1.1使用msf编码器,对后门进行多次编码

查看虚机ip:

无编码:

扫描结果如下:(使用virscan和virustotal,下同)


大部分都可以查杀出来。
1次编码:

扫描结果如下:


24次编码:

扫描结果如下:


可以看出多次编码对免杀没有帮助。

2.1.2使用msf编码器,生成不同文件格式

文件格式jar:

扫描结果如下:


文件格式apk:

扫描结果如下:


文件格式php:

扫描结果如下:


文件格式py:

扫描结果如下:


通过不同格式分别测试,总体来说对于免杀有一定帮助,其中py、php、apk格式的效果较好,有相当一部分没有查杀到。

2.1.3使用veil工具

(此处直接开始使用安装好的veil,安装过程详见问题及解决方案)
查看虚机ip:

进入veil:

选择使用evasion模块:

输入list查看可以使用的payload:


选择一个可用的playload,首先尝试c/meterpreter/rev_tcp.py:

设置反弹连接IP及端口:

查看设置情况:

输入generate生成文件,然后输入你想要playload的名字:

扫描结果如下:


然后尝试一下go/meterpreter/rev_tcp.py:

设置反弹连接IP及端口:

查看设置情况:

输入generate生成文件,然后输入你想要playload的名字:


扫描结果如下:


再尝试一下python/meterpreter/rev_tcp.py:

设置反弹连接IP及端口:

查看设置情况:

输入generate生成文件,然后输入你想要playload的名字:


扫描结果如下:


最后尝试一下ruby/meterpreter/rev_tcp:

设置反弹连接IP及端口:

查看设置情况:

输入generate生成文件,然后输入你想要playload的名字:


扫描结果如下:

2.1.4使用C + shellcode编程

查看虚机ip:

首先,用msf生成一段shellcode,输入命令:

使用vim编辑器新建20222424.c文件并编写保存:


编译器在64位系统上构建32位应用程序,生成exe文件:

扫描结果如下:

2.1.5使用加壳工具(使用上一步生成的20222424.exe文件)

首先尝试压缩壳upx:

扫描结果如下:


然后尝试加密壳Hyperion,将exe文件复制到工作目录:

使用hyperion.exe加密:

扫描结果如下:

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

免杀原理:msfvenom生成shellcode+异或操作+upx压缩壳

使用金山毒霸查杀:


用另一电脑实测,在杀软开启的情况下,可运行并回连成功:

杀软:

3.问题及解决方案

  • 问题1:安装veil的过程时遇到的问题及解决方案
    安装veil:

    安装后输入命令veil,还会继续安装,过程中会出现如下报错:

    不能解析主机名,因为veil默认主机名为kali,于是我又把主机名改为了kali,安装过程中出现安装Python的界面:

    连续点击next后会卡死,强制退出后再次执行veil :

    按照提示执行命令/usr/share/veil/config/setup.sh--force --silent后,再次开始安装,又报了一个错误:

    再按照提示执行命令apt-get install wine32:i386:

    又报错了,到这不知该怎么办了,互联网上查找资料后,解决步骤如下:
    apt-get install libncurses5*

    apt-get install libavutil55*

    apt-get install gcc-mingw-w64*

    dpkg --add-architecture i386
    apt-get update

    apt-get install wine32

    最后两步可能需要等待的时间比较长,此时再次执行/usr/share/veil/config/setup.sh--force --silent,即可安装成功!
  • 问题2:使用veil工具时未能生成exe文件

  • 问题2解决方案:

4.学习感悟、思考等

4.1 问题回答

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

  • 特征码扫描:杀软通过比对文件中的代码与已知恶意软件数据库中的特征码来检测威胁。这种方法依赖于不断更新的病毒数据库。

  • 启发式分析:通过分析文件的结构、行为或代码模式预测潜在的恶意活动,借此检测未知威胁。

  • 行为监控:实时监控程序行为,如文件操作、网络通信或系统调用,识别异常活动。

  • 云查杀:利用云端数据库进行检测,通过互联网快速更新和分析庞大数据库来识别威胁。

  • 沙箱技术:在虚拟环境中运行可疑文件,观测其行为以判断是否恶意。

(2)免杀是做什么?

  • 免杀指的是通过各种技术手段,使恶意代码躲避杀毒软件的检测。目的是使恶意软件在目标系统上成功执行,不被安全工具识别和阻止。这通常是恶意软件开发者的工作。

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

  • 代码混淆:通过对恶意代码的结构进行修改,使其特征不易被识别。例如,插入无用代码、重命名变量和函数等。

  • 加壳和编码:使用加壳工具通过编码和加密技术改变恶意软件的二进制结构,使其原始特征不可识别。

  • 多态技术:每一次生成恶意代码的变种,自动修改代码结构和特征。

4.2实验感悟

在这次实验中,我深入探索了如何使用多种技术来实现恶意代码的免杀,在对不同恶意代码进行检测后,直观地看到了不同技术对于免杀的效果,并对这些技术有了更深入的理解和实践。
在实验过程中,我发现免杀技术的核心在于避开杀毒软件的特征码检测和行为分析。通过使用多层次的加密与混淆手段,例如编码器转换格式和自定义shellcode,能够有效提高免杀效果。同时,使用Veil等工具提供的加壳技术,进一步对恶意代码进行伪装,从而提升其对杀软检测的抵抗力。
这次实验不仅提高了我对攻击技术的理解,还让我对如何增强防御有了反思和更深刻的认识。网络安全攻防更是一个两面技术不断变化进步的过程。

标签:免杀,恶意代码,扫描,如下,2024,2025,20222424,使用,veil
From: https://www.cnblogs.com/moxst/p/18486557

相关文章

  • 2024-SHCTF Web WP
    [Week1]1zflask按照提示访问robots.txt,访问/s3recttt得到一个python文件在api路由传参,直接执行命令得到[email protected]('/api')defapi():cmd=request.args.get('SSHCTFF','ls/')result=os.popen(cmd).read()returnresult[Week1......
  • 软件著作权申请教程(超详细)(2024新版)软著申请
                  目录一、注册账号与实名登记二、材料准备三、申请步骤1.办理身份2.软件申请信息3.软件开发信息4.软件功能与特点5.填报完成一、注册账号与实名登记    首先我们需要在官网里面注册一个账号,并且完成实名认证,一般是注册【个人】......
  • 2024年网鼎杯青龙组 pwn
    pwn2开局泄露栈地址,又是栈溢出,直接栈转移拿下frompwnimport*fromLibcSearcherimportLibcSearcher#fromCrypto.Util.numberimportbytes_to_long,bytes_to_long#--------------------settingcontext---------------------context.clear(arch='amd64',os='linux&#......
  • 2024最新Instagram养号攻略!海外社媒起号码住了
    Instagram至今仍然是全球顶级的流量平合,不仅在国外是各大网红明星必备app,国内下载量也居高不下,但从2018年下半年开始加大了对新账号的监控和权限限制。新注册的账号会受到诸多限制,稍不慎就会进入安全模式或者被封,所以如果你正打算为企业或个人运营Instagram账号,做好养号成了必......
  • 海外联盟营销入门:2024最新指南
    在联盟营销(AffiliateMarketing)过程中,人们往往会在项目所需的电商、博客、社媒等平台上推广产品或服务以获得佣金收入,有数据显示联盟营销为数字媒体行业带来了15%的增长收入。然而,在联盟营销带来利润丰厚的同时,他也存在一个难题:有效的多账户管理。如果没有合适的工具,联盟营销很......
  • 2024-10-30 学习人工智能的Day18
    Python包和模块当使用Python编程时,包(Packages)和模块(Modules)是两个关键的概念,它们有助于组织、管理和复用代码。1.模块(Modules)1.1什么是模块一个.py文件就是一个模块模块是含有一系列数据,函数,类等的程序作用把相关功能的函数等放在一起有利于管理,有利于多人合作开......
  • 2024做题计划
    难度范围:[绿-紫]CSP-S2024T3染色首先动态规划显然,如何呢?不难设\(f_{i}\)表示对于前\(i\)个数来说的话,以\(i\)为结尾的答案的最大值,为啥是答案,因为这样可以直接转移\(f_i=\max_{1\leqj<i}^{f_j+calc(j+1,i)+[a_j=a_i]\timesa_i}\)当然还有\(f_i=\max{f_{i-1},f_i}\)......
  • 2024.10.30 2022广西省赛
    Solved:11/12Penalty:1059Rank:1/146(N+2)Dirt:48%ProblemABCDEFGHIJKL题数罚时Time1122141271076128398415916111059dirt31132A,B,G,H,L:签到F直接扔一个带修莫队板子上去就过了。虽然1000的值域应该有点说法。。。#inc......
  • NOIP2024 模拟赛19
    A拆位算贡献,枚举每一个位置,与操作两者都是\(1\),异或操作相反,或操作有一个是\(1\)即可。B观察到条件\(a_1\lek\)证明是必然有答案的,答案这样构成:从\(1\)走到任意点\(j\),然后\(j\)挖空,然后推到\(i\),记\(f_i\)为从\(1\)走到\(i\)的最小花费,答案\(i\)即为\(f_......
  • 2024牛客暑期多校训练营10 - VP记录
    A.SurrendertoMyWill直接判断当前是否不可翻盘。点击查看代码#include<cstdio>usingnamespacestd;intmain(){ charstr[10];scanf("%s",str); inty=0,n=0; for(inti=0;i<5;i++) { if(str[i]=='Y')y++; if(str[i]=='N')n++; ......