漏洞揭秘 | Emlog_Pro任意文件上传漏洞分析

图片[1]-漏洞揭秘 | Emlog_Pro任意文件上传漏洞分析-山海云端论坛

前言:

在网络安全领域,代码审计是一项重要的工作,通过审计源代码,发现并修复潜在的安全漏洞,是确保系统安全的重要步骤之一。本文将深入分析 Emlog_Pro 存在的两个后台任意文件上传漏洞,以揭示其中的安全隐患并提供解决方案,旨在帮助读者更好地理解代码审计的流程和技术。

环境配置:

受影响版本:Emlog Pro 2.2.0

漏洞存在位置:

  • /admin/plugin.php 存在任意文件上传漏洞
  • /content/templates/ 存在任意文件上传漏洞

代码审计:

CNVD-2023-74535:

根据 CNVD 报告,/admin/plugin.php 存在任意文件上传漏洞,攻击者可利用该漏洞上传恶意文件,并执行任意代码。首先,我们分析了页面结构,发现了上传功能。

图片[2]-漏洞揭秘 | Emlog_Pro任意文件上传漏洞分析-山海云端论坛

我们定位到了上传函数 upload_zip,该函数首先检查上传文件是否为 .zip 格式,然后将其解压至指定目录。我们尝试上传一个包含 PHPinfo 的文件,但上传失败。

图片[3]-漏洞揭秘 | Emlog_Pro任意文件上传漏洞分析-山海云端论坛

通过调试,我们发现上传失败的原因是路径问题。进一步定位到 emUnZip 函数,我们发现需要获取路径参数 $dir,但由于压缩包中只包含文件而非文件夹,导致了错误。

重新构建压缩包结构后,我们成功上传了恶意文件,并通过访问上传的文件地址执行了任意代码。

CNVD-2023-74536:

该漏洞位于 /content/templates/ 目录,同样是任意文件上传漏洞,利用了相同的上传函数 upload_zip

图片[4]-漏洞揭秘 | Emlog_Pro任意文件上传漏洞分析-山海云端论坛

总结:

通过对两个 Emlog_Pro 后台任意文件上传漏洞的分析,我们深入了解了漏洞产生的原因,并提供了解决方案。代码审计是确保系统安全的关键步骤之一,我们希望本文能够帮助读者加深对代码审计流程和技术的理解,提高系统安全性。

Emlog官网下载存在漏洞版本的源码:

 https://github.com/emlog/emlog/releases
© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容