“E创网站系统”是政府站点通用的建站模板系统,几乎成了政府建站首先模板系统,占了相当大的市场份额。最近,E创爆出新漏洞,采用该系统的政府网站将面临者攻击的危险。笔者写这篇文章重在分析漏洞原因,解析攻击利用过程,并给出解决办法。以期采用该系统的网站提高警惕,尽快修复漏洞。
1、漏洞分析
down.asp是E创系统的防盗链文件,其关键代码如图1:

HTTP_REFERER是是header的一部分,当浏览器向web服务器发送请求的时候会带上Referer,告诉服务器该请求是从哪个页面链接过来的,服务器籍此可以获得一些信息用于处理。Request.ServerVariables("HTTP_REFERER")的作用就是服务器获取链接的来源,然后与Request.ServerVariables("SERVER_NAME")获得的服务器名进行比较看看去爱那个8个字符是否相同,从而判断该链接是否来源于本服务器,以确定是否是“盗链”。
由于服务器对于HTTP_REFERER没有进行过滤,因此可以利用Microsoft.XMLHTTP组件伪造Referer,绕过E创网站系统down.asp的防盗链限制,关键代码为:
Dim oXMLHttp,oStream,SourceCode,action,weburl,savefile
action=Request("action")
weburl=Request("weburl")
savefile=Request("savefile")
Function E_0Day()
Set oXMLHttp = Server.CreateObject("MSXML2.XMLHTTP")
With oXMLHttp
.Open "Get", weburl, False
.setRequestHeader "Referer",mid(weburl,1,InStr(8,weburl,"/")-1)
'Response.Write mid(weburl,1,InStr(8,weburl,"/")-1)
.Send
End With
核心代码.setRequestHeader "Referer",mid(weburl,1,InStr(8,weburl,"/")-1)对客户端提交的weburl进行切分构造Referer。最后把这个构造的Referer提交给down.asp文件可以实现下载任意文件。有了核心代码然后以此为基础构造一个提交页面。(图2)

当然攻击者最感兴趣的是Conn.asp文件,因为该文件是数据库连接文件。在该文件中记录了采用的数据库类型(ACCESS或者SQL):对于ACCESS数据库可以看到数据库的路径及其名称,从而可以确定数据库的URL地址然后下载数据库;如果是SQL数据库,则可以看到数据库的连接用户和密码,然后利用类似SQL连接器的工具连接服务器。
责任编辑: 李岩


共有 位GM网友发表了评论 查看完整内容