漏洞概要
关注数(24)
关注此漏洞
漏洞标题:kppw 最新版注入(有点奇葩)
提交时间:2015-05-13 15:58
修复时间:2015-08-12 12:04
公开时间:2015-08-12 12:04
漏洞类型:SQL注射漏洞
危害等级:高
自评Rank:20
漏洞状态:厂商已经确认
Tags标签:
无
漏洞详情
披露状态:
2015-05-13: 细节已通知厂商并且等待厂商处理中
2015-05-14: 厂商已经确认,细节仅向厂商公开
2015-05-17: 细节向第三方安全合作伙伴开放
2015-07-08: 细节向核心白帽子及相关领域专家公开
2015-07-18: 细节向普通白帽子公开
2015-07-28: 细节向实习白帽子公开
2015-08-12: 细节向公众公开
简要描述:
人生第一发代码审计
详细说明:
首先给厂商说句抱歉,测试demo的时候把demo搞挂了
漏洞文件:control/ajax/balance.php
看代码
变量 $arr 是可控的 而且没做任何过滤传入 updatetable()函数
跟进updatetable()函数
可见没做处理,跟进update()
这里就可以看出我们从url传过来的arr要是数组才行,才能控字段。
先看效果
可见真的进入了update语句,但是是否 显得鸡肋呢,因为只能更新shop表下的字段而已,也就是改改别人的店铺名啊之类的,要是能逃逸单引号多,这时候就开始fuzz一下发现,如果交一个单引号会经过两次转义,一次是系统全局的,另一次是update()函数里的escape_string()函数,测试一下
可见一个单引号会变成一个3个反斜杠加一个单引号。这时候我fuzz了一下
发现如果提交%bf'哈哈
哈哈 单引号成功逃逸出来。
这个时候就可以盲注了哈哈
至于你问我为什么 我也还不大清楚,我再还要分析看看,注:我的环境是apache+mysql5.5.4+php5.3。本来是要测dome的但是由于手抖没闭合好官网已经挂了 实在抱歉
poc
http://127.0.0.1:81/www/kppw/index.php?do=ajax&view=banner&id=1&a=1&arr[shop_name]=123%bf' where uid=1 and sleep(5)%23
成功盲注。
漏洞证明:
首先给厂商说句抱歉,测试demo的时候把demo搞挂了
漏洞文件:control/ajax/balance.php
看代码
变量 $arr 是可控的 而且没做任何过滤传入 updatetable()函数
跟进updatetable()函数
可见没做处理,跟进update()
这里就可以看出我们从url传过来的arr要是数组才行,才能控字段。
先看效果
可见真的进入了update语句,但是是否 显得鸡肋呢,因为只能更新shop表下的字段而已,也就是改改别人的店铺名啊之类的,要是能逃逸单引号多,这时候就开始fuzz一下发现,如果交一个单引号会经过两次转义,一次是系统全局的,另一次是update()函数里的escape_string()函数,测试一下
可见一个单引号会变成一个3个反斜杠加一个单引号。这时候我fuzz了一下
发现如果提交%bf'哈哈
哈哈 单引号成功逃逸出来。
这个时候就可以盲注了哈哈
至于你问我为什么 我也还不大清楚,我再还要分析看看,注:我的环境是apache+mysql5.5.4+php5.3。本来是要测dome的但是由于手抖没闭合好官网已经挂了 实在抱歉
poc
http://127.0.0.1:81/www/kppw/index.php?do=ajax&view=banner&id=1&a=1&arr[shop_name]=123%bf' where uid=1 and sleep(5)%23
成功盲注。
修复方案:
漏洞回应
厂商回应:
危害等级:中
漏洞Rank:8
确认时间:2015-05-14 12:02
厂商回复:
谢谢提供
最新状态:
暂无
漏洞评价:
评论
-
2015-05-13 16:07 |
东方不败 ( 普通白帽子 | Rank:440 漏洞数:66 | 日出东方,唯我不败。)
-
2015-05-13 16:11 |
玉林嘎 ( 普通白帽子 | Rank:758 漏洞数:96 )
-
2015-05-13 20:30 |
AK-47 ( 路人 | Rank:15 漏洞数:1 | 开开心心挖洞,踏踏实实上学!)
-
-
2015-09-14 12:23 |
BeenQuiver ( 普通白帽子 | Rank:101 漏洞数:26 | 专注而高效,坚持好的习惯千万不要放弃)