EMLOG Pro 2.6.11远程代码执行CVE-2026-41517
EMLOG Pro(简称 emlog)是一款基于 PHP+MySQL 的轻量级开源博客/CMS 建站系统,产品主打 “轻量高效、简单易用、AI 友好”。
一、基本情况
EMLOG Pro 2.6.11 版本发布于2026年04月13日,该版本优化了台用户信息读取改为用户服务调用、 调整页面模板结构语义化等细节。

EMLOG Pro适合个人博客、自媒体、小型资讯与资源站搭建,本站基于当前最新版本EMLOG Pro 2.6.13(2026-05-07)并实时更新。
栋科技漏洞库关注到EMLOG Pro在 2.6.11 及之前版本通过恶意插件上传实现远程代码执行漏洞CVE-2026-41517,CVSS 4.0评分9.4。
二、漏洞分析
CVE-2026-41517是EMLOG Pro受影响版本中的漏洞,漏洞源于插件上传功能存在安全缺陷,攻击者可直接上传并执行任意PHP代码。
具体来说,该漏洞源于EMLOG Pro受影响版本中admin/plugin.php 的插件配置页面加载和设置保存逻辑未对$plugin参数进行充分验证,
直接将用户传入插件名称拼接到文件路径用于require_once包含,通过构造包含路径遍历或恶意文件插件名包含任意PHP文件并执行。
这是一个无门槛上传木马,攻击者可直接获取服务器权限严重漏洞,潜在风险如服务器被完全控制(权限沦陷)、可植入持久化后门。
(一)漏洞代码位置
/admin/plugin.php(插件管理)
/include/lib/common.php(公共函数库)
(二)漏洞核心
插件上传系统未对文件内容做有效安全校验,并且直接执行上传的 PHP 代码。
// Line 163: Direct extraction without validation
$ret = emUnZip($zipfile['tmp_name'], '../content/plugins/', 'plugin');
// emUnZip function: No content scanning
if (true === @$zip->extractTo($path)) { // Blind extraction
$zip->close();
return 0;
}
// Line 84: Direct plugin execution
require_once "../content/plugins/$plugin/{$plugin}_setting.php";
攻击者可上传包含恶意 PHP 代码的 ZIP 压缩包,代码将以服务器最高权限被执行。
三、POC概念验证
(一)攻击向量
管理员在 /admin/plugin.php?action=upload_zip 上传插件
(二)恶意 ZIP 结构
backdoor-plugin/
└── backdoor-plugin.php
(三)修复建议
1、针对 /include/lib/common.php 中的 emUnZip 函数:
管理员已设置登录后刷新可查看2、针对 /admin/plugin.php 上传处理程序:
管理员已设置登录后刷新可查看(三)修复建议
修复版本在 admin/plugin.php 的三处关键操作点(加载配置页面、保存设置、保存设置新版本)前调用 checkPlugin() 函数进行验证,
并增强 checkPlugin() 函数增加类型检查和正则校验,防止任意文件包含。
四、影响范围
EMLOG Pro ≤ 2.6.11
五、修复建议
EMLOG Pro ≥ 2.6.12
六、参考链接
管理员已设置登录后刷新可查看