记录一下代码审计的分析流程。
安装完成后未删除install.php
文件。
定位到install.php
,第6行位置
判断了是否存在install.lock
文件,然后没有下文了。。。可能是开发失误。
安装完成
然后访问install.php
可以重装
访问url:
http://127.0.0.1/uqcms/index.php/admin/ad/save
post提交数据 alias=1#&id=1 and updatexml(1,concat(0x7e,(select/**/user()),0x7e),1)#&name=2&px=0
admin/ad_class.php
第62行
通过P函数获取id的值,跟进P函数
因为传入的是false
,去掉空格后直接返回,没有任何过滤。
需要注册一个会员账号,
在修改收货地址处抓包,修改id参数,id参数未过滤,可报错注入,得到数据。
home/address.class.php
文件,第35行位置
通过P函数获取后直接传入sql语句进行查询。
sql注入在这套cms里应该是不少…,以上只是举个例子,开发者把希望寄托在了360_safe.php
提供的过滤规则上… ,虽然过滤大部分,但是没有过滤报错函数,POST方式没有过滤单引号。
本地上传正常图片也不行,没进一步测试,附上先知社区大佬分析
https://xz.aliyun.com/t/6075