网站的 URL 地址显示的是苹果官网,网址旁边是安全字样和绿色小锁,表示网站信息基于 https 加密传输,完全没什么问题,然而它就是一个钓鱼网站(演示网站)。
在介绍它是如何做到“完美伪装”之前,先来看看它可能有多危险。
据雷锋网了解,大部分人在浏览网站时,都会用肉眼来观察网站的URL地址,以及地址旁边的安全标识来判断网站是否是钓鱼网站。
现在这种方法完全失效了!只要攻击者做出一个类似文章开头那样的淘宝或者京东之类的购物网站,甚至是银行官网,用户根本无从辨别。
目前该方式仅在 Chrome、火狐以及 Opera 三款浏览器中出现。不过介于这三款浏览器的市场占用率,这种钓鱼方式的危害依然不可小觑。如果你使用的浏览器是这三者之一,可以 点击演示网站 亲身体验一下。
如何做到的?
据雷锋网了解,这是一位名叫郑旭东(读音)的中国研究人员报告的一种钓鱼方法。他在自己的博客发布这一钓鱼方式后,不少国外网友都纷纷表示:“ 鹅妹子嘤!”
这种攻击方式称为“同形异义词”攻击。其实并不是新方法,最早能追溯到2001年。不过由于一些现实情况,该问题目前依然存在于不少浏览器。
它的原理是这样的:有些国家或地区的网站域名会用到一些“地方语言”,比如希腊、西里尔、亚美尼亚,这些网址看起来虽然一样,但是电脑却认为不同。例如:
这里有三个看起来差不多的字符 :a、a、α ,但是第一个是西里尔文的 a,第二个是英文里的 a、第三个是俄文里的 α (数学题里的阿尔法)
虽然看起来都是 A,但计算机显然把它们当成不同的字符来对待。
相信不少读者和宅客一样,脑补出了这样一个画面:
【孙楠、杨臣刚、王大治】
再把文章开头的“苹果官网”的网址和真正的网站来对比着看,你会发现,字母有些“缩小”了,虽然用肉眼几乎无法辨别出来。
说起来,中文域名其实也算是一种“奇奇怪怪的地方语言”,“丫头”的丫字也是字母 Y 的远房表亲 。
DNS 服务器很崩溃,它表示:
我可搞不懂这些乱七八糟的“方言”。
(注:DNS 即域名解析,通过网站域名来指向网站服务器IP)
为了让 DNS服务器能看懂这些“方言”,许多浏览器用一种叫 punycode 的编码方式, 把一些奇奇怪怪的“地方语言”翻译成网络 DNS服务器能懂的英文字符。
例如:
企鹅.com,用 Punycode 转换后为:xn--hoq754q. co
中国.cn,用 Punycode 转换后为:xn--fiqs8s. cn
你会注意到,punycode 转码之后的网站都会以“xn- ” 作为它的开头。
攻击者注册一个名为:xn--fiqs8s. cn 的域名,网址输入到浏览器之后,浏览器会自动还原成 “中国.cn ”。
攻击者注册一个名为:xn--80ak6aa92e.com ,输入到浏览器之后,浏览器会自动还原成 “apple.com”
于是也就有了文章开头的一幕。
基于这种方法,宅客频道试了试,用几个俄文,似乎也能拼出一个 таоьао (淘宝的远房表亲)
虽然上面的 таоьао 一看就能分辨出是假的,但全世界有几千种文字,就不怕挑不出来个长得像的。
如何提防这种攻击?
雷锋网(公众号:雷锋网)编辑亲测,目前大部分国产浏览器是不存在该问题的,这是个令人欣喜的消息。问题主要存在于谷歌浏览器(Chrome)、火狐浏览器(Firefox)、欧朋浏览器(Opera)。
Firefox 用户可以按照以下的步骤来手动将暂时缓解:
在地址栏输入about:config ,按回车,在搜索框输入 punycode,将 network.idn_show_punycode 选项标记为 “True"。
谷歌浏览器用户可以安装一个名为:punycode Alert 的拓展插件,它会对所有存在该问题的网站进行报警。
Opera 浏览器的话,目前雷锋网宅客频道没有找到相应的技术解决方案。
不过雷锋网建议,在访问一些重要的网站时,尽量用手动输入网址的方式访问,不要轻易点击超链接,因为你点进去的每一个网站都可能是假的,虽然看起来没问题。
最重要的一点是你要认识到,用网址和浏览器的安全标识来判断网站的安全性,未必靠谱。这年头上网要安全,还得靠自己的分辨力。
来,再看一遍,你能分辨出这是个假的苹果官网吗?