当前位置:WooYun >> 漏洞信息

漏洞概要 关注数(24) 关注此漏洞

缺陷编号:wooyun-2014-049927

漏洞标题:某通用型学校网站系统SQL注入影响大量学校网站

相关厂商:某通用型学校网站系统

漏洞作者: xfkxfk

提交时间:2014-01-27 12:51

修复时间:2014-04-27 12:52

公开时间:2014-04-27 12:52

漏洞类型:SQL注射漏洞

危害等级:高

自评Rank:20

漏洞状态:已交由第三方合作机构(cncert国家互联网应急中心)处理

漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2014-01-27: 细节已通知厂商并且等待厂商处理中
2014-02-01: 厂商已经确认,细节仅向厂商公开
2014-02-04: 细节向第三方安全合作伙伴开放
2014-03-28: 细节向核心白帽子及相关领域专家公开
2014-04-07: 细节向普通白帽子公开
2014-04-17: 细节向实习白帽子公开
2014-04-27: 细节向公众公开

简要描述:

某通用型学校网站系统SQL注入影响大量学校网站。
这个还是交给cncert国家互联网应急中心处理吧。

详细说明:

首先是从沈阳航空职业技术学院搜到的信息:

http://www.syhzy.cn/


1.png


于是按照关键字搜了一下:

技术支持:校无忧科技


看了用户量不小啊

3.png


下载了源码看了下:Xiao5u_School_v2.1.zip
看到这个文件/admin/check.asp:

if request("action")="login" then
Username=trim(request("admin_name"))
Password=trim(request("admin_pass"))
end if
If Instr(Username,"or")<>0 or Instr(Password,"or")<>0 or Instr(Username,"and")<>0 or Instr(Password,"and")<>0Then
response.write "<br><br><br><br><font size=2><center>没事别搞人家后台,谢谢!<br>否则一切后果自负!<br>校无忧-Www.Xiao5u.Com</font>"
else
set rs=server.createobject("adodb.recordset")
sql="select * from admin where Username='"&Username&"' and Password='"&md5(Password)&"'"
rs.open sql,conn,1,3


从代码中看出,虽然他做了一点点的处理,但是基本上跟没处理一样,只是判断用户名和密码中是否有or和and关键字,那我们不是用大写或者大小写混合不就绕过了。
本地环境测试了下,成功绕过后台登陆,后台登陆地址/admin/login.asp

4.png


登陆后台后,在网站信息处,可以拿shell,文件/admin/siteconfig.asp:

sub SaveConfig()
If ObjInstalled=false Then
FoundErr=true
ErrMsg=ErrMsg & "<br><li>你的服务器不支持 FSO(Scripting.FileSystemObject)! </li>"
exit sub
end if
dim fso,hf
set fso=Server.CreateObject("Scripting.FileSystemObject")
set hf=fso.CreateTextFile(Server.mappath("../inc/config.asp"),true)
hf.write "<" & "%" & vbcrlf
hf.write "Const SiteName=" & chr(34) & trim(request("SiteName")) & chr(34) & " '网站名称" & vbcrlf
hf.write "Const keywords=" & chr(34) & trim(request("keywords")) & chr(34) & " '关键字" & vbcrlf
hf.write "Const description=" & chr(34) & trim(request("description")) & chr(34) & " '描述" & vbcrlf
hf.write "Const Copyright=" & chr(34) & InPutStr(trim(request("Copyright"))) & chr(34) & " '版权信息" & vbcrlf
hf.write "%" & ">"
hf.close
set hf=nothing
set fso=nothing
end sub


这里没有任何过滤,直接将接收到的配置信息写入了配置文件/inc/config.asp中。

5.png


来看看配置文件/inc/config.asp内容;

7.png


成功写入一句话密码,拿到shell;

6.png

漏洞证明:

来两个案例证明吧:

8.png


9.png


没有拿上述网站shell,没有破坏数据。
影响挺大,拿shell,拿站都可以批量的,请cncert国家互联网应急中心及时处理吧。

修复方案:

加强过滤。

版权声明:转载请注明来源 xfkxfk@乌云


漏洞回应

厂商回应:

危害等级:高

漏洞Rank:16

确认时间:2014-02-01 22:46

厂商回复:

CNVD确认并复现所述多个实例情况,由CNVD尝试通过公开联系渠道协调软件生产厂商处置。涉及案例CNCERT暂未建立联系渠道,故由软件生产厂商处置。

最新状态:

暂无