漏洞概要
关注数(24)
关注此漏洞
漏洞标题:PHPSHE电商程序SQL注入漏洞
提交时间:2013-12-24 17:19
修复时间:2014-03-21 17:20
公开时间:2014-03-21 17:20
漏洞类型:SQL注射漏洞
危害等级:中
自评Rank:20
漏洞状态:漏洞已经通知厂商但是厂商忽略漏洞
Tags标签:
无
漏洞详情
披露状态:
2013-12-24: 细节已通知厂商并且等待厂商处理中
2013-12-29: 厂商主动忽略漏洞,细节向第三方安全合作伙伴开放
2014-02-22: 细节向核心白帽子及相关领域专家公开
2014-03-04: 细节向普通白帽子公开
2014-03-14: 细节向实习白帽子公开
2014-03-21: 细节向公众公开
简要描述:
PHPSHE SQL注入#3
详细说明:
在添加购物车时,存在过滤。
但是在更新购物车商品数量时,没有过滤,导致SQL注入。
在/module/index/order.php文件:
这里存在登陆和不登陆情况,都没有过滤product_id和product_num参数。
再跟进pe_updeta函数:
然后看看这里面处理生生成语句的函数_dowhere 和 _doset:
也没有过滤参数,最后进入sql语句执行。
漏洞证明:
我们测试的是登陆的情况下。
先添加一个商品到购物车,如图:
返回true,添加成功。
在来更新购物车中的商品数量。
先看看正常更新情况下,sql语句的执行情况,如图:
这里成功更新了商品数量,以及商品的总金额。
然后我们来修改后面的product_num,即商品的数量,然后添加正常的sql注入语句,看响应也正常更新了,如图:
这里也修改成功,商品数量和总金额都变化了,我们的sql语句也带入执行了。
最后我们再来修改product_num的数量,然后加入错误的sql语句,此时更新失败了,如图:
由于这里输入的是错误的sql语句,条件不成立,导致跟心购物车商品失败。
修复方案:
漏洞回应
厂商回应:
危害等级:无影响厂商忽略
忽略时间:2014-03-21 17:20
厂商回复:
最新状态:
2014-05-19:感谢@xfkxfk 提供代码审计,sql注入漏洞已修复!