PHP代码审计 | 记一次CMS代码审计

2019-10-16 8,675


记录一下代码审计的分析流程。

1.系统重装漏洞

利用条件

安装完成后未删除install.php文件。

漏洞分析

定位到install.php,第6行位置

判断了是否存在install.lock文件,然后没有下文了。。。可能是开发失误。

漏洞复现

安装完成

然后访问install.php 可以重装

2.后台xss(滑稽)

3.sql语句暴露

4.后台sql注入(鸡肋)

漏洞复现

访问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,去掉空格后直接返回,没有任何过滤。

5. 前台sql注入

利用条件

需要注册一个会员账号,

在修改收货地址处抓包,修改id参数,id参数未过滤,可报错注入,得到数据。

漏洞复现

漏洞分析

home/address.class.php 文件,第35行位置

通过P函数获取后直接传入sql语句进行查询。

sql注入在这套cms里应该是不少…,以上只是举个例子,开发者把希望寄托在了360_safe.php提供的过滤规则上… ,虽然过滤大部分,但是没有过滤报错函数,POST方式没有过滤单引号。

6. 文件上传

本地上传正常图片也不行,没进一步测试,附上先知社区大佬分析

https://xz.aliyun.com/t/6075

本文作者:HACK_Learn

本文为安全脉搏专栏作者发布,转载请注明:https://www.secpulse.com/archives/115746.html

Tags:
评论  (0)
快来写下你的想法吧!

HACK_Learn

文章数:142 积分: 323

微信公众号:HACK学习呀

安全问答社区

安全问答社区

脉搏官方公众号

脉搏公众号