RSS阅读中潜在的安全问题 【 综合文 】

转载 2006年05月31日 10:42:00
前2天读到了? RSS阅读中潜在的安全问题 | 未完成 - Incomplete,讲的是混杂在Rich Text的RSS中的js会在RSS阅读客户端执行从而导致潜在的漏洞问题。正巧我在上个周末的时候也遇到了类似的一个问题:不过更严重的是在RSS聚合的服务器端。我的首页是用require_once('lilina.html') 的方式包含一个lilina.php生成的静态页面组合生成的,源代码如下。其中也包含了跨服务器PHP脚本执行的安全漏洞。如果我订阅的RSS中有黑客将其中混入 <?php >这样的代码,这样一包含:不就可以直接在我的服务器上直接运行php脚本了吗?这个潜在漏洞的发现还是从MSN的Search blog的一篇FEED中引出的。
上周日的问题是这样的:周日上午我忽然发现自己的blog中间require的部分无法显示了,调查了一个上午原来php新版本中缺省将display_error关闭了,程序遇到错误只会停止执行,需要在需要显示错误信息的php页面中设置: ini_set('display_error', true); 才会正常显示错误。我另外做了一个test.php 显示了一下:发现是某行上除了php 解析错误。定位过去才看到原来是MSN的Search blog的一篇上有一个 <?标记,被require_once后,于是后面的html代码被当作php代码:当作php脚本的开始执行了,当然错误很多。开始想先将<?这样的标记禁掉通过设置php.ini中的short_open_tag = Off,但这样治标不治本,而且还导致了更多的php代码泄漏。正确的方法是包含一个静态文件时:使用fopen然后一行一行的buffer print出来,这样就不会执行远程文件中可能的php代码了,不知道PHP有没有包含其他文件但不执行其中的代码简单函数。代码如下:
$filename = "lilina.html";
$dataFile = fopen( $filename, "r" );

if ( $dataFile ) {
    while (!feof($dataFile))
    {
        $buffer = fgets($dataFile, 4096);
        echo $buffer;
    }
    fclose($dataFile);
} else {
    die( "fopen failed for $filename" );
}
后记:谢谢 Zheng Kai: 我已经改用 file_get_contents('lilina.html');了。

正如广告资源总是跟随着人们的注意力转移而转移一样,各种Spam以及恶意代码也同样在追随着网络用户注意力的变动。当RSS阅读逐渐开始变得流行起来,恶意代码也盯上了RSS这种新兴的阅读方式与阅读工具。

上周在GreatNews的用户论坛上,就有一位用户提出希望GreatNews增加恶意代码过滤功能,因为他所订阅的RSS就受到恶意代码的滋扰。

我订阅的一个RSS链接,一直好好的,但是今天查看这个频道时,莫名其妙的跳转到了hxxp: //mtv.5522.com/music/index.htm 这种垃圾网站,不知又是哪一个乱发垃圾广告的SB申请了Blog,被RSS收录了,原本这一类的都是发一堆的文字链接,这个到是好,升级了,点都没点就直接去了,靠!

从Temp里找到了源文件,分析了一下,用的方法是嵌入脚本<script src="http://flash.5522.com/ads/dvd.js”></script>脚本里再跳转到那个SB网站.不知GN能不能加一个脚本屏蔽功能?

虽然现在Feed中的恶意代码还没有泛滥,但已经有恶意网站发现了这块有潜力的新领域,利用在RSS中内嵌Javascript和activeX而达到自动跳转或者其他的功能,甚至是植入病毒或木马,在RSS阅读器中添加恶意代码过滤的功能已经成为对RSS阅读器的新要求。

通过订阅一个专门用于RSS阅读器安全性检测的Feed(本订阅内容含有不良代码,请慎重订阅,不过它并不会对你的电脑造成重大不利影响),可以发现有不少客户端RSS阅读器并没有过滤器中的不良代码,可见RSS中潜在的安全问题还没有引起大家的重视,不过FeedDemonGreatNews(build 339)都可以通过安全性测试。

在线RSS阅读器的情况稍好,在我测试的RojoBloglinesGougouBoyue四个中外在线RSS阅读器中,只有Boyue有提示js被执行,存在安全性问题,而其余的三个阅读器都不会执行其中内嵌的js。但另一方面,其中只有bloglines的内容显示比较正常,显示出10篇文章,而Rojo中根本显示不出任何内容,Gougou/Boyue中都只显示一篇文章,而该RSS中实际包含12篇文章。可见虽然主要的在线RSS阅读器都限制了恶意代码的执行,但可能并非专门针对RSS中的内置恶意代码进行过滤,因此显示出来的过滤效果存在问题。

原本纯洁、方便,无需受闪烁的广告和恼人的插件影响的RSS阅读方式,不应像网页一样也成为恶意网站肆虐的地方,无论是在线还是客户端的RSS阅读器都应该开始重视这个潜在的安全问题,不要让普通网民不知不觉中又成为恶意网站的俘虏。

如何通过RSS阅读微信公众号文章

如何通过RSS阅读微信公众号文章
  • tttwwy
  • tttwwy
  • 2014年09月22日 16:44
  • 814

outlook禁止访问下列带有潜在安全问题的附件的解决方法

outlook禁止访问下列带有潜在安全问题的附件的解决方法outlook为了能尽量保障客户端的邮件安全对部分可执行文件进行了禁止访问的设置.如果你希望能够再outlook中访问这些附件请把下列内容保存...
  • lhfeng
  • lhfeng
  • 2008年08月07日 11:05
  • 3216

c#解析RSS新闻源

昨天弄了一天,终于成功解析了南方周末的RSS新闻源,因为我做的是例子程序,所以是在控制台下写的,但基本思路应该是差不多的~~RSS类的设计如下 class rss { publ...
  • txg703003659
  • txg703003659
  • 2011年07月09日 12:06
  • 12284

FPGA综合工具中可综合的代码结构

不同厂商的综合工具所支持的可综合子集可能有所不同。本文所说的是ISE的综合工具XST 在Verilog中综合时XST综合工具支持的结构有:      1、线网类型wire、tri、supply1、...
  • Next_FSE
  • Next_FSE
  • 2017年06月28日 21:47
  • 179

jsonString

由于 JSON 语法是 JavaScript 语法的子集,JavaScript 函数 eval() 可用于将 JSON 文本转换为 JavaScript 对象。 eval() 函数使用的是 Ja...
  • qiphon3650
  • qiphon3650
  • 2017年06月05日 11:33
  • 262

Web版RSS阅读器(五)——初步完成阅读功能

上一篇博文《Web版RSS阅读器(四)——定制自己的Rss解析库myrsslib4j》中,已经分享给大家制作自己的rss解析库。稍微有点遗憾的是,它仅仅支持rss格式的博客。现在给大家分享一下我基于r...
  • xiaoxian8023
  • xiaoxian8023
  • 2013年08月27日 07:59
  • 5508

Web版RSS阅读器(三)——解析在线Rss订阅

Web版RSS阅读器 上篇博客《 Web版RSS阅读器(二)——使用dTree树形加载rss订阅分组列表》已经写到读取rss订阅列表了,今天就说一下,当获取一条在线rss订阅的信息,怎么去解析它,从...
  • xiaoxian8023
  • xiaoxian8023
  • 2013年08月09日 09:12
  • 7333

网站中实现RSS订阅的功能

程序可以从这里下载:http://download.csdn.net/detail/caoyuan10036/3975039 一、功能描述: 在我们浏览网站的时候,会看到很多频道,文章的头上会...
  • caoyuan10036
  • caoyuan10036
  • 2011年12月27日 18:16
  • 5839

如何利用RSS追踪科学文献

科研工作离不开大量阅读文献,但有时候会遇到时间比较紧,无暇顾及全部文献的情况,也有时候遇到所关注属于研究热点领域文献数量巨大的情况,没有办法全面阅读文献,如何解决这些问题?文献追踪是搞科研少不了干的活...
  • xxcheng
  • xxcheng
  • 2014年08月17日 17:51
  • 1529

Android Rss阅读器

前言        前几天去北京面试,题目是让我解析一下腾讯的Rss。之前虽然知道xml,但是自己从来没有去学习怎么解析,在网上查一些例子,但是就是没有解析出来。现在看看还蛮好笑的,因为我那时候是使用...
  • wangjinyu501
  • wangjinyu501
  • 2013年06月08日 12:49
  • 8119
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:RSS阅读中潜在的安全问题 【 综合文 】
举报原因:
原因补充:

(最多只允许输入30个字)