首 页 | 网页模板 | 教程 | 源码下载 | 书籍下载 | 图片素材 | 字体 | JAVA特效 | FLASH源码 | 软件 | 矢量 | 论坛 | 其它 |
设为主页
加入收藏
联系站长
平面设计 | 网页制作 | 程序编写 | 数 据 库 | 媒体动画 | 网络冲浪 | 服务器相关 |
当前在线
广告:P4服务器电信机房6999/年即送产权 | 疾风下载
RSS潜在安全隐患探讨 3
2005-11-3 7:43:53  作者:模板天下收集整理  来源:未知 网友评论 0 条 论坛
  3.ActiveX

  微软的ie之所以在很多领域受到欢迎,与ActiveX技术带来的方便与实用性分不开。但ActiveX也时常会出现一些漏洞。那么在RSS之中,这个令人又爱又恨的功能,是否可以被使用呢?下面的例子里,天缘试着调用了一个媒体播放器:

<?xml version="1.0" encoding="gb2312" ?> 
<rss version="2.0">
<channel>
 <title>伊人有约 喜欢稀饭BBS</title>
 <link>http://skylove.study-area.org/bbs/thread.php?fid=18</link>
 <description>拒绝浮躁,让我们沉寂下来认真学习</description>
 <copyright>Copyright(C)喜欢稀饭BBS</copyright>
 <managingEditor />
 <language>zh-cn</language>
 <ttl>10</ttl>
 <generator>喜欢稀饭BBS</generator>
<item>
<title>
<![CDATA[ [喜欢稀饭特别版]-------<<美丽心情>>-------- ]]>
 </title>
<description>
<![CDATA[  电台地址:<a href='http://skylove.study-area.org/ssqx/mlxq.mp3' target=_blank>http://skylove.study-area.org/ssqx/mlxq.mp
3</a><br/><br/><br/><br/><br/><br/><object class="OBJECT" id="MediaPlayer" width=336 height=256 classid="CLSID:22d6f312-b0f6-11d0-94
ab-0080c74c7e95" align="middle" height="256" width="314"><param value="-1" name="ShowStatusBar"><param value="http://skylove.study-a
rea.org/ssqx/mlxq.mp3" name="SRC"><embed type="application/x-oleobject" codebase="http://activex.microsoft.com/activex/controls/mpla
yer/en/nsmp2inf.cab#Version=5,1,52,701" flename="mp" src="http://skylove.study-area.org/ssqx/mlxq.mp3" width=314 height=256></embed>
<param name="AutoStart" value="1"></object><br/><br/><br/>制作剪辑:素手清弦<br/>感谢我的支持者:天缘(SKYLOVE)<br/><br/><br/><a href='
../../infoimages/images6/200511212222734.gif' TARGET=_blank><img src='http://bbs.oodiy.com/UploadFile/2005-4/200542612
595936.gif' border=0 alt='点击打开新窗口查看全图' onload='javascript:if(this.width>screen.width*0.7)this.width=screen.width*0.7'></a
><br/><br/><br/>PS:因为设备(软件)出了点问题,导致声音效果不太好,或者有些突兀,刺耳,请原谅;<br/>   ^_^
 ]]>
 </description>
 <link>http://skylove.study-area.org/bbs/read.php?tid=645</link>
 <comments>http://skylove.study-area.org/bbs/read.php?tid=645</comments>
 <guid>http://skylove.study-area.org/bbs/read.php?tid=645</guid>
<author>
<![CDATA[ 素手清弦 ]]>
 </author>
 <source url="http://skylove.study-area.org/bbs/read.php?tid=645">喜欢稀饭BBS</source>
 <pubDate>Sat, 04 Jun 2005 23:41:55 +0800</pubDate>
<category>
<![CDATA[ 伊人有约 喜欢稀饭BBS ]]>
 </category>
 </item>
 </channel>
</rss>

  测试的方法同样是保存为一个xml文件,然后在RSS浏览器中打开即可。在此例中,天缘引用了一个普通的mp3节目,而如果此功能被恶意利用,那么可能被包含的就是一个有漏洞的ActiveX控件,进而导致用户的防线被撕开,埋下安全的隐患。关于利用ActiveX漏洞进行攻击的文章是很多的,各位朋友以“ActiveX”、“漏洞”作为关键字,能搜索到不少的。

   4. 页面跳转

  有时候,我们常常在浏览某个网页的时候,被突然转到一个无关甚至有害的站点,这真的是很令人郁闷和危险的事情呢。而在使用RSS浏览器的时候,是否也会出现同样尴尬的事情呢?

<?xml version="1.0" encoding="gb2312" ?>
<rss version="2.0">
<channel>
 <title>伊人有约 喜欢稀饭BBS</title>
 <link>http://skylove.study-area.org/bbs/thread.php?fid=18</link>
 <description>拒绝浮躁,让我们沉寂下来认真学习</description>
 <copyright>Copyright(C)喜欢稀饭BBS</copyright>
 <managingEditor />
 <language>zh-cn</language>
 <ttl>10</ttl>
 <generator>喜欢稀饭BBS</generator>
<item>
<title>
<![CDATA[ [ 测试页面跳转 ]]>
 </title>
<description>
<![CDATA[ <script Language=JavaScript>window.location="http://skylove.study-area.org/bbs/";</script> ]]>
 </description>
 <link>http://skylove.study-area.org/bbs/read.php?tid=645</link>
 <comments>http://skylove.study-area.org/bbs/read.php?tid=645</comments>
 <guid>http://skylove.study-area.org/bbs/read.php?tid=645</guid>
<author>
<![CDATA[ skylove ]]>
 </author>
 <source url="http://skylove.study-area.org/bbs/read.php?tid=645">喜欢稀饭BBS</source>
 <pubDate>Sat, 04 Jun 2005 23:41:55 +0800</pubDate>
<category>
<![CDATA[ 伊人有约 喜欢稀饭BBS ]]>
 </category>
 </item>
 </channel>
</rss>

  当天缘将此脚本在GreatNews中进行测试的时候,毫无预警地,页面被跳转到了 http://skylove.study-area.org/bbs/ 上面。由此可见,页面跳转的安全隐患问题依旧是存在着的。

   5. 服务器端的跨站脚本

  RSS不光是给最终的浏览用户带来危险,在RSS的最大卖点之一“聚合”方面,写得不够严谨的代码甚至会导致聚合服务器的安全隐患。
以著名的共享开源软件lilina为例,在其PHP代码中进行include某页面操作的时候,用require_once(‘页面url’) 的方式进行引用。而问题就在于,如果在被聚合的多个rss源中,有一个恶意的站点,利用<?与?>标记进行php代码编写,那么当在聚合过程中,该rss的php代码部分事实上是在聚合服务器上被执行了。简单地来说,比如a站点的rss文件中有<?echo ‘skylove’;?>这样一行文字,那么b服务器如果对a站的这则rss进行聚合引用,而且b服务器恰好是使用php程序进行聚合,那么上面的那句代码,事实上就会在b服务器上被执行。此漏洞我是在车东先生的blog上了解到的,url是http://www.chedong.com/blog/archives/001047.html#more 。关于对此等可能包含有程序代码的rss文件的包含,php 4.3版本以后可以采用file_get_contents 函数来完成,详细可见http://cn.php.net/manual/zh/ref.stream.php 有详尽的解释和用法示例。

  行文至此,大抵也是到了结束的时候。文章不长,对于如何进行恶意操作的细节更是未提及,或许有些意犹未尽?但相信有心的朋友已经可以从此文中了解到RSS目前存在的一些漏洞以及如何利用它们了,事实上比在web页上包含恶意代码更简单,因为根本没有进行必要的安全检查。而且目前的RSS浏览器大多内嵌了网页浏览的功能,却没做在浏览网页的时候进行代码安全检查的功能。因此事实上用RSS浏览器跳转到网页后比用ie直接浏览更为危险,因为连必要的基本安全检查也没有了。至于当前的解决办法呢——暂时没有太好的,因为目前的RSS浏览器中暂时没看到有限制js代码执行与ActiveX控件执行的功能。就目前而言,如果需要保证RSS浏览的安全性,天缘个人推荐试着使用Maxthon 浏览器附带的RSS阅读功能,至少在被跳转到恶意站点的时候,还有Maxthon本身可以进行网页的安全过滤。

  此文写作的目的,是希望此文可以对RSS的浏览器作者在添加功能的时候有所帮助,同时也能使国内的杀毒厂商意识到RSS浏览器安全方面存在的一些问题,除了在web网页需要实时监控恶意代码外,RSS浏览器的实时监控或许也是不该放过的。目前就国内而言,利用到以上RSS漏洞的恶意站点并不多,这也同RSS 浏览方式在国内的普及和认同有关。但RSS浏览这一块存在重大的安全隐患,是很值得重视的。目前RSS 3.0的标准已基本制定完成(http://www.rss3.org/main.html),新设计的3.0中又新增了许多元素特性,不知道是“技术为人所用,还是人为技术所惑”呢。值得一提的是一位资深hacker Aaron Swartz(其主页在http://www.aaronsw.com/)在自行设计的rss 3.0标准中(http://www.aaronsw.com/2002/rss30),有提出返朴归真的想法,用类似ini文件的格式来表达元素,完全鄙弃html代码解释只用纯文本包含内容。回想起从最早的纯文字邮件,到后来的多媒体邮件——我们真的回的去么?不管如何,希望RSS这一良好的信息表达方式能更好地为大众造福。

共分1页  [1] 
>> 相关文章

关于网站 | 客服中心 | 服务条款 | 友情链接 | 广告联系 | 本站历程 | 网站导航

吉ICP备05000107号