<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>大千世界 &#187; DNS缓存</title>
	<atom:link href="http://www.zhangdaqian.net/blog/tag/dns%e7%bc%93%e5%ad%98/feed" rel="self" type="application/rss+xml" />
	<link>http://www.zhangdaqian.net</link>
	<description>Hold Infinity in the palm of your hand</description>
	<lastBuildDate>Tue, 17 Aug 2010 12:00:45 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.5</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>DNS缓存投毒细节泄露</title>
		<link>http://www.zhangdaqian.net/blog/dns%e7%bc%93%e5%ad%98%e6%8a%95%e6%af%92%e7%bb%86%e8%8a%82%e6%b3%84%e9%9c%b2.htm</link>
		<comments>http://www.zhangdaqian.net/blog/dns%e7%bc%93%e5%ad%98%e6%8a%95%e6%af%92%e7%bb%86%e8%8a%82%e6%b3%84%e9%9c%b2.htm#comments</comments>
		<pubDate>Thu, 30 Apr 2009 13:36:56 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[DNS缓存]]></category>
		<category><![CDATA[攻击]]></category>
		<category><![CDATA[转载]]></category>

		<guid isPermaLink="false">http://www.zhangdaqian.net/blog/dns%e7%bc%93%e5%ad%98%e6%8a%95%e6%af%92%e7%bb%86%e8%8a%82%e6%b3%84%e9%9c%b2.htm</guid>
		<description><![CDATA[昨天Mantasano上的一篇文章描述了Dan Kaminsky的DNS域名服务器攻击的细节。该文章发表了几分钟之后即被删掉了。 虽然Dan Kaminsky已经联合厂商发布了补丁，但是仍处于补丁推送阶段，目前仍有相当一部分域名服务器还没有打补丁。如果被恶意利用的话，对整个互联网还是很有威胁的。这也是为什么Dan 希望 &#8220;not speculate publicly&#8221;。 大概看了一下那篇hypothesis，基本上还是利用了&#8221;Cache 投毒&#8221;（cache poisoning）的方法，不过使用了一些新的技巧。 DNS查询是如何进行的？对于绝大多数桌面系统来说，DNS的查询并不是由自己的机器完成的，DNS查询会提交给另一台DNS服务器（这台服务器通常是由 ISP或者公司提供），然后这台服务器再去进行真正的查询操作。这样做的好处是DNS的查询结果可以由这台机器给缓存下来，从而提高查询效率并降低由 DNS带来的流量开销。 一台缓存DNS服务器（与权威DNS相对，这类系统提供的）下面的桌面系统可能有几百、几千、几万甚至几十万台桌面系统。 DNS缓存中毒攻击指的是更改了DNS服务器的DNS缓存中某项，这样缓存中与主机名相关的IP地址就不再指向正确的位置。例如，如果 www.example.com映射到IP地址192.168.0.1且DNS服务器的缓存中存在这个映射，则成功向这个服务器的DNS缓存投毒的攻击者就可以将www.example.com映射到10.0.0.1。在这种情况下，试图访问www.example.com的用户就可能与错误的Web服务器联络。 当攻击者试图请求查询某站点的域名时，DNS服务器首先会检查自己的DNS缓存中是否存在该域名，如果存在则将该域名所对应的IP地址返回给请求者，如果不存在则向上一级DNS或者权威DNS查询。这就会给攻击者带来一定的困难，如果是大一点的站点的话，攻击者发起DNS查询时，DNS服务器直接从缓存应答了，根本不会去请求权威域名服务器。怎么才能解决这个问题呢？云舒在他的DNS缓存中毒漏洞的一点推测中也提到过。 比如我们要攻击www.google.com.首先向目的DNS服务器查询根本不存在的二级域名，比如：aaa.google.com. DNS服务器在缓存中查找aaa.google.com,没有找到，则会向上级DNS或者权威DNS查询 。这时我们可以生成伪造的DNS Response数据包并发送这些的伪造DNS Response数据包给目的服务器。让目的DNS在上级DNS或者权威DNS服务器响应到达之前，接受到恶意的应答。 从表面上看这样只是截持了一个不存在的二级域名，只能用来钓钓鱼罢了。 其实DNS Response数据包可以不仅仅包含aaa.google.com的IP地址，还可以在DNS 数据包的Additional resource record中包含www.google.com的IP地址（当然该IP地址可以是伪造的）。当目的DNS收到该数据报时会将伪造的IP地址与 www.google.com关联起来并刷新到缓存上。这样就完成了主域名的截持。
Random Posts

作为一只猫，有时候要坚强的直面惨淡的猫生……
无知真可怕
浪潮之巅第一章 — 帝国的余辉（AT&#038;T)（二）
教室里的学生
Google 节日徽标全集 （1999-2009） （上）

]]></description>
			<content:encoded><![CDATA[<p>昨天Mantasano上的一篇文章描述了Dan Kaminsky的DNS域名服务器攻击的细节。该文章发表了几分钟之后即被删掉了。 <br/>虽然Dan Kaminsky已经联合厂商发布了补丁，但是仍处于补丁推送阶段，目前仍有相当一部分域名服务器还没有打补丁。如果被恶意利用的话，对整个互联网还是很有威胁的。这也是为什么Dan 希望 &#8220;not speculate publicly&#8221;。 <br/>大概看了一下那篇hypothesis，基本上还是利用了&#8221;Cache 投毒&#8221;（cache poisoning）的方法，不过使用了一些新的技巧。 <br/><span id="more-2187"><br/>DNS查询是如何进行的？对于绝大多数桌面系统来说，DNS的查询并不是由自己的机器完成的，DNS查询会提交给另一台DNS服务器（这台服务器通常是由 ISP或者公司提供），然后这台服务器再去进行真正的查询操作。这样做的好处是DNS的查询结果可以由这台机器给缓存下来，从而提高查询效率并降低由 DNS带来的流量开销。 <br/>一台缓存DNS服务器（与权威DNS相对，这类系统提供的）下面的桌面系统可能有几百、几千、几万甚至几十万台桌面系统。 <br/>DNS缓存中毒攻击指的是更改了DNS服务器的DNS缓存中某项，这样缓存中与主机名相关的IP地址就不再指向正确的位置。例如，如果 www.example.com映射到IP地址192.168.0.1且DNS服务器的缓存中存在这个映射，则成功向这个服务器的DNS缓存投毒的攻击者就可以将www.example.com映射到10.0.0.1。在这种情况下，试图访问www.example.com的用户就可能与错误的Web服务器联络。 <br/>当攻击者试图请求查询某站点的域名时，DNS服务器首先会检查自己的DNS缓存中是否存在该域名，如果存在则将该域名所对应的IP地址返回给请求者，如果不存在则向上一级DNS或者权威DNS查询。这就会给攻击者带来一定的困难，如果是大一点的站点的话，攻击者发起DNS查询时，DNS服务器直接从缓存应答了，根本不会去请求权威域名服务器。怎么才能解决这个问题呢？云舒在他的<a href="http://www.icylife.net/yunshu/show.php?id=586" target="_blank">DNS缓存中毒漏洞的一点推测</a>中也提到过。 <br/>比如我们要攻击www.google.com.首先向目的DNS服务器查询根本不存在的二级域名，比如：aaa.google.com. DNS服务器在缓存中查找aaa.google.com,没有找到，则会向上级DNS或者权威DNS查询 。这时我们可以生成伪造的DNS Response数据包并发送这些的伪造DNS Response数据包给目的服务器。让目的DNS在上级DNS或者权威DNS服务器响应到达之前，接受到恶意的应答。 <br/>从表面上看这样只是截持了一个不存在的二级域名，只能用来钓钓鱼罢了。 <br/>其实DNS Response数据包可以不仅仅包含aaa.google.com的IP地址，还可以在DNS 数据包的Additional resource record中包含www.google.com的IP地址（当然该IP地址可以是伪造的）。当目的DNS收到该数据报时会将伪造的IP地址与 www.google.com关联起来并刷新到缓存上。这样就完成了主域名的截持。</span></p>
<h3>Random Posts</h3>
<ul class="related_post">
<li><a href="http://www.zhangdaqian.net/blog/%e5%8a%a0%e8%8f%b2%e7%8c%ab%e7%9a%84%e4%ba%ba%e7%94%9f%e5%93%b2%e7%90%86.htm" title="加菲猫的人生哲理">加菲猫的人生哲理</a></li>
<li><a href="http://www.zhangdaqian.net/blog/%e8%a5%bf%e6%b8%b8%e8%ae%b0%e4%b8%8d%e6%98%af%e5%a5%87%e6%96%87%ef%bc%8c%e8%bf%99%e6%89%8d%e6%98%af.htm" title="西游记不是奇文，这才是">西游记不是奇文，这才是</a></li>
<li><a href="http://www.zhangdaqian.net/blog/%e6%b0%b4%e4%b8%80%e6%8a%8a.htm" title="水一把">水一把</a></li>
<li><a href="http://www.zhangdaqian.net/blog/monitor-hood.htm" title="显示器罩">显示器罩</a></li>
<li><a href="http://www.zhangdaqian.net/blog/vlc%e5%a4%aa%e6%81%b6%e5%bf%83%e4%ba%86.htm" title="vlc太恶心了">vlc太恶心了</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.zhangdaqian.net/blog/dns%e7%bc%93%e5%ad%98%e6%8a%95%e6%af%92%e7%bb%86%e8%8a%82%e6%b3%84%e9%9c%b2.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
