网址有没有 HTTPS 是辨识假网站的简单方法,不过现在没有这么简单了,因为有研究人员利用浏览器处理非 ASCII 字元网域名称的漏洞,示范如何建立一个冒充苹果的钓鱼网站,而且还加入了 SSL 凭证,不留神的话很容易信以为真。
不法分子利用相似的字元制作鱼目混珠的网址并非新鲜事,除了 0 和 0、1 和 l 之外,他们也会利用其他不同语言但形状相似的 Unicode 字母,例如拉丁字母 a (U+0041)和西里尔字母 а(U+0430)。
针对后者情况,浏览器是有辨法应对。当网址的字元混杂 ASCII 和其他 Unicode 时,便会采用 Punycode 来展示。例如 短 .co 会转换成 xn--s7y.co;采用西里尔字母 а 的 аpple.com 会转换成 xn--pple-43d.com。
网址全用非 ASCII 字元,Chrome、Firefox 无法转换至 Punycode
不过有研究人员发现,当网址域名全部采用非 ASCII 字元时,浏览器的保护机制便会失效。当 apple.com 的 apple 全部改用西里尔字母 аррӏе.com 时,理论上会显示 xn--80ak6aa92e.com,但 Chrome 和 Firefox 仍然显示 аррӏе.com。不过在我的 Windows 8.1 Firefox 浏览器中,只要注意状态列便可察觉到异样,аррӏе 的字型与 .com 特别不同。
▲ 把鼠标移动到 аррӏе.com 的连结时,可见 аррӏе 一字有异样。
由于两款字元非常相似,人们难以分出真伪;如果网站再加上 HTTPS,人们便会以为是正常网站。所以不法分子可借此制作高仿真度的钓鱼网站。
Chrome 和 Firefox 已知道这个漏洞,Chrome 将会于新版本解决问题,但 Firefox 仍然没有修复计划,不过 Firefox 用户可到 about:config 把 network.IDN_show_punycode 设为 true 以强制显示 Punycode。IE 和 Safari 则没有问题。
▲ 虽然 IE 为人垢病,但它没有这个问题。进入 аррӏе.com 时会自动转至 Punycode。
- Phishing with Unicode Domains
(本文由 Unwire Pro 授权转载;首图来源:Flickr/Sean MacEntee CC BY 2.0)
延伸阅读:
- 当心钓鱼网站新手法!ɢoogle.com 不是 Google.com