微擎注入漏洞
- web/source/extension/menu.ctrl.php
找到 foreach($_GPC['id'] as $k => $v) {
# 外层添加:
if (is_array($_GPC['id']) && !empty($_GPC['id'])) {
foreach($_GPC['id'] as $k => $v) {
...
}
}
- web/source/founder/display.ctrl.php
找到 $founders = explode(',', $_W['config']['setting']['founder']);
# 其下添加:
$identity = uni_permission($_W['uid']);
if ($identity != ACCOUNT_MANAGE_NAME_FOUNDER && $identity != ACCOUNT_MANAGE_NAME_VICE_FOUNDER) {
itoast('没有权限', referer(), 'error');
}
- web/source/mc/fangroup.ctrl.php
找到 $sql = 'UPDATE ' . tablename('mc_mapping_fans')
# 原代码
foreach ($buffer as $fans) {
$tagids = trim(str_replace(','.$tagid.',', ',', $fans['groupid']), ',');
if ($tagids == ',') {
$tagids = '';
}
$sql .= 'UPDATE ' . tablename('mc_mapping_fans') . " SET `groupid`='" . $tagids . "' WHERE `fanid`={$fans['fanid']};";
}
pdo_query($sql);
# 改为
for ($i = 0; $i < $buffSize; $i++) {
$sql = '';
$buffer = array_slice($fans_list, $i * 500, 500);
foreach ($buffer as $fans) {
$tagids = trim(str_replace(','.$tagid.',', ',', $fans['groupid']), ',');
if ($tagids == ',') {
$tagids = '';
}
$sql = 'UPDATE ' . tablename('mc_mapping_fans') . " SET `groupid`= :tagids WHERE `fanid`=:fanid;";
pdo_query($sql,array(":tagids" => $tagids, ":fanid" => $fans['fanid']));
}
}
- web/source/paycenter/wxmicro.ctrl.php
找到 if($post['member']['uid'] > 0) {
# 改为
if(intval($post['member']['uid']) > 0) {
- web/source/site/editor.ctrl.php
找到 if (!empty($nav)) {
# 其下添加
if (!empty($nav)) {
$nav['id'] = intval($nav['id']);