【代码审计】iZhanCMS_v2.1 前台GoodsController.php页面存在SQL注入漏洞分析
0x00 环境准备
iZhanCMS官网:http://www.izhancms.com
网站源码版本:爱站CMS(zend6.0) V2.1
程序源码下载:http://www.izhancms.com/category/Category/index/cid/1
默认后台:http://127.0.0.1/admin/admin/index
默认用户名:admin 密码自设
测试网站首页:
0x01 代码分析
1、 漏洞文件位置:/application/goods/controllers/GoodsController.php
第68-96行:
这段函数中将获取到的参数id,带入到getLinkgoodsid函数中查询,注意看第三个圈住的地方,参数id拼接到SQL语句中,然后带入数据库执行,这个地方就存在SQL注入。我们再来跟进getLinkgoodsid函数看一下
2、 漏洞文件位置:/application/goods/models/GoodsModel.php
第91-109行:
在这段函数中将获取到的参数id,同样拼接到SQL语句中,然后带入数据库执行,导致程序在实现上存在SQL注入漏洞,攻击者可利用该漏洞获取数据库敏感信息。
0x02 漏洞利用
根据漏洞位置,构造出时间盲注的Payload:
http://127.0.0.1/goods/Goods/info?id=2 xor if('2'='2',sleep(5),0)--
可直接使用SQLMAP来跑:
0x03 修复建议
使用参数化查询可有效避免SQL注入
最后
欢迎关注个人微信公众号:Bypass--,每周原创一篇技术干货。