[代码审计]云优cms V 1.1.2前台多处sql注入,任意文件删除修复绕过至getshell
0X00 总体简介
云优CMS于2017年9月上线全新版本,二级域名分站,内容分站独立,七牛云存储,自定义字段,自定义表单,自定义栏目权限,自定义管理权限等众多功能深受用户青睐,上线短短3个月,下载次数已超过5万次。云优CMS坚信没有排名的网站不是“好网站”,我们将致力于为用户打造全自动SEO解决方案
此次审的版本为云优CMS v1.1.2,更新于2018.08.02。
发现了前台api模块Master.php,V1.php存在多个注入漏洞,与及statics\ueditor\vendor\Local.class.php 文件remove方法存在任意文件删除可导致getshell。
0x01 漏洞环境
工具: phpstudy , vscode,seay源代码审计工具,burpsuite
CMS版本: v1.1.2
官网下载:http://www.yunucms.com/
0x02 漏洞介绍
一、前台api模块下的Master.php,V1.php控制器多处sql注入
多处sql注入皆是orderby变量未过滤,直接带入了查询。pdo是没有办法过滤orderby的。
1,Master.php\api_list 方法
直接带入查询,没有任何过滤
2,Master.php\api_link 方法
不一一举例,Master.php文件的多处$orderby变量都是存在注入的,同理V1.php文件也是一样。
注入证明:取master.php文件中的api_list方法的注入点为例(为了更好的显示漏洞,手动开启了程序的debug模式,不开启报错方式也是可通过盲注的方式获取数据。程序默认不开启debug模式)
修复建议:
1) :不让用户可控$orderby参数
二、任意文件删除漏洞修复绕过
文件statics\ueditor\vendor\Local.class.php remove方法
这个漏洞在1.0.6版本中引入,在1.0.8版本修复。
但是修复不完全,可以直接绕过。
看代码的意思是获取文件路径,通过’/’来划分为数组,判断数组[0]和数组[1]是否等于uploads,不等于则非法。但是我们可以这样绕过,payloads:/uploads/../test.txt
且该处文件不经过后台认证,比如删除一个正常的图片,不带cookie,也是可以正常删除的。
跨目录删除文件,删除根目录下的test.txt
请求包:
可删除install.lock,重装系统写入配置文件直接获取网站webshell,参考(http://www.freebuf.com/column/162343.html)
修复建议:
1) :不允许路径中出现.. 字符
2) :比如将安全验证的代码修改为$file=str_replace(‘..’,’’,$file);
0X03 总结
漏洞原理比较简单,通过这个系统顺便总结了一下orderby注入相关的东西。
与及也发现了一些组件相关的问题,后面写篇文章总结一下。
声明:本文章只用于学习研究之用,禁止用于违法犯罪。
0x04 参考链接
1,http://www.cnblogs.com/iyiyang/articles/6740580.html
转载于:https://www.cnblogs.com/r00tuser/p/9448196.html
[代码审计]云优cms V 1.1.2前台多处sql注入,任意文件删除修复绕过至getshell相关推荐
- 代码审计:YCCMS 代码执行 文件上传 任意文件删除
代码审计:YCCMS 代码执行 文件上传 任意文件删除 YCCMS 审计准备 代码审计 代码执行漏洞 文件上传漏洞 任意文件删除漏洞 YCCMS YCCMS是一款PHP版轻量级CMS建站系统,程序页面 ...
- 【代码审计】任意文件删除漏洞实例
[代码审计]任意文件删除漏洞实例 任意文件删除漏洞,该漏洞可让攻击者随意删除服务器上的任意文件. 环境搭建: CSCMS :http://www.chshcms.com/ 网站源码版本:Cscms_v ...
- PHP代码审计——任意文件删除漏洞(YXcms)
一.代码审计 在我的资源中下载:: YXcms-含有任意文件删除漏洞的源码包 下载即可 删除文件的代码在del()方法,首先通过GET方式接收参数fname传递过来的的值,然后执行in()函数 跟踪i ...
- 【代码审计】Cscms_v4.1 任意文件删除漏洞实例
环境搭建: CSCMS :http://www.chshcms.com/ 网站源码版本:Cscms_v4.1正式版(发布日期:2017-06-05) 程序源码下载:https://github.com ...
- /plus/recommend.php sql注入漏洞,代码审计:ThinkPHP框架通杀所有版本的一个SQL注入漏洞详细分析及测试方法 | Seay 渗透 编程 代码审计 网络安全博客...
显示不全请点击全屏阅读 下面是摘自thinkphp官方的一个公告,官方直接贴出这些东西是非常不负责的行为,跟上次apache公开的Struts2的代码执行一样的行为,会造成很多用户被黑.建议类似的厂商 ...
- 【代码审计】iCMS_v7.0.7 admincp.app.php页面存在SQL注入漏洞分析
0x00 环境准备 iCMS官网:https://www.icmsdev.com 网站源码版本:iCMS-v7.0.7 程序源码下载:https://www.icmsdev.com/downloa ...
- 【代码审计】iCMS_v7.0.7 apps.admincp.php页面存在SQL注入漏洞分析
0x00 环境准备 iCMS官网:https://www.icmsdev.com 网站源码版本:iCMS-v7.0.7 程序源码下载:https://www.icmsdev.com/downloa ...
- 【代码审计】iCMS_v7.0.7 search.admincp.php页面存在SQL注入漏洞
0x00 环境准备 iCMS官网:https://www.icmsdev.com 网站源码版本:iCMS-v7.0.7 程序源码下载:https://www.icmsdev.com/downloa ...
- 【代码审计】iCMS_v7.0.7 keywords.admincp.php页面存在SQL注入漏洞分析
0x00 环境准备 iCMS官网:https://www.icmsdev.com 网站源码版本:iCMS-v7.0.7 程序源码下载:https://www.icmsdev.com/downloa ...
- 【代码审计】CLTPHP_v5.5.3后台任意文件删除漏洞分析
0x00 环境准备 CLTPHP官网:http://www.cltphp.com 网站源码版本:CLTPHP内容管理系统5.5.3版本 程序源码下载:https://gitee.com/chich ...
最新文章
- linux系统重装后挂载数据盘,Linux重装系统后如何重新挂载数据盘?
- java项目教学_java项目_java项目教程_java项目视频教程 _课课家
- Windows FFMPEG开发环境配置
- python模板语言_django的模板语言
- php5.6 mongo 扩展,PHP5.6的安装及redis、memcache、mongo扩展
- html template--(来自网易)
- unix 获取程序占用内存_如何减少Docker和Kubernetes中的JVM应用程序内存占用
- 第一个hadoop 程序
- 非刚性人脸跟踪 —— 面部特征检测器
- SQLSERVER中如何快速比较两张表的不一样
- [渝粤教育] 西南科技大学 单片机原理与应用 在线考试复习资料
- IDEA最全手把手安装教程 安装+字体大小类型,主题颜色设置+常用快捷键设置优化|详细
- UE编辑器修改背景theme
- 基于深度学习的实时激光雷达点云目标检测及ROS实现复现时出错解决方法汇总
- 栈和队列的常见面试题-栈实现队列-队列实现栈
- 配置keepalived实现Nginx高可用(单主、双主模式)
- Android开发英语单词积累
- android 8 平板,击败Android平板:Windows 8志在必得
- 异常解决——Failed to introspect Class [com.github.pagehelper.autoconfigure.PageHelperAutoConfiguration]
- Unirech阿里云国际站轻量应用服务器简介