前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >一种几乎无法被检测到的Punycode钓鱼攻击,Chrome、Firefox和Opera等浏览器都中招

一种几乎无法被检测到的Punycode钓鱼攻击,Chrome、Firefox和Opera等浏览器都中招

作者头像
FB客服
发布2018-02-24 11:25:55
2.2K0
发布2018-02-24 11:25:55
举报
文章被收录于专栏:FreeBufFreeBuf

国内的安全专家最近发现一种新的钓鱼攻击,“几乎无法检测”,即便平时十分谨慎的用户也可能无法逃过欺骗。黑客可利用Chrome、Firefox和Opera浏览器中的已知漏洞,将虚假的域名伪装成苹果、谷歌或者亚马逊网站,以窃取用户的登录凭证、金融凭证或其他敏感信息。

防钓鱼的最佳方式是什么?一般来讲,我们会在页面加载出来后检查地址栏,看看地址是否由有效的HTTPS连接提供。对吧?

那么,在继续深入之前,我们来看看这个页面。页面是由发现这一攻击的中国安全研究员Xudong Zheng创建的,点击去看看。

如果你的浏览器显示的地址是“apple.com”,并有SSL安全认证的,但是页面内容却来自另一个服务器(如上图所示),那么你的浏览器就易遭受“同形异义字攻击”。

Wordfence的安全专家们也创建了另一个PoC网站,展示了同一个漏洞;这个网站仿冒的是“epic.com”的域。用Chrome、Firefox来访问,看看是不是很神奇?

同形异义字攻击自2001年以来就已为人所知,但是浏览器厂商修复该问题的过程却很艰难。这种欺骗攻击就是网址看起来是合法的,但实际上不是,因为其中的一个字符或者多个字符已经被Unicode字符代替了。

许多Unicode字符,代表的是国际化的域名中的希腊、斯拉夫、亚美尼亚字母,看起来跟拉丁字母一样,但是计算机却会把他们处理成完全不一样网的网址。

比如说,斯拉夫字母“а” (U+0430)和拉丁字母“a”(U+0041)会被浏览器处理成不同的字符,但是在地址栏当中都显示为“a”。

Punycode钓鱼攻击

在默认情况下,许多web浏览器使用“Punycode”编码来表示URL中的Unicode字符,以防止同形异义字钓鱼攻击。Punycode是浏览器使用的特殊编码,目的是将Unicode字符转义成字符数目有限的ASCII 码字符集(A-Z,0-9),由国际化域名(IDN)系统支持。

比如说,中文域名“短.co”用Punycode来表示就是“xn--s7y.co”。

根据Zheng的博客,这个漏洞所依赖的基础是:浏览器只将单一语言采用的Unicode编码转换为Ponycode URL (比如汉语或者日语),但是如果一个域名当中包含来自多个语言的字符,浏览器就无法分辨了。

研究人员利用这个漏洞注册了xn--80ak6aa92e.com域名,绕过了保护,并在所有存在上述漏洞的浏览器中显示为“apple.com”,包括Chrome、Firefox和Opera,不过IE、Edge、Safari、Brave、Vivaldi并不存在该漏洞。

此处的xn前缀是一个“ASCII兼容编码”前缀,意味着浏览器采用Punycode编码来代表Unicode字符,因为Zheng用到了斯拉夫语的“а” (U+0430)而非ASCII的“a”(U+0041),浏览器的防御措施也就失效了。

Zheng已于一月份向受影响的浏览器厂商报告了该问题,包括Google和Mozilla。Mozilla目前还在商讨解决方案,Google已经在Chrome Canary 59中修复了这一漏洞,而且会在本月晚些时候发布Chrome Stable 58时,给出永久的修复方案。

与此同时,建议可能受此钓鱼攻击影响的用户暂时关闭浏览器中的Punycode支持,来分辨钓鱼域名,缓解此攻击。

Firefox用户缓解方案

Firefox用户可根据以下步骤,手动开启缓解方法:

1. 在浏览器地址栏中输入about:config,并按回车键。

2. 在搜索栏中输入Punycode。

3. 浏览器设置将显示network.IDN_show_punycode参数,双击或者右键选择Toggle,将值改为“True”。

Chrome和Opera中并没有类似的设置,来手动关闭Punycode URL转义,所以Chrome用户请耐心等待几周,等待Stable 58发布。

同时也建议用户在手动输入重要网站URL,包括Gmail、Facebook、Twitter、Yahoo及银行网站,不要点击某些网站或者邮件当中的上述网站链接,避免遭遇此钓鱼攻击。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-04-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 FreeBuf 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Punycode钓鱼攻击
  • Firefox用户缓解方案
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档