Conficker域名被滥用情况分析
<!--kg-card-begin: markdown--><p>根据对conficker域名的跟踪，我们发现conficker的域名存在明显的滥用。主要表现为浏览器访问conficker域名后，会跳转到广告页面（既有正常业务，也有赌博/色情等灰色业务），有时候还会存在一些垃圾软件（比如虚假的杀毒软件）的推广等。</p>
<p>由于conficker的DGA域名的巨大数量，我们希望了解产生这种状况的原因以及其现在的规模。</p>
<h2 id="conficker">Conficker域名现状及被滥用状况</h2>
<h3 id="conficker">Conficker简介</h3>
<p>Conficker是出现于2008年11月，曾感染了数百万台电脑。Conficker有一个独特的特性是它使用了DGA技术。利用随机生成的域名来防止网络设备的封堵。自此以后DGA技术也开始逐渐流行起来。关于conficker和DGA的细节，请参考<sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup> <sup class="footnote-ref"><a href="#fn2" id="fnref2">[2]</a></sup>。</p>
<h3 id="passviedns">校验数据集及passvieDNS中的命中情况</h3>
<p>我们选取了2010-01-01到2016-09-15这段时间内，由conficker.a 和conficker.b生成的全部的DGA域名作为数据全集，共1225000条域名。</p>
<p>检查这些域名在passiveDNS中的命中情况。排除NXDOMAIN之外，总共命中了216352条。约占总数的17.67%。实际情况中，还有大量的conficker域名返回的是NXDOMAIN，因为并不是所有的conficker域名都被sinkhole。</p>
<p>在这些命中的域名中，按照sinkhole的NS服务器的名字进行区分，每种NS服务器的sinkhole的域名数量分布如下：</p>
<table>
<tr>
<th>Count</th>
<th>Type</th>
<th>NS Server</th>
</tr>
<tr>
<td>1892</td>
<td>parkingdomains</td>
<td>N/A</td>
</tr>
<tr>
<td>23915</td>
<td>cndomains</td>
<td>ns.conficker-sinkhole.cn</td>
</tr>
<tr>
<td>98182</td>
<td>com_net_org_domains</td>
<td>ns.conficker-sinkhole.com/net/org</td>
</tr>
<tr>
<td>15091</td>
<td>opendns_domains</td>
<td>146.112.61.105</td>
</tr>
<tr>
<td>40151</td>
<td>cwgsh_domains</td>
<td>ns.cwgsh.com/net/org</td>
</tr>
<tr>
<td>19731</td>
<td>0xc0f1c3a5_domains</td>
<td>ns.0xc0f1c3a5.com/org</td>
</tr>
<tr>
<td>17390</td>
<td>unclassifed_domain</td>
<td>N/A</td>
</tr>
</table>
<p><img src="__GHOST_URL__/content/images/2016/09/conficker-sinkhole-distribution.png" alt="" loading="lazy"> <em>图1 不同sinkhole所解析的conficker域名分布数量</em></p>
<p>上图列出针对conficker的DGA域名的主要sinkhole占比情况，还有一些很小的sinkhole没有列出来。包括honeybot.us, sinkhole.ru等。由于它们对应的域名的数量很少，不再单独进行分类，统一合并到unclassified类型中。</p>
<p>在unclassified的数据中，除了少量的sinkhole域名以及同样少量的NXDOMAIN被篡改为有效的IP（原因主要是各种ISP的不规范行为）之外，剩余的部分主要是与conficker域名冲突的正常业务的域名。</p>
<p>处于parking/reselling状态的域名则是其NS服务器为parking的NS服务器。<br>
在我们的数据中，ns.conficker-sinkhole.cn与ns.conficker-sinkhole.com/net/org占的数量巨大，占到总份额的56%。是预防conficker扩散的主力军。</p>
<p>ns.cwgsh.com/net/org与ns.0xc0f1c3a5.com/org是由Microsoft及其关联方针对conficker DGA域名的sinkhole。它们的占比也达到了28%。</p>
<p>OpenDNS和传统的sinkhole手段不同，它针对conficker的域名请求，在OpenDNS的resolver上设置了这些域名的黑名单，如果resolver发现请求的域名位列黑名单中，则返回一个提示性页面，这也是使用DNS提供安全服务的一种常见的手段。这个数量如上图所示，大概在7%左右。</p>
<h3 id="">哪些数据被滥用？</h3>
<p>在上面列出的各个种类中，由ns.cwgsh.com/net/org解析的conficker DGA域名是被滥用的主体。</p>
<p>如上一节所提，通过查询WHOIS发现，ns.cwgsh.com/net/org与ns.0xc0f1c3a5.com/org所sinkhole的域名的注册邮箱都是cflicker@live.com。但是注册人分别为“Conficker Cabal/ Microsoft”与” Conficker Holding Account/ Afilias”。另外cwgsh服务的域名注册时间在2009年，0xc0f1c3a5服务的域名注册时间在2011年。它们所解析的域名分别在2010年与2011年有效。另外它们只解析TLD为<strong>org，info</strong>为后缀的conficker域名。</p>
<p>尽管使用的是同一个注册邮箱，但是由于使用的NS服务器不同。它们解析的域名在被滥用方面却并不相同。其实0xc0f1c3a5.org/net/com也存在相应的问题。0xc0f1c3a5.org/net/com当中只有org域名是有效的，com/net两个域名无效。但是由于org域名一直保持更新（AUTORENEWPERIOD），因此它是一个有效的域名，所以它解析的域名解析是正常的。</p>
<p>滥用部分主要集中在NS服务器为ns.cwgsh.com/net/org的conficker域名上。这三个域名是由shandowserver注册的，在注册一年之后（2011-03-04），由于没有续费，NS服务器被切换到NS1/2.RENEWYOURNAME.NET。在此之后，这个域名就处在parking/reselling状态，在不同的注册商之间颠沛流离<sup class="footnote-ref"><a href="#fn3" id="fnref3">[3]</a></sup>。它们负责解析的conficker域名也就无法继续被正常的解析和使用。</p>
<h3 id="">滥用域名的数量</h3>
<p>从conficker域名的生效日期来看，每天的数据量相差不大，只有2010年10月份的数据要稍高一点。如图1所示，滥用规模占整个conficker.a conficker.b的有效记录总数的近20% 。<br>
<img src="__GHOST_URL__/content/images/2016/09/abuse_dn_num.png" alt="" loading="lazy"> <em>图2 滥用的conficker域名的有效日期分布</em></p>
<p>从每个conficker域名的DNS请求量来看，这个数量并不大。访问数量在43以下的，已经占到所有的数据的98.5%。50以下的占到99%。整体来看，访问量比较偏少。<br>
<img src="__GHOST_URL__/content/images/2016/09/DNS-request-number.jpg" alt="" loading="lazy"> <em>图3 滥用的conficker域名的访问量分布</em></p>
<p>从访问来源来看，从2014年10月份开始到2016年8月23日，我们总共看到了5300+个独立的访问源。<br>
从地理位置上来看，主要分布在国内。有少量的欧洲和南美的访问。<br>
<img src="__GHOST_URL__/content/images/2016/09/geo.png" alt="" loading="lazy"> <em>图4 滥用的conficker访问源的地理分布</em></p>
<p>从访问时间来看，最早的数据访问记录在2014年的10月（真实情况可能比这个时间更早）。大规模的访问是从2015年8月中旬开始的。从那时起每日访问的域名平均在1000个左右。访问的日期分布如下：<br>
<img src="__GHOST_URL__/content/images/2016/09/access_count_daily.png" alt="" loading="lazy"> <em>图5 滥用的conficker访问日期分布</em></p>
<h3 id="">访问的原因</h3>
<p>由于被访的Conficker域名生效时间在2010年。在时隔5~6年之后的今天，理论上是不会有conficker的受害用户对这种域名再进行访问的。是什么原因导致产生这种访问呢？<br>
根据我们对DNS请求来源的调查发现，现在每天至少有50~70个独立的用户会发起这些过期域名的请求。并且在这些用户当中，大约有65%~80%的用户即会访问新的（比如2016年当天生成的）conficker域名，同时也会访问2010年老的conficker域名。也就是说大多数的conficker受害用户是产生这种访问的主要原因。至于为什么会有这种怪异的请求出现，现在尚不清楚。另外还有20%~30%的用户则只请求2010年的conficker域名，这部分访问量的产生也需要进一步分析。</p>
<h2 id="">域名接管及后续数据流</h2>
<p>现在我们来了解一下这些conficker域名是如何从sinkhole状态转到给垃圾广告导流的。</p>
<h3 id="">域名的接管</h3>
<p>从DNS角度来看，要接管一个域名，接管它的NS服务器就可以了。这些conficker域名就是这样转变的。</p>
<p>由于conficker的DGA域名的最初的NS服务器NS.CWGSH.COM/NET/ORG这三个域名在2011年2月28日到期之后，没有再进行续费。导致这三个域名就进入了注册商的reselling/parking列表。而使用这些NS服务器的DGA域名（后缀为info/org）的解析状态进入不确定的状态。</p>
<p>就目前（2016.08.30）来看，cwgsh.com是比较“纯粹”的处在saling状态的域名。尽管这个页面上也会放置一些广告。<br>
cwgsh.org现在则是一个XX网站，也比较纯粹。<br>
ns.cwgsh.net是引起conficker转变的根源。它现在作为ns服务器，针对任何请求（合法或者非法的域名），均会返回固定的四条记录（以360.com和一个非法的域名作为例子）。<br>
<img src="__GHOST_URL__/content/images/2016/09/cwgsh.net.jpg" alt="" loading="lazy"> <em>图6 ns.cwgsh.net针对任意请求均返回相同的应答结果</em></p>
<p>不过奇怪的是conficker域名的whois状态貌似在一直更新。并且和2010年主要注册信息（Name,email,organization,address, NS server）比对来看，均没有发生太大的变化。看起来域名所有者一直在保持更新。</p>
<h3 id="">数据流</h3>
<p>是时候来看一下从这些老的conficker域名开始的web数据流向了（针对有些session做了删减，但并不影响整个业务流程）。<br>
<img src="__GHOST_URL__/content/images/2016/09/fiddler.png" alt="" loading="lazy"> <em>图7 conficker的web流程</em></p>
<ol>
<li>lixfley.info是20100408的conficker.a的域名，针对lixfley.info的请求会解析到86.107.110.247（Romania/RO	&quot;AS8708 RCS &amp; RDS&quot;）。</li>
<li>之后是一个http 302的跳转，跳转到youforgottorenewyourhosting.com。从这个域名的词法来看，它是一个专门用来做过期域名跳转生意的。它对应的IP地址为192.232.208.138（United States/US Houston	&quot;AS46606 Unified Layer&quot;）。</li>
<li>针对第二条的应答，仍然是一个302跳转，跳转目标为初始域名加一个tclub的前缀。它的应答除了包含常规的流量统计之外（第5条会话的请求），还包含了针对第8条会话的请求，这是它真正下一步的目的地。</li>
<li>在第8条会话中，我们可以看到在它的URL中包含了ww9开头的后接初始请求域名的形式。在sucuri的一篇blog<sup class="footnote-ref"><a href="#fn4" id="fnref4">[4]</a></sup>中提到了ww2后接初始请求的域名形式。事实上这种请求域名形式完全依赖于第三条会话的返回内容。类似的形式包括”in/ww2/ww9/blog”等前缀形式。具体每种形式的前缀的含义现在还不清楚，猜测可能是标识不同的广告系统，另外这个前缀形式也需要体现在DNS的配置当中，具体参见上一节的DNS解析记录。</li>
<li>在从第12条之后的会话过程便是ADnetwork的过程了。整个过程非常复杂，不停地在不同的页面之间进行跳转。上图隐藏的31~88会话均是这个过程。</li>
<li>第80条是整个跳转链的结尾。上图的会话展示的是一个游戏站点。事实上跳转链结尾的站点（也就是广告主）的类型多种多样，既包含正规站点，也包含处于灰色地带的色情站点/虚假杀毒软件等站点。</li>
</ol>
<h3 id="">基础设施</h3>
<p>在针对conficker的DGA域名的滥用过程中，针对第一步跳转IP及这些域名的NS服务器。我们分别对其NS server和IP进行总结：</p>
<p>NS server:<br>
ns[1-4].888dns.net<br>
ns[1-3].dnskarma.com</p>
<p>IP:<br>
195.22.126.212<br>
195.22.126.213<br>
166.78.101.108<br>
213.184.126.162<br>
213.184.126.163<br>
50.57.203.17<br>
5.79.74.75<br>
64.71.74.227<br>
77.247.178.109<br>
86.107.110.247<br>
91.92.110.2</p>
<h1 id="">结论</h1>
<p>这是一起典型的由于NS服务器运营不当，在过期之后被他人接手导致原先这个NS服务器所服务的域名统统被接管的案例。只不过这个NS服务器所解析的域名是conficker的DGA域名，所以它尤显重要，所造成的问题也更显突出。</p>
<p>现在的parking/reselling状态的域名也存在诸多的乱象，很多恶意软件的分发中都存在这部分域名的影子。针对它们的分析也是我们后续工作的重点。</p>
<p>在sinkhole的运作方面也有很多值得思考的问题。后续我们会对不同类别的DGA以及非DGA域名被sinkhole的情况做进一步的分析。</p>
<h1 id="">参考资料</h1>
<hr class="footnotes-sep">
<section class="footnotes">
<ol class="footnotes-list">
<li id="fn1" class="footnote-item"><p><a href="https://en.wikipedia.org/wiki/Conficker">https://en.wikipedia.org/wiki/Conficker</a> <a href="#fnref1" class="footnote-backref">↩︎</a></p>
</li>
<li id="fn2" class="footnote-item"><p><a href="https://en.wikipedia.org/wiki/Domain_generation_algorithm">https://en.wikipedia.org/wiki/Domain_generation_algorithm</a> <a href="#fnref2" class="footnote-backref">↩︎</a></p>
</li>
<li id="fn3" class="footnote-item"><p><a href="https://research.domaintools.com/research/whois-history/search/?q=cwgsh.com#changes">https://research.domaintools.com/research/whois-history/search/?q=cwgsh.com#changes</a> <a href="#fnref3" class="footnote-backref">↩︎</a></p>
</li>
<li id="fn4" class="footnote-item"><p><a href="https://blog.sucuri.net/2016/07/fake-freedns-used-to-redirect-traffic-to-malicious-sites.html">https://blog.sucuri.net/2016/07/fake-freedns-used-to-redirect-traffic-to-malicious-sites.html</a> <a href="#fnref4" class="footnote-backref">↩︎</a></p>
</li>
</ol>
</section>
<!--kg-card-end: markdown-->
根据对conficker域名的跟踪，我们发现conficker的域名存在明显的滥用。主要表现为浏览器访问conficker域名后，会跳转到广告页面（既有正常业务，也有赌博/色情等灰色业务），有时候还会存在一些垃圾软件（比如虚假的杀毒软件）的推广等。


由于conficker的DGA域名的巨大数量，我们希望了解产生这种状况的原因以及其现在的规模。



Conficker域名现状及被滥用状况



Conficker简介


Conficker是出现于2008年11月，曾感染了数百万台电脑。Conficker有一个独特的特性是它使用了DGA技术。利用随机生成的域名来防止网络设备的封堵。自此以后DGA技术也开始逐渐流行起来。关于conficker和DGA的细节，请参考[1] [2]。



校验数据集及passvieDNS中的命中情况


我们选取了2010-01-01到2016-09-15这段时间内，由conficker.a 和conficker.b生成的全部的DGA域名作为数据全集，共1225000条域名。


检查这些域名在passiveDNS中的命中情况。排除NXDOMAIN之外，总共命中了216352条。约占总数的17.67%。实际情况中，还有大量的conficker域名返回的是NXDOMAIN，因为并不是所有的conficker域名都被sinkhole。


在这些命中的域名中，按照sinkhole的NS服务器的名字进行区分，每种NS服务器的sinkhole的域名数量分布如下：




Count
Type
NS Server


1892
parkingdomains
N/A


23915
cndomains
ns.conficker-sinkhole.cn


98182
com_net_org_domains
ns.conficker-sinkhole.com/net/org


15091
opendns_domains
146.112.61.105


40151
cwgsh_domains
ns.cwgsh.com/net/org


19731
0xc0f1c3a5_domains
ns.0xc0f1c3a5.com/org


17390
unclassifed_domain
N/A




图1 不同sinkhole所解析的conficker域名分布数量


上图列出针对conficker的DGA域名的主要sinkhole占比情况，还有一些很小的sinkhole没有列出来。包括honeybot.us, sinkhole.ru等。由于它们对应的域名的数量很少，不再单独进行分类，统一合并到unclassified类型中。


在unclassified的数据中，除了少量的sinkhole域名以及同样少量的NXDOMAIN被篡改为有效的IP（原因主要是各种ISP的不规范行为）之外，剩余的部分主要是与conficker域名冲突的正常业务的域名。


处于parking/reselling状态的域名则是其NS服务器为parking的NS服务器。

在我们的数据中，ns.conficker-sinkhole.cn与ns.conficker-sinkhole.com/net/org占的数量巨大，占到总份额的56%。是预防conficker扩散的主力军。


ns.cwgsh.com/net/org与ns.0xc0f1c3a5.com/org是由Microsoft及其关联方针对conficker DGA域名的sinkhole。它们的占比也达到了28%。


OpenDNS和传统的sinkhole手段不同，它针对conficker的域名请求，在OpenDNS的resolver上设置了这些域名的黑名单，如果resolver发现请求的域名位列黑名单中，则返回一个提示性页面，这也是使用DNS提供安全服务的一种常见的手段。这个数量如上图所示，大概在7%左右。



哪些数据被滥用？


在上面列出的各个种类中，由ns.cwgsh.com/net/org解析的conficker DGA域名是被滥用的主体。


如上一节所提，通过查询WHOIS发现，ns.cwgsh.com/net/org与ns.0xc0f1c3a5.com/org所sinkhole的域名的注册邮箱都是cflicker@live.com。但是注册人分别为“Conficker Cabal/ Microsoft”与” Conficker Holding Account/ Afilias”。另外cwgsh服务的域名注册时间在2009年，0xc0f1c3a5服务的域名注册时间在2011年。它们所解析的域名分别在2010年与2011年有效。另外它们只解析TLD为org，info为后缀的conficker域名。


尽管使用的是同一个注册邮箱，但是由于使用的NS服务器不同。它们解析的域名在被滥用方面却并不相同。其实0xc0f1c3a5.org/net/com也存在相应的问题。0xc0f1c3a5.org/net/com当中只有org域名是有效的，com/net两个域名无效。但是由于org域名一直保持更新（AUTORENEWPERIOD），因此它是一个有效的域名，所以它解析的域名解析是正常的。


滥用部分主要集中在NS服务器为ns.cwgsh.com/net/org的conficker域名上。这三个域名是由shandowserver注册的，在注册一年之后（2011-03-04），由于没有续费，NS服务器被切换到NS1/2.RENEWYOURNAME.NET。在此之后，这个域名就处在parking/reselling状态，在不同的注册商之间颠沛流离[3]。它们负责解析的conficker域名也就无法继续被正常的解析和使用。



滥用域名的数量


从conficker域名的生效日期来看，每天的数据量相差不大，只有2010年10月份的数据要稍高一点。如图1所示，滥用规模占整个conficker.a conficker.b的有效记录总数的近20% 。

图2 滥用的conficker域名的有效日期分布


从每个conficker域名的DNS请求量来看，这个数量并不大。访问数量在43以下的，已经占到所有的数据的98.5%。50以下的占到99%。整体来看，访问量比较偏少。

图3 滥用的conficker域名的访问量分布


从访问来源来看，从2014年10月份开始到2016年8月23日，我们总共看到了5300+个独立的访问源。

从地理位置上来看，主要分布在国内。有少量的欧洲和南美的访问。

图4 滥用的conficker访问源的地理分布


从访问时间来看，最早的数据访问记录在2014年的10月（真实情况可能比这个时间更早）。大规模的访问是从2015年8月中旬开始的。从那时起每日访问的域名平均在1000个左右。访问的日期分布如下：

图5 滥用的conficker访问日期分布



访问的原因


由于被访的Conficker域名生效时间在2010年。在时隔5~6年之后的今天，理论上是不会有conficker的受害用户对这种域名再进行访问的。是什么原因导致产生这种访问呢？

根据我们对DNS请求来源的调查发现，现在每天至少有50~70个独立的用户会发起这些过期域名的请求。并且在这些用户当中，大约有65%~80%的用户即会访问新的（比如2016年当天生成的）conficker域名，同时也会访问2010年老的conficker域名。也就是说大多数的conficker受害用户是产生这种访问的主要原因。至于为什么会有这种怪异的请求出现，现在尚不清楚。另外还有20%~30%的用户则只请求2010年的conficker域名，这部分访问量的产生也需要进一步分析。



域名接管及后续数据流


现在我们来了解一下这些conficker域名是如何从sinkhole状态转到给垃圾广告导流的。



域名的接管


从DNS角度来看，要接管一个域名，接管它的NS服务器就可以了。这些conficker域名就是这样转变的。


由于conficker的DGA域名的最初的NS服务器NS.CWGSH.COM/NET/ORG这三个域名在2011年2月28日到期之后，没有再进行续费。导致这三个域名就进入了注册商的reselling/parking列表。而使用这些NS服务器的DGA域名（后缀为info/org）的解析状态进入不确定的状态。


就目前（2016.08.30）来看，cwgsh.com是比较“纯粹”的处在saling状态的域名。尽管这个页面上也会放置一些广告。

cwgsh.org现在则是一个XX网站，也比较纯粹。

ns.cwgsh.net是引起conficker转变的根源。它现在作为ns服务器，针对任何请求（合法或者非法的域名），均会返回固定的四条记录（以360.com和一个非法的域名作为例子）。

图6 ns.cwgsh.net针对任意请求均返回相同的应答结果


不过奇怪的是conficker域名的whois状态貌似在一直更新。并且和2010年主要注册信息（Name,email,organization,address, NS server）比对来看，均没有发生太大的变化。看起来域名所有者一直在保持更新。



数据流


是时候来看一下从这些老的conficker域名开始的web数据流向了（针对有些session做了删减，但并不影响整个业务流程）。

图7 conficker的web流程


 1. lixfley.info是20100408的conficker.a的域名，针对lixfley.info的请求会解析到86.107.110.247（Romania/RO "AS8708 RCS & RDS"）。
 2. 之后是一个http 302的跳转，跳转到youforgottorenewyourhosting.com。从这个域名的词法来看，它是一个专门用来做过期域名跳转生意的。它对应的IP地址为192.232.208.138（United States/US Houston "AS46606 Unified Layer"）。
 3. 针对第二条的应答，仍然是一个302跳转，跳转目标为初始域名加一个tclub的前缀。它的应答除了包含常规的流量统计之外（第5条会话的请求），还包含了针对第8条会话的请求，这是它真正下一步的目的地。
 4. 在第8条会话中，我们可以看到在它的URL中包含了ww9开头的后接初始请求域名的形式。在sucuri的一篇blog[4]中提到了ww2后接初始请求的域名形式。事实上这种请求域名形式完全依赖于第三条会话的返回内容。类似的形式包括”in/ww2/ww9/blog”等前缀形式。具体每种形式的前缀的含义现在还不清楚，猜测可能是标识不同的广告系统，另外这个前缀形式也需要体现在DNS的配置当中，具体参见上一节的DNS解析记录。
 5. 在从第12条之后的会话过程便是ADnetwork的过程了。整个过程非常复杂，不停地在不同的页面之间进行跳转。上图隐藏的31~88会话均是这个过程。
 6. 第80条是整个跳转链的结尾。上图的会话展示的是一个游戏站点。事实上跳转链结尾的站点（也就是广告主）的类型多种多样，既包含正规站点，也包含处于灰色地带的色情站点/虚假杀毒软件等站点。



基础设施


在针对conficker的DGA域名的滥用过程中，针对第一步跳转IP及这些域名的NS服务器。我们分别对其NS server和IP进行总结：


NS server:

ns[1-4].888dns.net

ns[1-3].dnskarma.com


IP:

195.22.126.212

195.22.126.213

166.78.101.108

213.184.126.162

213.184.126.163

50.57.203.17

5.79.74.75

64.71.74.227

77.247.178.109

86.107.110.247

91.92.110.2



结论


这是一起典型的由于NS服务器运营不当，在过期之后被他人接手导致原先这个NS服务器所服务的域名统统被接管的案例。只不过这个NS服务器所解析的域名是conficker的DGA域名，所以它尤显重要，所造成的问题也更显突出。


现在的parking/reselling状态的域名也存在诸多的乱象，很多恶意软件的分发中都存在这部分域名的影子。针对它们的分析也是我们后续工作的重点。


在sinkhole的运作方面也有很多值得思考的问题。后续我们会对不同类别的DGA以及非DGA域名被sinkhole的情况做进一步的分析。



参考资料






 1. https://en.wikipedia.org/wiki/Conficker ↩︎
    

 2. https://en.wikipedia.org/wiki/Domain_generation_algorithm ↩︎
    

 3. https://research.domaintools.com/research/whois-history/search/?q=cwgsh.com#changes ↩︎
    

 4. https://blog.sucuri.net/2016/07/fake-freedns-used-to-redirect-traffic-to-malicious-sites.html ↩︎
    


{"version":"0.3.1","markups":[],"atoms":[],"cards":[["markdown",{"cardName":"card-markdown","markdown":"根据对conficker域名的跟踪，我们发现conficker的域名存在明显的滥用。主要表现为浏览器访问conficker域名后，会跳转到广告页面（既有正常业务，也有赌博/色情等灰色业务），有时候还会存在一些垃圾软件（比如虚假的杀毒软件）的推广等。\n\n由于conficker的DGA域名的巨大数量，我们希望了解产生这种状况的原因以及其现在的规模。\n\n##Conficker域名现状及被滥用状况\n\n###Conficker简介\nConficker是出现于2008年11月，曾感染了数百万台电脑。Conficker有一个独特的特性是它使用了DGA技术。利用随机生成的域名来防止网络设备的封堵。自此以后DGA技术也开始逐渐流行起来。关于conficker和DGA的细节，请参考[^1] [^2]。\n\n###校验数据集及passvieDNS中的命中情况\n\n我们选取了2010-01-01到2016-09-15这段时间内，由conficker.a 和conficker.b生成的全部的DGA域名作为数据全集，共1225000条域名。\n\n检查这些域名在passiveDNS中的命中情况。排除NXDOMAIN之外，总共命中了216352条。约占总数的17.67%。实际情况中，还有大量的conficker域名返回的是NXDOMAIN，因为并不是所有的conficker域名都被sinkhole。\n\n在这些命中的域名中，按照sinkhole的NS服务器的名字进行区分，每种NS服务器的sinkhole的域名数量分布如下：\n<table>\n<tr>\n<th>Count</th>\n<th>Type</th>\n<th>NS Server</th>\n</tr>\n\n<tr>\n<td>1892</td>\n<td>parkingdomains</td>\n<td>N/A</td>\n</tr>\n\n<tr>\n<td>23915</td>\n<td>cndomains</td>\n<td>ns.conficker-sinkhole.cn</td>\n</tr>\n\n<tr>\n<td>98182</td>\n<td>com_net_org_domains</td>\n<td>ns.conficker-sinkhole.com/net/org</td>\n</tr>\n\n<tr>\n<td>15091</td>\n<td>opendns_domains</td>\n<td>146.112.61.105</td>\n</tr>\n\n<tr>\n<td>40151</td>\n<td>cwgsh_domains</td>\n<td>ns.cwgsh.com/net/org</td>\n</tr>\n\n<tr>\n<td>19731</td>\n<td>0xc0f1c3a5_domains</td>\n<td>ns.0xc0f1c3a5.com/org</td>\n</tr>\n\n<tr>\n<td>17390</td>\n<td>unclassifed_domain</td>\n<td>N/A</td>\n</tr>\n</table>\n\n![](__GHOST_URL__/content/images/2016/09/conficker-sinkhole-distribution.png) *图1 不同sinkhole所解析的conficker域名分布数量*\n\n上图列出针对conficker的DGA域名的主要sinkhole占比情况，还有一些很小的sinkhole没有列出来。包括honeybot.us, sinkhole.ru等。由于它们对应的域名的数量很少，不再单独进行分类，统一合并到unclassified类型中。\n\n在unclassified的数据中，除了少量的sinkhole域名以及同样少量的NXDOMAIN被篡改为有效的IP（原因主要是各种ISP的不规范行为）之外，剩余的部分主要是与conficker域名冲突的正常业务的域名。\n\n处于parking/reselling状态的域名则是其NS服务器为parking的NS服务器。\n在我们的数据中，ns.conficker-sinkhole.cn与ns.conficker-sinkhole.com/net/org占的数量巨大，占到总份额的56%。是预防conficker扩散的主力军。\n\nns.cwgsh.com/net/org与ns.0xc0f1c3a5.com/org是由Microsoft及其关联方针对conficker DGA域名的sinkhole。它们的占比也达到了28%。\n\nOpenDNS和传统的sinkhole手段不同，它针对conficker的域名请求，在OpenDNS的resolver上设置了这些域名的黑名单，如果resolver发现请求的域名位列黑名单中，则返回一个提示性页面，这也是使用DNS提供安全服务的一种常见的手段。这个数量如上图所示，大概在7%左右。\n\n###哪些数据被滥用？\n在上面列出的各个种类中，由ns.cwgsh.com/net/org解析的conficker DGA域名是被滥用的主体。\n\n如上一节所提，通过查询WHOIS发现，ns.cwgsh.com/net/org与ns.0xc0f1c3a5.com/org所sinkhole的域名的注册邮箱都是cflicker@live.com。但是注册人分别为“Conficker Cabal/ Microsoft”与” Conficker Holding Account/ Afilias”。另外cwgsh服务的域名注册时间在2009年，0xc0f1c3a5服务的域名注册时间在2011年。它们所解析的域名分别在2010年与2011年有效。另外它们只解析TLD为**org，info**为后缀的conficker域名。\n\n尽管使用的是同一个注册邮箱，但是由于使用的NS服务器不同。它们解析的域名在被滥用方面却并不相同。其实0xc0f1c3a5.org/net/com也存在相应的问题。0xc0f1c3a5.org/net/com当中只有org域名是有效的，com/net两个域名无效。但是由于org域名一直保持更新（AUTORENEWPERIOD），因此它是一个有效的域名，所以它解析的域名解析是正常的。\n\n滥用部分主要集中在NS服务器为ns.cwgsh.com/net/org的conficker域名上。这三个域名是由shandowserver注册的，在注册一年之后（2011-03-04），由于没有续费，NS服务器被切换到NS1/2.RENEWYOURNAME.NET。在此之后，这个域名就处在parking/reselling状态，在不同的注册商之间颠沛流离[^3]。它们负责解析的conficker域名也就无法继续被正常的解析和使用。\n\n###滥用域名的数量\n从conficker域名的生效日期来看，每天的数据量相差不大，只有2010年10月份的数据要稍高一点。如图1所示，滥用规模占整个conficker.a conficker.b的有效记录总数的近20% 。\n![](__GHOST_URL__/content/images/2016/09/abuse_dn_num.png) *图2 滥用的conficker域名的有效日期分布*\n\n从每个conficker域名的DNS请求量来看，这个数量并不大。访问数量在43以下的，已经占到所有的数据的98.5%。50以下的占到99%。整体来看，访问量比较偏少。\n![](__GHOST_URL__/content/images/2016/09/DNS-request-number.jpg) *图3 滥用的conficker域名的访问量分布*\n\n从访问来源来看，从2014年10月份开始到2016年8月23日，我们总共看到了5300+个独立的访问源。\n从地理位置上来看，主要分布在国内。有少量的欧洲和南美的访问。\n![](__GHOST_URL__/content/images/2016/09/geo.png) *图4 滥用的conficker访问源的地理分布*\n\n从访问时间来看，最早的数据访问记录在2014年的10月（真实情况可能比这个时间更早）。大规模的访问是从2015年8月中旬开始的。从那时起每日访问的域名平均在1000个左右。访问的日期分布如下：\n![](__GHOST_URL__/content/images/2016/09/access_count_daily.png) *图5 滥用的conficker访问日期分布*\n\n###访问的原因\n\n由于被访的Conficker域名生效时间在2010年。在时隔5~6年之后的今天，理论上是不会有conficker的受害用户对这种域名再进行访问的。是什么原因导致产生这种访问呢？\n根据我们对DNS请求来源的调查发现，现在每天至少有50~70个独立的用户会发起这些过期域名的请求。并且在这些用户当中，大约有65%~80%的用户即会访问新的（比如2016年当天生成的）conficker域名，同时也会访问2010年老的conficker域名。也就是说大多数的conficker受害用户是产生这种访问的主要原因。至于为什么会有这种怪异的请求出现，现在尚不清楚。另外还有20%~30%的用户则只请求2010年的conficker域名，这部分访问量的产生也需要进一步分析。\n\n##域名接管及后续数据流\n现在我们来了解一下这些conficker域名是如何从sinkhole状态转到给垃圾广告导流的。\n###域名的接管\n从DNS角度来看，要接管一个域名，接管它的NS服务器就可以了。这些conficker域名就是这样转变的。\n\n由于conficker的DGA域名的最初的NS服务器NS.CWGSH.COM/NET/ORG这三个域名在2011年2月28日到期之后，没有再进行续费。导致这三个域名就进入了注册商的reselling/parking列表。而使用这些NS服务器的DGA域名（后缀为info/org）的解析状态进入不确定的状态。\n\n就目前（2016.08.30）来看，cwgsh.com是比较“纯粹”的处在saling状态的域名。尽管这个页面上也会放置一些广告。\ncwgsh.org现在则是一个XX网站，也比较纯粹。\nns.cwgsh.net是引起conficker转变的根源。它现在作为ns服务器，针对任何请求（合法或者非法的域名），均会返回固定的四条记录（以360.com和一个非法的域名作为例子）。\n![](__GHOST_URL__/content/images/2016/09/cwgsh.net.jpg) *图6 ns.cwgsh.net针对任意请求均返回相同的应答结果*\n\n不过奇怪的是conficker域名的whois状态貌似在一直更新。并且和2010年主要注册信息（Name,email,organization,address, NS server）比对来看，均没有发生太大的变化。看起来域名所有者一直在保持更新。\n\n###数据流\n是时候来看一下从这些老的conficker域名开始的web数据流向了（针对有些session做了删减，但并不影响整个业务流程）。\n![](__GHOST_URL__/content/images/2016/09/fiddler.png) *图7 conficker的web流程*\n\n1.\tlixfley.info是20100408的conficker.a的域名，针对lixfley.info的请求会解析到86.107.110.247（Romania/RO\t\"AS8708 RCS & RDS\"）。\n2.\t之后是一个http 302的跳转，跳转到youforgottorenewyourhosting.com。从这个域名的词法来看，它是一个专门用来做过期域名跳转生意的。它对应的IP地址为192.232.208.138（United States/US Houston\t\"AS46606 Unified Layer\"）。\n3.\t针对第二条的应答，仍然是一个302跳转，跳转目标为初始域名加一个tclub的前缀。它的应答除了包含常规的流量统计之外（第5条会话的请求），还包含了针对第8条会话的请求，这是它真正下一步的目的地。\n4.\t在第8条会话中，我们可以看到在它的URL中包含了ww9开头的后接初始请求域名的形式。在sucuri的一篇blog[^4]中提到了ww2后接初始请求的域名形式。事实上这种请求域名形式完全依赖于第三条会话的返回内容。类似的形式包括”in/ww2/ww9/blog”等前缀形式。具体每种形式的前缀的含义现在还不清楚，猜测可能是标识不同的广告系统，另外这个前缀形式也需要体现在DNS的配置当中，具体参见上一节的DNS解析记录。\n5.\t在从第12条之后的会话过程便是ADnetwork的过程了。整个过程非常复杂，不停地在不同的页面之间进行跳转。上图隐藏的31~88会话均是这个过程。\n6.\t第80条是整个跳转链的结尾。上图的会话展示的是一个游戏站点。事实上跳转链结尾的站点（也就是广告主）的类型多种多样，既包含正规站点，也包含处于灰色地带的色情站点/虚假杀毒软件等站点。\n\n###基础设施\n在针对conficker的DGA域名的滥用过程中，针对第一步跳转IP及这些域名的NS服务器。我们分别对其NS server和IP进行总结：\n\nNS server:\nns[1-4].888dns.net\nns[1-3].dnskarma.com\n\nIP: \n195.22.126.212\n195.22.126.213 \n166.78.101.108\n213.184.126.162\n213.184.126.163\n50.57.203.17\n5.79.74.75\n64.71.74.227\n77.247.178.109\n86.107.110.247\n91.92.110.2\n\n#结论\n这是一起典型的由于NS服务器运营不当，在过期之后被他人接手导致原先这个NS服务器所服务的域名统统被接管的案例。只不过这个NS服务器所解析的域名是conficker的DGA域名，所以它尤显重要，所造成的问题也更显突出。\n\n现在的parking/reselling状态的域名也存在诸多的乱象，很多恶意软件的分发中都存在这部分域名的影子。针对它们的分析也是我们后续工作的重点。\n\n在sinkhole的运作方面也有很多值得思考的问题。后续我们会对不同类别的DGA以及非DGA域名被sinkhole的情况做进一步的分析。\n\n#参考资料\n[^1]: https://en.wikipedia.org/wiki/Conficker\n[^2]: https://en.wikipedia.org/wiki/Domain\\_generation_algorithm\n[^3]: https://research.domaintools.com/research/whois-history/search/?q=cwgsh.com#changes\n[^4]: https://blog.sucuri.net/2016/07/fake-freedns-used-to-redirect-traffic-to-malicious-sites.html\n"}]],"sections":[[10,0]],"ghostVersion":"3.0"}