首页 网络安全 正文

EMLOG Pro 2.6.2 emUnZip路径穿越CVE-2026-34607

摘要

栋科技漏洞库关注到 EMLOG Pro 在2.6.2及之前版本中存在的 emUnZip 路径穿越漏洞,追踪为CVE-2026-34607,CVSS 3.X评分8.8。

EMLOG Pro 是开源 PHP 网站搭建与博客系统,没有复杂架构和冗余功能,核心围绕文章发布、分类管理、评论互动、SEO做深做稳。

一、基本情况

EMLOG Pro  的后台操作逻辑直白,无需学习成本,上传安装即可用,伪静态、自定义链接、图片管理、用户权限等基础功能原生自带。

EMLOG Pro 2.6.2 emUnZip路径穿越CVE-2026-34607

EMLOG Pro 不用依赖大量插件即可满足日常建站,安全性持续迭代,运行稳定省心,适合不想折腾复杂系统、追求不折腾的建站用户。

栋科技漏洞库关注到 EMLOG Pro 在2.6.2及之前版本中存在的 emUnZip 路径穿越漏洞,追踪为CVE-2026-34607,CVSS 3.X评分8.8。

二、漏洞分析

CVE-2026-34607是 EMLOG Pro 在 2.6.2 及之前版本 emUnZip () 函数中的路径遍历漏洞(位于 include/lib/common.php 第 793 行)。

系统提取 ZIP 压缩包(插件 / 模板上传、备份导入)时,该函数直接调用 zip−>extractTo(path),未对 ZIP 内的文件名称进行安全过滤。

这导致已认证的管理员可上传构造好的 ZIP 包,其中包含带有 ../ 跳转符的文件,向服务器文件系统写入任意文件(包括 PHP 后门)。

通过写入 PHP WebShell,攻击者可以利用该漏洞实现远程代码执行(RCE)。

1、存在漏洞的代码(include/lib/common.php,第 793 行):

if (true === @$zip->extractTo($path)) {
    $zip->close();
    return 0;
}

2、解压前未对 ZIP 压缩包内的文件名进行校验。该函数仅针对.sql 文件检查文件扩展名,并未防范文件名中的路径遍历攻击。

3、攻击向量:

admin/plugin.php?action=upload_zip(插件上传)

admin/template.php?action=upload_zip(模板上传)

admin/data.php?action=import(备份导入)

4、修复建议

校验每个 ZIP 内的文件名,拒绝包含..的文件项:

for ($i = 0; $i < $zip->numFiles; $i++) {
    $name = $zip->getNameIndex($i);
    if (strpos($name, '..') !== false) {
        $zip->close();
        return -1;
    }
}

三、POC概念验证

1、创建一个包含路径遍历文件名的 PHP 文件的 ZIP 压缩包:

管理员已设置登录后刷新可查看

2、以已认证管理员身份通过插件上传接口上传。

3、解压后的文件 shell.php 被写入网站根目录,从而实现远程代码执行。

四、影响范围

EMLOG Pro <= 2.6.2

五、修复建议

EMLOG Pro >= 2.6.9

六、参考链接

管理员已设置登录后刷新可查看



扫描二维码,在手机上阅读
评论
更换验证码
友情链接