CSDN-Passport参数过滤不严格导致SQL注入漏洞
发现漏洞点在于它新改版的注册里面存在注入漏洞,具体漏洞请看下面截图,做技术的一看就清楚了
http://passport.csdn.net/account/register?action=resendActiveEmail&username=rain
提示信息如下
从这里可以清楚的明白,rain这个账号已经注册和激活,没有问题,下面我们来发现注入点吧
首先可以确定,rain是一个字符串,所以肯定是字符注入了。那么我们来构造这个注入测试,看看下面的url的结果返回
http://passport.csdn.net/account/register?action=resendActiveEmail&username=rain' and ord(mid(user(),1,1))=114 and '2'='2
提示为rain账号不存在了,其实不然,最根本原因在于这个mysql数据库的user账号不是root导致的,程序员一看这个就明白了
看一个经典的测试截图1=1 和1=2
一目了然,存在sql注入,至于利用嘛,我就不写了。无非是查询系统表得到库名称、然后得到表、得到数据、甚至弄个路径,写个web shell等等,这些比较费工夫,不继续手动测试了。明天还上班