bluecms v1.6 代码审计
2024-09-19 05:15:18
0x01 使用seay源代码审计系统进行审计
扫描到了很多个可疑漏洞,不过工具都有一定的误报,下面我们就逐个进行验证
0x02 /ad_js.php SQL注入漏洞
查看源码,我们发现程序通过GET方法接收ad_id的值,然后通过trim函数去除首尾的空白字符,并没有做其他操作,直接代入了SQL语句。
追踪函数getone(),代码在mysql.class.php中,直接执行了sql语句。
因此,我们直接可以通过联合查询来进行注入:
0x03 /user.php 文件包含漏洞
查看源码,我们发现当$act=='pay'时,将执行include 'include/payment/'.$_POST['pay']."/index.php";
并且$_POST['pay']的值没有经过处理。
这样我们就可以构造payload,使其包含恶意文件,比如在phpstudy根目录下新建一个index.php文件
通过目录穿越,即可包含该文件:
当然,也可以利用文件路径长度截断(php版本小于等于5.2) ,如用字符.或者/.或者./来截断,造成文件包含漏洞,这样可以包含任意文件。
系统文件路径长度限制:
Windows 259个字节
Linux 4096个字节
0x04 /user.php SQL注入漏洞
这个注入和上边的ad_js.php sql注入原理和操作都相差不大,就不对其分析了。
0x05 /user.php XSS漏洞
发现email是直接post进数据库的,未对其做任何过滤从而引起的xss,但由于其他的,例如用户名有长度验证所以不能xss.
最新文章
- 基于STM32Cube的脉冲输出
- React 学习,需要注意几点
- mysql explain详解
- 小技巧-a标签去除蓝圈
- BZOJ3759: Hungergame 博弈论+线性基
- [转]Windows中的命令行提示符里的Start命令执行路径包含空格时的问题
- 登录模块需要用到session留底
- js定时跳转
- 超大文件上传到Azure Linux虚拟机最佳实践
- HDU 5804 Price List
- JSON基础(Java)
- hadoop集群崩溃,因为tmp下/tmp/hadoop-hadoop/dfs/name文件误删除
- SUSE12Sp3安装配置.net core 生产环境-总汇(持续更新中...)
- React文档(二十三)Web Components
- 三级区域jquery插件
- Nginx的配置详解
- JSP中页面向Action传递参数的几种方式
- 基于html5 canvas 的客户端异步上传图片的插件,支持客户端压缩图片尺寸
- 【11】JMicro微服务-配置管理
- Hibernate三种状态;query查询;ResultTransformer转换为pojo对象;能够将query语句写在xml中;Criteria查询;ProjectionList总和/f分组等函数