2007年1月18日
Universal PDF XSS:【重要】Adobe Readerを8にアップグレードしましょう
SEの進地です。
今日は、今年(2007年)年始にWeb Security ML(http://webappsec.org/lists/)で話題になったUniversal PDF XSSについて取り上げます。
【重要】
先にとるべき対策をお伝えしておきます。
この脆弱性はローカルマシンにインストールされたAdobe Readerがバージョン7.0.8以下の場合に生じます。Adobe Readerを8にアップグレードすることで回避可能です。7.0.8未満を利用されている方は直ちにアップグレードを行ってください。
Universal PDF XSS(またはAdobe Acrobat Reader Plugin - Multiple Vulnerabilities)はブラウザのAcrobat Reader Pluginが持つ脆弱性により、Webサイト上にPDFファイルが存在するだけでXSS(Cross Site Scripting:クロスサイトスクリプティング)攻撃が可能になるというものです。
http://path/to/pdf/file.pdf#whatever_name_you_want=javascript:your_code_here
http://path/to/pdf/file.phpにPDFファイルがあった場合に、your_code_hereで指定した任意のJavaScriptが実行可能になります。
Adobeの報告(http://www.adobe.com/support/security/advisories/apsa07-01.html)、Web Security ML、およびWisec(http://www.wisec.it/vulns.php?page=9&lang=en)での報告によると、IE、Firefox、Opera共に使用しているAdobe Acrobat Reader Plugin が 7.0.8以下でこの攻撃が動作します。
この脆弱性の脅威とその攻撃方法・シナリオは下記のエントリーが参考になります。
GNUCITIZEN ≫ Universal PDF XSS After Party http://www.gnucitizen.org/blog/universal-pdf-xss-after-party/
今回はこのエントリーで紹介されている3つの攻撃方法を要約して説明します。
攻撃が可能である環境の場合は直ちにAdobe Readerをアップグレードしてください。
3つ紹介しますが、攻撃方法1と2は一般的にXSS攻撃に利用できる方法です。
攻撃方法1:
currentdomainの.htaccessに
#.htaccess RewriteEngine On RewriteRule *\.(jpg|png|css|mp3|mov|avi)$ http://www.google.com/librariancenter/downloads/Tips_Tricks_85x11.pdf
のように既に存在している外部サイトのPDFにrewriteしておいた上で、
http://currentdomain/whatever.mp3#something=javascript:malicious_code
のようにmp3やjpgファイルなどへのリンクをJavaScriptコード付きで作成し、currentdomainを訪れたユーザーに踏ませます。ユーザはcurrentdomain/whatever.mp3にアクセスしたつもりですが、実際にはwww.google.comのTips_Trick_85x11.pdfに任意のJavaScriptを伴ってアクセスしてしまい、このJavaScriptが実行されます。
この攻撃の場合、では、JavaScriptがついているリンクを踏まないように気をつければよいかというと
そうもいかず、TinyURLなどを使ってJavaScriptコードを隠してしまうこともできます。
TinyURL
http://d.hatena.ne.jp/keyword/TinyURL?kid=43714
※ TinyURLはURLを短く表現するサービス。パラメータ付きURLも短く表現できる。
攻撃方法2:
隠しiframeでアクセスさせます。
<iframe src=” http://path/to/pdf/file.pdf#whatever_name_you_want=javas cript:your_code_here” style=”width:0;height:0;border:0″></iframe>
TinyURLを使えば下記のようにもできます。
<iframe src=”http://tinyurl.com/t8h4q” style="width:0;height:0;border:0"></iframe>
この方法を使うとユーザーのクリックとは無関係にスクリプトを実行させることができます。
攻撃方法3:
この攻撃方法がUniversal PDF XSS固有の攻撃方法になります。
Universal PDF XSSではfile://プロトコルでもJavaScriptが実行可能です。その為、例えば、Adobe Reader 7.0を使用しているユーザに下記のURLを踏ませるとyour_code_hereに記述されたJavaScriptが実行されてしまいます。
file:///C:/Program%20Files/Adobe/Acrobat%207.0/Resource/ENUtxt.pdf#something=javascript:your_code_here
C:/Program%20Files/Adobe/Acrobat%207.0/Resource/ENUtxt.pdfはAdobe Reader7.0をWindows環境で標準設定でインストールした場合にインストーラによって設置されるファイルです。その為、環境がマッチするユーザに対してであれば、簡単にXSS攻撃をしかけることが可能になっています。
XSS脆弱性はブラウザのCookieに保持している値を盗んだり、罠をしかけたページへ遷移させたりなど、様々な攻撃の基点となりますので、しつこいですが、環境が該当する方(Acrobat Reader Plugin <= 7.0.8)は速やかなアップグレードを行ってください。
カテゴリー: セキュリティ(システム開発)
タグ:
« 前の記事:Web 2.0的アプリのセキュリティ:機密情報にJSONPでアクセスするな
» 次の記事:FlashでJSON形式のデータを読み込み表示する (ソース一式ダウンロード付)
アークウェブの本
Zen Cartによるオンラインショップ構築・運用テクニック―オープンソース徹底活用
内容充実のZen Cart公式本(v1.3対応)がついに発表です。アークウェブのスタッフをはじめZen-Cart.JPの中心メンバーが共著で執筆しました。続きを読む
新着はてブ
カテゴリー
- Shopify(ショピファイ)オンラインショップ構築
- NGO・NPO向け情報
- スマートフォン
- だれもが使えるウェブコンクール
- mixiアプリ
- OpenSocial (システム開発)
- アークウェブのCSR
- A-Form, A-Member, A-Reserve(MTプラグイン)
- Ruby on Rails(システム開発)
- necoったー
- Miqqle
- WebSig24/7
- ecoったー
- ビッグイシュー(The Big Issue)
- CSR(企業の社会的責任)
- マッシュアップ
- RIA (システム開発)
- セキュリティ(システム開発)
- 唐松(アクセス解析)
- Ajax (システム開発)
- テスト(システム開発)
- データベース
- PukiWiki
- Web 2.0
- SEO・サーチエンジン最適化
- XP・アジャイル(システム開発)
- Web・ITニュースクリップ
- Webアクセシビリティ
- Webデザイン
- SEM・サーチエンジン広告
- Webユーザビリティ
- CMS・MovableType
- Zen Cart(オンラインショップ構築)
- Snippy(SNS・ソーシャルブックマーク)
- アークウェブ
- オープンソース
- CMS(コンテンツマネジメント・システム)
- Webマーケティング
- AMP
- SNS