某开源网盘程序漏洞分析

admin 2025年4月8日11:11:36评论12 views字数 2808阅读9分21秒阅读模式

扫码加圈子

获内部资料

某开源网盘程序漏洞分析
某开源网盘程序漏洞分析

网络安全领域各种资源,EDUSRC证书站挖掘、红蓝攻防、渗透测试等优质文章,以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具,欢迎关注。加内部圈子,文末有彩蛋(知识星球优惠卷)。

原文链接:https://xz.aliyun.com/news/17552

作者:用户9528

某开源网盘程序漏洞分析
0x1 前言

PicHome是一款功能强大的开源网盘程序,它不仅能高效管理各类文件,还在图像和媒体文件管理方面表现出色。其亮点包括强大的文件共享功能和先进的AI辅助管理工具,为用户提供了便捷、智能的文件管理体验。

某开源网盘程序漏洞分析
0x2 漏洞列表

以下来源于 CVE:|CVE-2025-1743|A vulnerability, which was classified as critical, was found in zyx0814 Pichome 2.1.0. This affects an unknown part of the file /index.php?mod=textviewer. The manipulation of the argument src leads to path traversal. It is possible to initiate the attack remotely. The exploit has been disclosed to the public and may be used.|CVE-2024-24393|File Upload vulnerability index.php in Pichome v.1.1.01 allows a remote attacker to execute arbitrary code via crafted POST request.

某开源网盘程序漏洞分析
0x3 漏洞分析

CVE-2025-1743这是一个任意文件读取漏,首先查看index.php:

<?php
/*  
* @copyright   QiaoQiaoShiDai Internet Technology(Shanghai)Co.,Ltd * @license     https://www.oaooa.com/licenses/ * * @link        https://www.oaooa.com  
* @author      zyx([email protected]) */error_reporting(0);  
define('APPTYPEID'1);  
define('CURSCRIPT''dzz');  
define('DZZSCRIPT'basename(__FILE__));  
define('BASESCRIPT'basename(__FILE__));  
$routefile='data/cache/''route.php';  
$routes=require_once$routefile;  
if(isset($routes['pathinfo'])){  
if ((!isset($_SERVER['PATH_INFO']) ||!$_SERVER['PATH_INFO'])&&isset($_SERVER['REQUEST_URI'])) {  
$_SERVER['PATH_INFO'=strstr($_SERVER['REQUEST_URI'], '?'true);  
if ($_SERVER['PATH_INFO'===false) {  
$_SERVER['PATH_INFO'=$_SERVER['REQUEST_URI'];  
        }  
    }    $pathInfo=isset($_SERVER['PATH_INFO']) ?trim($_SERVER['PATH_INFO']):'';  

if (strpos($pathInfo'/'===0) {  
$pathInfo=substr($pathInfo1);  
    }  
$url=array_search($pathInfo,$routes);  
if($url){  
$queryString=parse_url($urlPHP_URL_QUERY);  

$hash=parse_url($urlPHP_URL_FRAGMENT);  

parse_str($queryString$_GET);  
if ($hash) {  
parse_str($hash$hashparam);  
        }  
$_GET['hashparams'=json_encode($hashparam);  

    }  

}  

require__DIR__.'/core/dzzstart.php';

包含了/core/dzzstart.php,跟进/core/dzzstart.php:

<?php
/*  
* @copyright   QiaoQiaoShiDai Internet Technology(Shanghai)Co.,Ltd * @license     https://www.oaooa.com/licenses/ * * @link        https://www.oaooa.com  
* @author      zyx([email protected]) */
require__DIR__.'/coreBase.php';  
$dzz=C::app();  
Hook::listen('dzz_initbefore');//初始化前钩子  
$dzz->init();  
Hook::listen('dzz_initafter');//初始化后钩子  

$files=Hook::listen('dzz_route',$_GET);//路由钩子,返回文件路径  
foreach($filesas$v){  
require$v;//包含文件  
}

可以看到框架的整体是采用Hook机制,它的核心思想是允许开发者在不修改核心代码的情况下,对功能进行扩展、修改和定制,我们现查看一下coreVBase.php:某开源网盘程序漏洞分析

可以看到,路由就是index.php?mod=模块(文件名)&op=函数名,接下来根据路由机制找到对应的漏洞文件:根据漏洞描述,漏洞文件在dzz/textviewer/index.php下,所以路由就是index.php?mod=textviewer&op=index:某开源网盘程序漏洞分析很显然,这是一个通过 HTTP 传参的任意文件读取漏洞。利用url:/index.php?mod=textviewer&op=index&src=the_file_path_you_want_to_check

某开源网盘程序漏洞分析
0x4 文件上传漏洞

CVE-2024-24393这是一个文件上传漏洞,首先根据描述查看一下漏洞的文件,注意版本这里写的是1.1.01:dzz/index/index.php:某开源网盘程序漏洞分析

很明显,这里只判断了上传文件的 MIME 类型,显然这里是存在上传漏洞的,漏洞利用:某开源网盘程序漏洞分析某开源网盘程序漏洞分析某开源网盘程序漏洞分析

某开源网盘程序漏洞分析
0x5

原文始发于微信公众号(神农Sec):某开源网盘程序漏洞分析

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

发表评论

匿名网友 填写信息