域名劫持
2018年4月,域名劫持一个普通的域名劫持周二早晨,比特币交易平台Bitfinex的域名劫持用户打开网站,发现页面提示“需要升级安全证书”。域名劫持有人点了“同意”,域名劫持然后输入了自己的域名劫持账户密码。接下来的域名劫持几个小时,他们的域名劫持数字货币被转走,总额超过400万美元。域名劫持这不是域名劫持黑客攻破了服务器,而是域名劫持域名劫持——攻击者没有碰过Bitfinex的任何一台机器,他们只是域名劫持让用户以为自己在访问Bitfinex。
域名劫持的域名劫持本质,是域名劫持攻击者篡改了域名解析的结果。你输入一串网址,域名劫持浏览器问DNS服务器“这个域名对应哪个IP”,本该给出正确答案的DNS服务器被污染了,返回了一个假的IP。于是,你的流量被导向攻击者搭建的钓鱼网站,页面看起来和真的一模一样。整个过程里,你的电脑没有中毒,你的密码也没有被盗——你只是把密码输给了一个冒牌货。
这种攻击最可怕的地方在于,它不挑目标的技术水平。哪怕你是个安全专家,只要你在被劫持的时段内访问了那个域名,你也会中招。因为你的浏览器地址栏里显示的域名拼写完全正确,HTTPS的小锁头也可能正常出现——前提是攻击者搞到了有效的SSL证书,而这在2018年之后变得越来越容易。
我见过一个真实的案例,发生在国内某小型电商平台。他们的域名注册商账户密码被钓鱼套走,攻击者把域名解析指向了一个仿冒站点,然后通过邮件群发“系统升级,请重新验证支付信息”。那家公司的技术负责人事后跟我复盘时说,他们发现问题的原因很荒唐——仿冒站点上的商品图片压缩率太高,放大后能看到马赛克。用户没注意到,但他们的客服收到了十几个投诉电话,问“为什么网站图片变模糊了”。
域名劫持的根源,往往不在技术,而在人。域名注册商的账户密码可能只有6位,没有开启双重验证。域名管理员的邮箱可能和公司官网共用同一个密码,而这个密码在三年前的一次数据泄露中已经流出。更糟的是,很多小公司把域名托管在第三方平台,自己只负责续费,从不检查DNS记录是否被改动过。
防御手段其实不复杂——开启域名注册商的账户锁,使用独立的强密码并开启双重验证,定期检查DNS解析记录,设置域名转移锁。但现实是,大部分网站管理员直到被劫持的那一天,都没碰过这些设置。他们更关心服务器带宽和代码性能,觉得域名解析是“运营商的事”。
2019年,Google公布了一项数据:全球约有1.4万个域名在当年被劫持,其中超过60%的受害者在一个月内才发现问题。这一个月里,攻击者可以持续收集登录凭证、信用卡信息,甚至篡改网站的下载链接,植入恶意软件。等你发现的时候,损失往往已经不可逆。
说到底,域名劫持是互联网信任体系的一个裂缝。我们每天输入网址、点击链接,默认DNS会带我们去正确的地方。但这个默认的前提,是链条上每一个环节都有人尽责。只要有一个环节松懈,整个信任就崩塌了。你不需要成为高价值目标——只要你的域名有流量、有用户、有交易,你就可能成为被劫持的对象。这不是危言耸听,这是2018年那个周二早晨,Bitfinex用户用真金白银换来的教训。








