我们也来聊聊IDN

Introduction###


  文中首先对IDN的历史和研究进行了回顾，并从近日有关IDN的博客入手，利用DNS派的流量数据，使用轻量级的方法，对目前网络中的“形近异义”的IDN域名进行了测量研究，并对IDN域名目前在网络中的用途进行分析。研究发现，1）Alexa Top10K 域名中至少有83个域名的形近异义IDN域名在活跃，即相关的知名网站受到这种潜在的钓鱼攻击影响；2）我们发现了一起真实的利用IDN域名对Facebook进行钓鱼攻击的案例（www.xn--facebok-i01c.com）。网络安全研究院会持续跟进这项测量研究，希望借此提醒有关厂商，注意提高与其相关的IDN域名品牌保护意识。



Background###


1. IDN

  国际域名（Internationalized domain name, IDN）[1]，最早在1996年由Martin Durst提出并在1998年由Tan Juay kwang等人进行实现，是指在域名中包含至少一个特殊语言字母的域名，特殊语言包括中文、法文、拉丁文等。在DNS系统工作中，这种域名会被编码成ASCII字符串，并通过Punycode进行翻译。

  2008年，IETF成立了一个IDN工作组开始讨论更新IDNA的协议，并在2009年，ICANN （Internet Corporation for Assigned Names and Numbers）为了方便更多的native language用户使用互联网，批准在DNS体系中加入 IDN ccTLDs (internationalized country code top-level domains)。最终，于2010年，第一个IDN ccTLD被添加到DNS root zone 中。


2. Recent Reports

  最近有两个博客引起了大家的关注，在此我们先对两个博客的内容进行简单回顾。

  第一篇博客《一种几乎无法被检测的钓鱼攻击》[2]， 文中作者使用了IDN域名，使得用户点击URL后，浏览器地址栏显示的两个www.apple.com字符串几乎让用户无法区分，因此博客作者认为攻击这种钓鱼攻击几乎无法检测。 不过，我们在重现这一操作时，发现地址栏显示的内容（证书方面）是和用户的浏览器以及操作系统相关。（Trick Here：chrome所使用的字体在这个过程中也起到了一定的帮助作用。）

Source:thehackernews.com/2017/04/unicode-Punycode-phishing-attack.html


  第二篇博客《我好像进了一个假的alipay.com》[3]则更加直接，直接举了一个对支付宝网站进行钓鱼的例子: www.xn--80aa1cn6g67a.com。 当然，文章最后作者说明这个是腾讯的员工在恶搞阿里，但是也足以说明，这种钓鱼确实是可能存在的。(4月21日 EST，该网站已无法访问)。

Source:微信公众号 黑鸟


3. Previous Study

  我们提到，IDN域名从2010年就开始被加入DNS Root Zone中了，相关的研究也都迅速展开。在此同样我们也选取两个文章回顾一下以前的研究内容。

  第一篇文章《Out of Character: Use of Punycode and Homoglyph Attacks to Obfuscate URLs for Phishing Adrian Crenshaw》[4]（发表于2012年），YouTube演讲视频见[5]。 这篇文章研究了三种主流浏览器是如何显示IDN字符，并且研究了不同语言字符之间的混淆。作者还提供了一个工具Homoglyph Attack Generator 用于生成可能有问题的编码字符串。也就是说，从这里开始，已有研究者表明利用（abuse）IDN域名在浏览器中的显示问题，通过选择与知名网站“形近”的IDN域名是可以实现钓鱼攻击的。

  第二篇是由赛门铁克公司发布的一篇博客，《Bad Guys Using Internationalized Domain Names (IDNs)》[6]（发表于2014年)。这篇文章列出了大量真实IDN域名案例，主要阐述了IDN已经开始被滥用，以及被滥用的几个方面，包括恶意软件，僵尸网络等。 在文章的结尾，文章作者也预期IDN域名会迅速增长，并对品牌保护带来严重的负面影响。在这篇文章中作者对网络中大量真实IDN case的分析，但很遗憾没有做一个全面的测量。



Data Set###


1. Passive DNS

  360 netlab的拥有国内最大的公开Passive DNS数据库。基于此数据库可以方便的导出所有的IDN域名。目前相关数据也开始向可信单位及个人提供查询接口，具体申请流程请见[7]。本次实验数据取自近一周还在活跃的IDN域名。


2. Alexa Ranking

  文中提到的所有知名域名从Alexa Ranking Top 10K [8]的域名中选取。



Approach###


1. Goal

  针对目前DNS流量中，与知名网站“形近异义”的IDN域名进行测量研究。重点研究，此类IDN域名的数量及访问规模，受到潜在钓鱼影响的知名网站数量及类型，以及目前此类IDN域名在进行什么业务。 后续我们会补充IP地址关联性分析。


2. Idea

  目前近一周时间内，还在活跃的IDN域名超过一百万，因此网络爬虫、网页分析等常见检测手法在这里都不太适用。我们需要一个非常高效的算法检测他们是否与热门网站域名“形近异义”。我们算法的出发点便落在了“形近”上面。

  如下图所示，这个针对apple进行钓鱼的域名解码之后的字符串与原始字符串十分相近，换句话说，如果把这两个字符串保存成图片，那么这两个图片的相似度会非常高。从这一点出发，我们将Alexa Top10K的域名（SLD与“www.”+SLD ）的字符串分别保存为一个图片，建立一个图片库（共计两万张），并将100W+的IDN域名解码之后也分别保存为图片，并与图片库中进行对比，寻找相似图片。

Fig1：与apple.com形近异义的一个IDN域名


3. Tool

   在上述idea中涉及到两个部分，1）如何快速提取一个图片的特征[9]；2）如何快速找出相近图片[10]。 在图像识别领域，这些都是已经解决并且非常成熟的问题，具体实现原理请详见参考文献，我们不再赘述。



Results and Findings###


1. Overview


   受影响的网站分析

  通过分析我们发现，在Alexa Top 10K域名中已经有83个知名域名已经受到形近异义IDN域名的影响。分析数据并不包含已经被注册但是并未被使用的IDN域名数量，因此实际上受到影响网站会更多。这些网站涉及到多个国家，包括：美国，中国，加拿大，印度，韩国等国。已经有证据显示近日此类形近异义的IDN域名在明显增长。

  相关受到影响的域名详见链接[11]。其中部分网站的类形分析如下， 可以看到，除了搜索引擎，购物网站外，大量企业的域名也受到影响，甚至多个色情网站也受到这种IDN域名的影响。值得一提的是，两个知名的支付网站也存在形近异义类形的IDN域名。


Table 1: 受影响的知名网站类型分布




   Ranking分析

  我们同时也对这些域名的Alexa Ranking数值进行了分析，结果与经验一致，可能受到影响的网站密集的集中在Ranking数值非常高的部分。


Table 2: 受影响的知名网站Alexa Ranking数值分布




2. DNS Query Number


  我们提到，对于同一个热门域名，可能会有多个IDN域名与它形近异义。在这里，我们对这些IDN域名近一周的DNS请求量进行分析。结论如下：1）其中访问量最大的域名为“xn--80ak6aa92e.com” （针对apple.com进行钓鱼的域名），在最近一周访问超过3千次（预估中国全网访问次数超过3W次）。我们认为这个域名的请求量是受到了相关博客报导的激励而产生。2）其他一些比较热门的域名如：xn--pple-43d.com（针对apple.com钓鱼），xn--80aa1cn6g67a.com（针对alipay.com钓鱼）也存在数百的访问量。3）大量长尾IDN域名存在在网络中长期存活，但是访问量并没有真正起来。

Fig2： 部分IDN域名的在一周时间内DNS请求量


  针对于最热门的几个钓鱼域名，我们再详细看下他们DNS请求量的在一个月时间维度上面的变化情况。 很明显，最热门的三个IDN域名近期都出现很明显的陡增现象，这也印证了我们的猜测，即近期的相关报导激励了大量用户的访问。


Fig4：一个月时间内，三个IDN域名的请求量变化


3. Whois information


  截止目前，由于我们手上资源的限制，IDN域名类形的Whois信息并不全面。在此我们只通过一些例子来表明IDN域名的注册信息与真实域名注册信息的关系。 在下面的列出的6个例子中，仅有google.com一个域名IDN的注册邮箱和原域名的注册邮箱一致。其余的均有被抢注的嫌疑。尤其是伪造godaddy.com的IDN域名被一个少年在2015年用QQ邮箱抢注。更有意思的是，在搜索引擎中搜索这个QQ后你会想说[12][13]，多才多艺的少年，保重龙体啊！

  综合whois注册信息，我们确信，网络中大量形近异义类形的IDN域名已经被抢注，在后续的一段时间是有可能对知名的品牌造成滥用。360网络安全研究院会跟进这些信息，并提醒相关的公司如果有机会请利用Homoglyph Attack Generator这一工具将与自身利益相关的形近异义IDN域名迅速保护下来。


Table 3: 6个与知名网站的形近异义的IDN域名注册邮箱分析




4. What are they doing?


  上面我们提到，这次IDN域名的选取的数据集是从库里面取出的全量数据集（其中部分域名可能没有正确的解析结果）结合DNS query numebr的分析也可以看出，大部分的IDN域名其实都没有被用起来。这一行为可能是由于各个公司主动采取的品牌保护策略导致的（在攻击者之前，提前注册多种形近异义的IDN域名，并将解析依然指回原网站，比如xn--80aac5cct.com，访问后依然跳转到淘宝站点）。 也就是说，很可能大量现有的形近异义IDN域名都不是在做恶意的事情。

  现在我们也对这次survey中得到形近异义域名的行为做一分类（注：我们忽略了所有不能正常访问的IDN网站）。如下表，目前与知名网站形近异义的IDN域名主要用途包括：钓鱼，parking，品牌保护这几个方面。中国的一家网站也受到这种威胁的影响。 也就是说，尽管很多IDN域名的访问量没有攀升起来，但是我们非常确定以及有攻击者利用IDN域名在进行恶意活动，比如对著名社交网站（Facebook）进行钓鱼攻击。（感谢政府的帮忙，幸亏我没有账号）。


Table 4: “形近异义”的IDN域名的真实用途分析




下图是我们发现的利用IDN域名进行钓鱼攻击的案例。话说你都注册到这个域名了，做到这个份上了，好歹也开个HTTPS啊。

Fig5: 利用IDN域名进行钓鱼攻击的案例


  另外，www.xn--oogle-qmc.com （与Google.com形近）会将用户重定向到144.dragonparking.com（OS Safari环境），里面包含色情违法信息。www.xn--googl-r51b.com （与Google.com形近）也被用来做Parking Service。以上案例均已说明，确实已有攻击者注意到与热门域名“形近异义”的IDN域名，并利用这类域名进行灰色及攻击活动。


Fig6: 利用IDN域名进行Parking的案例


历史版本


4月21日 完稿

4月23日 小修



Reference###


[1] https://en.wikipedia.org/wiki/Internationalized_domain_name

[2] http://thehackernews.com/2017/04/unicode-Punycode-phishing-attack.html

[3] http://mp.weixin.qq.com/s?__biz=MzAxOTM1MDQ1NA==&mid=2451171974&idx=1&sn=1a75e940994052362caea57552d490c2

[4] http://www.irongeek.com/i.php?page=security/out-of-character-use-of-punycode-and-homoglyph-attacks-to-obfuscate-urls-for-phishing

[5] https://www.youtube.com/watch?v=Ie5Tyhrkca0

[6] https://www.bluecoat.com/security-blog/2014-05-22/bad-guys-using-internationalized-domain-names-idns

[7] https://passivedns.cn

[8] http://s3.amazonaws.com/alexa-static/top-1m.csv.zip

[9] https://pypi.python.org/pypi/ImageHash

[10] https://pypi.python.org/pypi/six

[11] https://docs.google.com/spreadsheets/d/1khEWMi9D90ZpyUQ

LSXCCVV8p5GImjIth1ix0EmmxQu8/edit?usp=sharing

[12] https://tieba.baidu.com/p/917190685

[13] https://baike.1688.com/doc/view-d21042617.html