早上九点,网站我打开自家网站准备更新一篇产品说明,被劫浏览器却弹出一个花花绿绿的网站博彩页面。网址栏清清楚楚显示着我的被劫域名,页面内容却跟我毫无关系。网站这不是被劫第一次了,上周客户就打电话来抱怨,网站说点进我们官网总被跳到什么“澳门威尼斯人”。被劫我对着屏幕愣了三秒,网站然后骂了一句——网站被劫持了。被劫
这种劫持分两种。网站一种是被劫DNS劫持,你的网站域名解析被动了手脚,访问请求被偷偷引到别处。被劫另一种更狠,网站直接篡改服务器上的网页文件,往HTML里塞一堆恶意脚本。我遇到的是前者,运营商搞的鬼,他们能在网络出口处拦截HTTP请求,然后返回一个假页面给你。HTTPS能防这个,但小网站谁舍得花钱配证书?
查了半天,发现劫持源不在我服务器上,而是本地网络设备。路由器被植入了恶意固件,所有经过它的流量都会被检查一遍,遇到特定关键词就插入广告代码。我换了台干净电脑,用手机热点上网,网站恢复正常。问题找到了,但解决起来麻烦——那台路由器是公司五年前买的,固件早就不更新了,漏洞一堆。
打电话给运维,他说这种情况见多了。有些小公司网站被劫持,是因为服务器密码太简单,别人用扫描工具试几次就进去了,改个首页文件,挂上赌博链接,神不知鬼不觉。还有更阴的,劫持只针对搜索引擎爬虫,普通用户打开正常,百度收录的却是满屏垃圾信息。等你发现排名掉了,流量没了,才知道被坑了。
那次折腾了整整两天。先改了所有后台密码,上了双因素认证,又给服务器装了安全狗,把不必要的端口全关了。最麻烦的是清掉被篡改的页面缓存,得一个个排查文件修改时间。我一边删恶意代码一边想,这就像家里进了贼,你不仅得换锁,还得把每个角落翻一遍,确认没藏什么奇怪的东西。
网站劫持这事儿,说大不大,说小不小。对个人站长来说,可能就是收入少几天;对企业,那是信誉问题。我见过一个电商网站被劫持后,用户下单页面跳转到钓鱼网站,客户银行卡信息泄露,最后赔了一屁股钱。别指望运营商或云服务商替你操心,他们只管线路通不通,哪管你页面内容被谁改了。
后来我把网站全切到HTTPS,又加了个监控脚本,每五分钟检查一次首页文件有没有被改动。麻烦是麻烦,但总比天天提心吊胆强。现在偶尔还会收到安全告警邮件,点开一看,又是哪个扫描器在试探端口。我笑了笑,关掉邮件,继续写我的产品说明。这年头,做网站就像守店,你得时刻盯着,不然什么时候被搬空了都不知道。