連載

Undocumented Mac OS X:

特別編 Safariの脆弱性に学ぶBAHとusroリソースの働き (1/3)

今回は、いつもの連載から少し離れ、2006年2月に発表された、Safariの外部から送り込まれたシェルスクリプトを自動的に実行してしまう脆弱性について考えてみたい。
2007年11月21日 05時28分 更新

Safariにスクリプトを自動実行するセキュリティホール

 今回は、前回の補足として2006年2月20日にドイツのセキュリティ研究者が運営するニュースサイトwww.heise.deにて発表された、Safariの外部から送り込まれたシェルスクリプトを自動的に実行してしまう脆弱性について説明したい。2006年2月はMac OS Xに対する初の実戦的ウイルスが発見されるなど、Mac OS Xのセキュリティにとっては激動の月となった。もっとも、この「実戦的ウイルス」も実体はただのトロイの木馬であり、利用者がダブルクリックしないと感染の拡大もできない技術的には何のひねりもない*ものであった。続いて発表された幾つかのウイルスもWindowsで使われた手法を応用しただけで面白みにも危険性にも欠けるものばかりだった。

 そんな「前座」があったため、冒頭に挙げた脆弱性が発表されても「ああ、またか」と思った人が多いのか、いまいち話題になっていない。しかし、この脆弱性はMac OS Xの根幹的な仕組みであるLaunch Servicesに起因する非常に危険な、そして深刻な問題なのである。

3つの要因

 この脆弱性は以下の3要因からなる。

BAH(BOM Archive Helper)

 1つは、ZIPファイルなどのアーカイブに対して、リソースフォークなどMac OS X独自の情報の格納と復元が可能になったことである。これまで紹介したように、Mac OS X 10.4 Tigerでは拡張属性(Extended Attribute)のサポートとそれに伴うxattr系システムコールが追加され、リソースフォークやHFS特有の情報も拡張属性の一部として扱える。それらシステムコールの恩恵を受け、mv、cp、tar、rsyncなど標準コマンドを通じたファイルの移動やコピーを行っても、そうした情報が保存されることが保証された。

 加えて、BAHというアプリケーションが標準搭載となった。これはZIPやCPIO形式のアーカイブ作成やgzipなどの圧縮の適用、およびその展開を行うソフトウェアである。FinderのコンテクストメニューからBAHを呼び出しZIPアーカイブを作成したり、ZIPファイルをダブルクリックして展開したりできる。

 このBAHを用いてリソースフォークを持つファイルを含むアーカイブを作成した場合、「__MACOSX」というディレクトリが作成され、その中に「._」から始まる隠しファイルが作成される(図1)。この隠しファイルにはリソースフォークやHFS特有の情報が格納されている。__MACOSXディレクトリに分けて格納することで、WindowsやLinuxなど、そうしたHFS特有の情報が不要な環境では単純に__MACOSXを無視するだけで余計な情報を見ずにすむ*

図1 図1 Mac OS X 10.4標準搭載のBAHを用いてリソースフォーク付きのファイルのZIPアーカイブを作ると、ZIPアーカイブの中に__MACOSXというディレクトリを作り、リソースフォークなどを別途格納する。また、展開時に__MACOSXディレクトリを見つけると、自動的に結合を行う

 一方、BAHは、ZIPアーカイブの展開時に__MACOSXディレクトリを見つけると、その中に隠された情報を本来のファイルに結合、リソースフォークなどを復元する。

 つまり、本来MacとはかかわりのないZIPアーカイブであってもリソースフォークやHFS特有の情報は保存されるようになったのだ。

このページで出てきた専門用語

技術的には何のひねりもない

唯一新規性を感じられたのは、感染経路としてiChatを使うというところであろうか。AIMの利用者の可能性もあるので100%とはいえないが、確かにiChatの利用者ならMac OS Xユーザーである可能性が極めて高い。もっとも、このウイルスの作者が、ただ単にWindowsにあるIMを使ったウイルスを参考にしただけかもしれないのだが。

余計な情報を見ずにすむ

例えば、FATでフォーマットされたFDにMac OS Xから書き込みを行うと、そのファイルと同じ階層に「._」から始まる隠しファイルを作ってしまう。これはほかの環境、特に「.」から始まるファイルを隠しファイルとしないWindows環境から見ると余計なファイルが多くなるため不評であった。


       1|2|3 次のページへ

[白山貴之,ITmedia]

Copyright© 2010 ITmedia, Inc. All Rights Reserved.


オンライン・ムックPlus Special
Special

Special

キャリアアップ



エンタープライズ・ピックアップ

news034.gif 「Android 2.2」のエンタープライズ機能に賛否両論
GoogleはAndorid端末の新OSでエンタープライズ市場参入を狙っているようだが、BlackBerryの機能と比較するとまだ不十分だと評価するアナリストもいる。

news009.jpg ファイルと同様に実行可能:LTFSはテープドライブの可能性を拡大するか?
テープ内のデータを、バックアップツールでディスクに展開せずとも実行/コピー/削除できるようにするLTFSは、テープドライブの利用範囲を拡大し得る新機能として期待できる。

news047.gif Microsoftはまだ伝統的ビジネスに依存――決算数字が示す同社の現状
Microsoftの頭はクラウドに入っているかもしれないが、本体は依然としてデスクトップに結び付けられたままだということを同社の決算数字が物語っている。

news016.jpg Weekly Memo:業務プロセス管理へのIT活用は進むか
日本オラクルとSAPジャパンが先週、業務プロセス管理(BPM)分野で新たな取り組みを始めた。両社の発表を機に、BPMへのIT活用における課題を探ってみた。

news003.jpg 自らを“実験台”としSaaSのベストプラクティスを蓄積する――NEC 山元執行役員常務
NECのビジネスユニット再編には、国内だけでなく海外での地歩も固めようという意図があるようだ。従来から優位性を持つテレフォニー分野に加え、SaaS事業でも独自のアプローチを展開するという。

Special