『PHP代码审计』SemCms2.0存在文件上传漏洞
发布日期:2021-06-28 20:00:31 浏览次数:2 分类:技术文章

本文共 762 字,大约阅读时间需要 2 分钟。

文章目录

前言

作者:Ho1aAs

博客:https://blog.csdn.net/xxy605

一、漏洞演示

访问后台的上传接口

xxxx_admin/SEMCMS_upload.php

新建文件aaaaa.php

上传

文件成功上传

二、漏洞分析

查看SEMCMS_upload.php源码,上传文件用到SEMCMS_Upfile.php

文件上传
自定义文件名: 注意:此项可为空,只能输入英文跟数字
选择上传文件:
"> "> ">

接着查看SEMCMS_Upfile.php

1) && ($_FILES["file"]["size"] < 30240000)) {

这里对文件上传的过滤仅仅只是采取验证MIME的方式,这非常不安全

抓包看看刚刚上传的php文件

上传文件时的MIME设置成了application/octex-stream,刚好过滤了判定,将其视为了rar压缩文件从而绕过

三、利用

上传任意文件,将MIME修改成白名单内的即可

四、修复

建议加强验证、过滤,不单单采用验证MIME,容易伪造

五、总结

由于以下问题导致该漏洞的产生:

  • 使用MIME松散判断文件类型
  • 只有一层验证文件类型的操作,效果弱

转载地址:https://blog.csdn.net/Xxy605/article/details/117753506 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:『Ruby』模块(Module)
下一篇:『Ruby』块(Block)

发表评论

最新留言

路过,博主的博客真漂亮。。
[***.116.15.85]2024年04月12日 14时24分53秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章