上周6早上,刚开手机,就收到客户的信息,说他的网站中毒了,media打开不能显示,而且无法上传图片,并且只要打开网站,电脑的杀毒软件就会报错。花了半小时,修复了这个问题。今天把网站修复的过程分享下来,告诉大家如果网站被黑了要怎么办。 1. 找到网站被黑点在哪里 收到客户的信息后,我马上打开电脑查看,除了网站的media无法显示任何图片,也无法上传之外,还发现网站突然非常占电脑CPU,只要一打开页面,CPU就满血到98%,导致电脑非常卡,除此之外,网站其他功能暂时还能正常使用。 因此我推测不算特别严重(如果严重的被黑是整个空间充满了病毒(恶意程序),网站也打不开),要么是网站被挂了黑链,要么是网站被挂了恶意代码。于是先用工具网站查询一下是否被挂了恶意程序
果然,查询结果出现了几行可疑的代码,而且链接到了coinhive.com 的资源。问题点就在这里。因为我做的网站我很清楚,不可能有这样的代码。 然后在自己的网站上面右键 - 查看,然后用ctrl+f搜索coinhive,果然找到了这5行恶意代码。
百度和google了一下,发现这个是一个利用电脑或网站挖矿的程序,NND,竟然黑到我的网站上面了!所以问题点找到了,就是这5行恶意代码! 2. 清除网站上的代码 恶意代码找到了,现在要清除掉这几行代码,要先找到代码所在的具体位置。 我们知道,WP页面是由WP+主题组成的,那么这几行恶意代码是植入了WP系统文件还是主题页面中呢?做一个简单的测试测试就能知道。
然后随便激活后台的其他主题,如2017主题,然后回到前台,右键- 检查,再CTRL+F,搜索coinhive,发现这些恶意代码还存在,这说明这几行代码的位置是在WP系统文件中,因为换了主题之后恶意代码依然存在。 那么现在把网站的全部WP系统文件下载,直接用duplicator备份所有资料,但是点到第3步,发现duplicator竟然无法进行了,WTF,竟然阻止我备份。
好吧,只有用linux指令来备份了。 打开XSHELL,连接上网站所在的空间,进入系统根目录上一层目录,然后输入以下指令并回车 tar cvf in.tar public_html 就可以把整个WP系统文件压缩为in.tar的文件, 然后把in.tar拖到public_html中,再输入回车,就可以下载了 下载到本地后,解压,看到很多系统文件,可是怎么知道这些代码是放在哪个文件里面呢? 不怕,这里用到一个好工具 string finder,免费资源有下载,只需要选择了文件夹路径和搜索的关键词,就能找到包含这个关键词的所有文件。 经过1分钟左右的查找,终于找到了15个被黑掉了系统文件,它们全部在系统根目录 下面,都是php的文件。
找到这些文件然后一个个的点开查看,发现了一段代码,几个文件中的恶意代码都是一模一样,echo .....。选中这些恶意代码,然后删除并保存。
3. 上传修复的系统文件替换掉被黑的文件 既然只有这10几个文件被黑,那只需要把这10几个替换掉即可,直接连接FTP,找到这些文件所在的网站根目录,然后全选上传,选择覆盖即可。 然后再刷新下网站,并右键 - 检查可以看到这些coinhive的代码没有。
然后再检查下后台的功能, media里面的图片也能预览了,图片也能上传了,duplicator也能备份了。网站恢复正常! 4. 这个网站被黑的原因 (责任编辑:admin) |