CVE-2025-8088复现学习

admin 2026-01-26 01:58:24 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 本文复现了WinRAR7.12及以下版本的路径遍历漏洞CVE-2025-8088。漏洞利用NTFS交替数据流隐藏载荷并结合路径遍历实现任意文件写入。文章包含版本检测脚本、Python复现原理及攻击链分析,建议升级至7.13版本,并提供了通过Zone.Identifier模拟真实场景的改进方法,旨在提升防御能力。 综合评分: 90 文章分类: 漏洞分析,漏洞POC


cover_image

CVE-2025-8088复现学习

原创

MicroPest MicroPest

MicroPest

2026年1月25日 18:21 安徽

CVE-2025-8088(CVSS 8.4) 是一个新的高风险路径遍历漏洞 [CWE-35] 在 WinRAR 7.12 及以下版本和相关组件包括 UnRAR.dll 中存在漏洞。该漏洞允许未经授权的攻击者将恶意文件复制到敏感目录,包括 Windows 启动文件夹,从而可以执行这些文件。

这又是一个关于winrar漏洞的CVE,我记得在前面7月份复现学习了一个《CVE-2025-6218 Poc复现及1Day研究》,也是winrar的,针对的版本是7.11,而这个8088针对的是7.12。半年时间连续发现2个遍历漏洞,winrar也是备受黑客的青睐。

一、检测winrar版本

先上一段ps1的代码,

Detects exposure to CVE-2025-8088 based on WinRAR.

Vulnerable: WinRAR < 7.13   (Patched: 7.13+)

Set-StrictMode -Version Latest

$ErrorActionPreference = ‘Stop’

function info { param([string]$m) Write-Host “[i] $m” }

function good { param([string]$m) Write-Host “[+] $m” -ForegroundColor Green }

function bad  { param([string]$m) Write-Host “[-] $m” -ForegroundColor Red }

$fixedVersion = [version]’7.13.0′

Common install locations

$candidates = @(

  “$env:ProgramFiles\WinRAR\WinRAR.exe”,

  “${env:ProgramFiles(x86)}\WinRAR\WinRAR.exe”

) | Where-Object { $_ -and (Test-Path $_) }

if (-not $candidates) {

  $cmd = Get-Command ‘WinRAR.exe’ -ErrorAction SilentlyContinue

  if ($cmd) { $candidates = @($cmd.Source) }

}

if (-not $candidates) {

  info “WinRAR not found. Nothing to check.”

  return

}

$entries = foreach ($p in $candidates) {

  $v = (Get-Command $p).FileVersionInfo.ProductVersion

  [pscustomobject]@{ Path = $p; Version = $v; V = [version]$v }

}

$winrar = $entries | Sort-Object V -Descending | Select-Object -First 1

info (“WinRAR path: ” + $winrar.Path)

info (“WinRAR version: ” + $winrar.Version)

if ($winrar.V -lt $fixedVersion) {

  bad  “CVE-2025-8088 IS exploitable (WinRAR < 7.13).”

} else {

  good “CVE-2025-8088 is NOT exploitable (WinRAR >= 7.13).”

}

检测结果如图:

说明我们的版本是7.12,以及winrar所在的路径位置;或者查看winrar版本,

二、复现过程

1、Exploit video:

已关注

关注

重播 分享 赞

关闭

观看更多

更多

退出全屏

切换到竖屏全屏退出全屏

MicroPest已关注

分享视频

,时长00:40

0/0

00:00/00:40

切换到横屏模式

继续播放

[ ]

进度条,百分之0

播放

00:00

/

00:40

00:40

倍速

全屏

倍速播放中

0.5倍 0.75倍 1.0倍 1.5倍 2.0倍

超清 流畅

 您的浏览器不支持 video 标签

继续观看

CVE-2025-8088复现学习

观看更多

转载

,

CVE-2025-8088复现学习

MicroPest已关注

分享点赞在看

已同步到看一看写下你的评论

视频详情

2、PoC-Exploit:

3、poc下载

https://github.com/sxyrxyy/CVE-2025-8088-WinRAR-Proof-of-Concept-PoC-Exploit-?tab=readme-ov-file

4、举例

(1)构建命令,python poc.py –decoy clib.txt –payload run_decode.bat –drop “C:\Users\Administrator\Desktop\CVE-2025-8088-WinRAR-PoC-Exploit” –rar “C:\Program Files\WinRAR\rar.exe”

(2)参数含义:

该命令的实际效果

此命令将创建一个恶意RAR文件,其攻击流程如下:

  1. 读取文件
  • 诱饵:clib.txt(需存在于当前目录)
  • 载荷:run_decode.bat(需存在于当前目录)
  1. NTFS流附加
  • run_decode.bat作为交替数据流(ADS)附加到clib.txt
  • 流名称初始化为128字节的占位符(如XXXXXXXX...
  1. 生成基础RAR
  • 调用WinRAR生成包含clib.txt及其ADS流的普通RAR5文件
  1. 二进制补丁
  • 在RAR头部搜索占位符字符串
  • 替换为路径遍历字符串..\..\..\...(16层)\Desktop\CVE-2025-8088...\run_decode.bat
  1. CRC32修复
  • 重新计算所有RAR块头的CRC32校验和,确保文件格式合法
  1. 输出文件
  • 默认生成:cve-2025-8088-sxy-poc.rar
  • 中间文件:cve-2025-8088-sxy-poc.base.rar(生成后自动删除)

攻击后果

当受害者使用存在漏洞的WinRAR版本解压时:

  • 表面上看:只解压出clib.txt

  • 实际上:run_decode.bat会被释放到:

    C:\Users\Administrator\Desktop\CVE-2025-8088-WinRAR-PoC-Exploit\run_decode.bat

(3)生成攻击rar

通过7z l -sns来检查生成的rar,

这里的载荷文件是run_decode.bat;

或者 NtfsStreamEditor 来查看,

直接出来了ADS中包含的启动载荷run_decode.bat的内容。

(4)互联网中公布的利用

我们再来看一个更为明显的载荷,hta启动

顺便借用个攻击链过程图,

可以看到通过“恶意邮件:附件–>CVE-2025-8088–>释放恶意HTA载荷文件–>连接下载服务器–>下载后续载荷文件–>连接C2服务器”。

5、winrar解压缩的表现特征

这里借用网上的恶意文件。用winrar解压,

这时,报错。将这段内容复制出来,粘贴到文本中,再看下,

完整的就是不一样了,出现了“Bang_Luong_Thang_11_2025.csv:…………….\Users\sosona\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\Update.exe”

6、改造poc.py

以下是修改 poc.py 的代码建议,它会在生成 RAR 文件后,为其附加一个模拟的 Zone.Identifier ADS 流。

修改说明:

(1). 新增 attach_motw 函数,用于创建 Zone.Identifier 流。

(2). 在 main 函数最后调用该函数,为输出的 RAR 文件添加 ADS。

defattach_motw(path: Path):

    “””Attach Zone.Identifier to mimic a downloaded file (ZoneId=3).”””

    motw = textwrap.dedent(“””\

        [ZoneTransfer]

        ZoneId=3

        HostUrl=about:internet

        “””)

    try:

        withopen(f”{path}:Zone.Identifier”, “w”) as f:

            f.write(motw)

        print(f”[+] Attached Zone.Identifier (Mark of the Web) to {path}”)

    exceptExceptionas e:

        print(f”[-] Failed to attach MOTW: {e}”)

应用上述修改后,再次运行 PoC 脚本生成的 RAR 文件将会在文件系统层面拥有一个 Zone.Identifier ADS 流,这有助于模拟真实的攻击场景(即通过网络下载的恶意文件)。

如果想验证修改后的效果,可以在运行脚本后使用 PowerShell 命令 Get-Item -Path cve-2025-8088-sxy-poc.rar -Stream * 查看是否成功添加了 ADS 流。

三、总结

1、CVE-2025-8088针对是7.13以下版本的winrar,危害性很大,各位网友赶快升级到最新版本7.13;

2、通过上面的“检测与复现”,了解该漏洞的构造、传播过程以及ADS 将恶意二进制文件隐藏起来,使其无法被随意检查和一些传统的安全工具发现,从而延迟了检测。同时,我们分享了两种检测ADS流的方法,并改造poc.py使其更加具备生成的文件Zone.Identifier ADS 流;

3、我们本文为漏洞复现,内容非常详细,网上还未看到相关文章,复现分析是为了更好地防范攻击,一定不要用于危害活动,否则跟本人无关。


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:MicroPest MicroPest MicroPest《CVE-2025-8088复现学习》

评论:0   参与:  0