今天一个客户反馈,他们的网站访问的时候提示「您要访问的网站包含恶意软件」,遂打开他们的域名,红彤彤的页面没有带来节日的喜庆,反而鲜艳夺目穿透力最强的红色,极具警示作用,让人望而却步。既然出现问题了,就尝试解决问题。
1、错误重现
如你所见,就是这个页面,完整的错误信息如下。
您要访问的网站包含恶意软件
攻击者可能会试图通过 public.clickstat360.com 在您的计算机上安装危险程序,以窃取或删除您的信息(如照片、密码、通讯内容和信用卡信息)。了解详情
将您访问的部分网页的网址、有限的系统信息以及部分网页内容发送给 Google,以帮助我们提升 Chrome 的安全性。隐私权政策
Google安全浏览功能最近在www.haochuangwuye.com上检测到了恶意软件。平常非常安全的网站有时也会感染恶意软件。检测到的恶意内容来自于public.clickstat360.com,这是个已知的恶意软件散布方。
如果您了解自己将面临的安全风险,则可以在危险程序被清除前访问这个不安全的网站。
首先检查的就是网站有无漏洞、或者已经被入侵,提示上说到了「public.clickstat360.com」,就对php+html+js的文件通过源代码的方式进行查询,并无结果。
我们需要先解决打开网站页面变红的方法,既然是外部调用,最大可能是JS的问题,就上SSL吧,全站换成https,这样就算有外部链接,也无法调用。
2、全站Https+SSL证书
SSL证书好说,现在很多平台都是免费的,为了方便我们就使将域名接入「DnsPod」,通过「腾讯云」申请一个免费的SSL证书,过程很简单
DNSPOD→DNS解析→我的域名→添加域名→修改域名DNS为DNSPOD的地址→进入域名解析页面→点击SSL图标→SSL证书免费版→免费申请
腾讯云一般几个小时之内就会邮件通知结果
在服务器部署https,整个过程有运维在做,没太多关注,如果是宝塔会更简单。
证书部署完成后,申请的是www域名,将主域名跳转到www域名。
到这个步骤,通过chrome、Edge、QQ浏览器等多个平台,发现小绿标出现了,红色的界面已经消失了。
理论上到此应该结束了
结果在进行搜索引擎结果测试的时候发现,如果通过google、百度搜索的时候,点击搜索结果进入网站依然会出现风险提示页面,继续排查。
3、Google 管理员工具
这个时候就登录谷歌工具:http://www.google.com/webmasters/tools/
添加域名
通过刚才的DNSPOD进行验证
按照正常逻辑,到这里应该出现安全问题,然后进行修复,结果这里居然没有任何提示,是正常的。
继续排查
4、clickstat360的ui_node.js
警示页面出现了的那个网址再次引起注意「public.clickstat360.com」,这个域名在百度、搜狗、360的检索结果获得不到任何有效信息,在google上找到有一个相似的情况,同时在gogole的安全浏览工具检测到的网站状态找到一个疑似的文件的路径「网站 https://public.clickstat360.com/ui_node.js?cid=240&v=827ccb0eea8a706c4c34a16891f84e7b 包含有害内容,其中的某些网页会:将访问者重定向到有害网站」,这样基本可以确定是js文件了,通过检索源文件「clickstat360」「Redirect」也找不到任何文件。
那么真相只有一个,文件加密了。
5、抽丝剥茧的加密文件
通过编辑工具,全站搜索代码:「function(p,a,c,k,e,d」或搜索「|||||||||||||||||」若发现存在疑似下面的代码,不一定完全一样,只要是类似结构的,,一般存放在.js文件中。
果不其然,在果不其然,在「jquery.vmap.packed.js」和「jquery.input-ip-address-control-1.0.min.js」找到了加密文件,然后https://tool.lu/js进行解密。
文件删除吧,这个网站框架很早以前的了,也有念头了,这两个JS前端没用到,直接删除。
登陆谷歌账号,进入Security Issues 报告,提交审核,等待审核通过后,风险提示解除。
6、判断网站是否被google惩罚
通过检索发现一个网站,可以判断网站是否被google惩罚https://ismywebsitepenalized.com/,测试了即便,除非大型网站,否则大多显示橙色「is not restricted by owner, but appears to be penalized by Google」,似乎受到google惩罚。
7、网站申诉
首先:如果您拥有的网站被标记为危险网站或欺骗性网站,登录您可以更改相应网站并提交审核请求,地址https://safebrowsing.google.com/safebrowsing/report_error/?hl=zh-Hans
然后:登录网站管理工具 Google search console 进入安全问题,点击左上角的「意见反馈」提交说明理由,并留下邮箱。
接着:如果您认为您的网站被错误地标记了,可以登录https://bugs.chromium.org/p/chromium/issues/entry?template=Safety+Tips+Appeals 与与我们联系。
最后:在网站站长帮助论坛 https://support.google.com/webmasters/threads?hl=en&thread_filter=(category:security_malware_hacked)中发帖咨询。等待Google Search Console 专家回复问题问题。
8、尾语
截止到目前,这个问题还未解决,网站体量不大,就是一个企业网站,已经安排技术人员后端重写,前端重新优化。
同时等待google的审核结果。
9、后续
因为发现只有在通过搜索引擎进入的时候才会有告警提示,在提示之前会正常显示页面,就通过域名解析端进行尝试URL跳转到正常域名,例如显性URL跳转到百度,则显示正常,后续通过同域名的cn域名架设网站,com域名作为跳转。
在网页上传阿里云服务器的时候,发现了问题所在。
因为收到了阿里云提醒
网站后门-发现后门(Webshell)文件
木马类型:Webshell
木马文件路径:/public/assets/plugins/bootstrap-wysihtml5/ckeditor/plugins/plugin.php
木马文件路径:public/assets/plugins/jquery-file-upload/server/php/UploadHandler.php
套路云也没什么不好的,稳定、安全,当时ECS也便宜,北京阿里云660.00/3年,香港阿里云香港阿里云879.00/3年,也挺划算的。
知道问题所在就OK了,等服务器运维人员回来后,再加上程序员配合,找下具体原因,换个框架最彻底。
申诉一下应该就可以了。
申诉了,一直没有恢复。
这些人都是吃饱了撑的
开发的框架太早了,技术人员当年也疏漏,客户的一个企业小网站,一个月流量不会超过100PV,等google解封吧。