当前位置:WooYun >> 漏洞信息

漏洞概要 关注数(24) 关注此漏洞

缺陷编号:wooyun-2015-0106331

漏洞标题:网鱼网咖鱼泡泡手机应用getshell然后ke刷各种支持网吧的网费

相关厂商:网鱼网咖

漏洞作者: xsser_w

提交时间:2015-04-08 12:01

修复时间:2015-05-23 12:02

公开时间:2015-05-23 12:02

漏洞类型:文件上传导致任意代码执行

危害等级:高

自评Rank:20

漏洞状态:未联系到厂商或者厂商积极忽略

漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2015-04-08: 积极联系厂商并且等待厂商认领中,细节不对外公开
2015-05-23: 厂商已经主动忽略漏洞,细节向公众公开

简要描述:

RT 这么刷网费真是开心阿

详细说明:

首先、我们需要getshell 一个 那么 shell 的过程就是一个鱼泡泡的getshell
这个getshell 不是重点,重点是刷钱
那么
这套系统有个pubwin.php 是pubwin接口 我们来看下信息

public function Recharge($cardno,$money,$zsmoney,$is_return=false)
{
$response = $this->GetUserInfoByCardNo($cardno);

if(!$response["success"])
{
return $response;
}
//充值类型
$source_type = "4";
if($is_return)
$source_type = "6";

$param = "{$cardno}|{$money}|{$zsmoney}|{$source_type}";
330104199009073010|-11800000||5
$host = $this->BarCenterHost;
$wangbano = $this->WangBaNo;
$isonline = $response["isonline"];

if($isonline == 1)
{
$wangbano = $response["wangbano"];
$bar_res = $this->GetWangBaInfoById($wangbano);
if(!$bar_res["success"])
{
log_message('error',"get online wangba info no fail[{$wangbano}]");
return $bar_res;
}

$host = $bar_res["ip"];
$port = $bar_res["port"];

$host = "http://{$host}:{$port}";



}
else //不在线的,需要用网鱼总店的认证,把会员信息拉到网鱼总店,否则无法充值
{
$auth_res = $this->memberAuth($host,$cardno);

if($auth_res["success"] == false)
{
return $auth_res;
}
else
{
$memberType = $auth_res["membertype"];
if($memberType != "1")
{
$res = array("success"=>false,"code"=>"40099","msg"=>"临时会员无法充值");
return $res;
}
}
}

$url = $host."/NetCafe/servlet/CommunicationDataServlet?operation=memberRecharge&param={$param}";

$result = http_get($url);
$error_result = $result;

//40000|32200||1397

$result = explode("|", $result);

$code = $result[0];

if($code != "40000")
{
log_message('error',"充值失败:".$url);
$error_result = mb_convert_encoding($error_result,"utf-8", "GBK");
log_message('error',"充值失败:".$error_result);
$msg = $result[1];
$response = array("success"=>false,"code"=>$code,"wangbano"=>$wangbano,"msg"=>$msg);
}
else
{
$cash_balance = $result[1];
$trade_no = $result[3];
$response = array("success"=>true,"cash_balance"=>$cash_balance,"trade_no"=>$trade_no,"wangbano"=>$wangbano);
}

return $response;

}


recharge 函数对 发起一个请求到服务器 不管在不在线都会使用网吧pubwin
其实在此前还有一个总的Pubwin服务器接口,不过现在好像做了防火墙策略? 可以Ping,但是http包不能正常返回 我们先不管这个
无意间,我得到了以下地址
http://gms.wywk.cn/app/wywk/pubwinClent.html?_resourceid=40288a6b3da55260013db059bc192eef&application=11e1-892d-55b16c79-9894-3ff4f220aec6

QQ图片20150407091754.png


是全国接近200家的地址,这意味着什么?
我们可以向任意地址发起请求 充值我的账户
!_! 核心业务已经被突破了
shell地址
http://yppapi.wanyoo.com/appupdate/1.php
哦对了,这个服务器上挂着 升级版的鱼泡泡,那我要是替换了岂不是…

QQ图片20150407092941.png


上线前做好安全监测,业务涉及金钱部分未做业务隔离

漏洞证明:

http://yppapi.wanyoo.com/appupdate/1.php

修复方案:

1。隔离开升级业务的鱼泡泡
2.校验上传
3。禁止匿名访问这些pubwin接口 对全国200家……网吧总台做防火墙策略,强行要求…
4、修改参数名
5、pubwin端验证数值类型

版权声明:转载请注明来源 xsser_w@乌云


漏洞回应

厂商回应:

未能联系到厂商或者厂商积极拒绝

漏洞Rank:20 (WooYun评价)