(1/3)今回は、いつもの連載から少し離れ、2006年2月に発表された、Safariの外部から送り込まれたシェルスクリプトを自動的に実行してしまう脆弱性について考えてみたい。true;});Safariにスクリプトを自動実行するセキュリティホール今回は、前回の補足として2006年2月20日にドイツのセキュリティ研究者が運営するニュースサイトwww.heise.deにて発表された、Safariの外部から送り込まれたシェルスクリプトを自動的に実行してしまう脆弱性について説明したい。Xのセキュリティにとっては激動の月となった。この「実戦的ウイルス」も実体はただのトロイの木馬であり、利用者がダブルクリックしないと感染の拡大もできない技術的には何のひねりもない*ものであった。続いて発表された幾つかのウイルスもWindowsで使われた手法を応用しただけで面白みにも危険性にも欠けるものばかりだった。そんな「前座」があったため、冒頭に挙げた脆弱性が発表されても「ああ、またか」と思った人が多いのか、いまいち話題になっていない。Servicesに起因する非常に危険な、そして深刻な問題なのである。3つの要因この脆弱性は以下の3要因からなる。X独自の情報の格納と復元が可能になったことである。Attribute)のサポートとそれに伴うxattr系システムコールが追加され、リソースフォークやHFS特有の情報も拡張属性の一部として扱える。それらシステムコールの恩恵を受け、mv、cp、tar、rsyncなど標準コマンドを通じたファイルの移動やコピーを行っても、そうした情報が保存されることが保証された。加えて、BAHというアプリケーションが標準搭載となった。これはZIPやCPIO形式のアーカイブ作成やgzipなどの圧縮の適用、およびその展開を行うソフトウェアである。FinderのコンテクストメニューからBAHを呼び出しZIPアーカイブを作成したり、ZIPファイルをダブルクリックして展開したりできる。このBAHを用いてリソースフォークを持つファイルを含むアーカイブを作成した場合、「__MACOSX」というディレクトリが作成され、その中に「._」から始まる隠しファイルが作成される(図1)。この隠しファイルにはリソースフォークやHFS特有の情報が格納されている。__MACOSXディレクトリに分けて格納することで、WindowsやLinuxなど、そうしたHFS特有の情報が不要な環境では単純に__MACOSXを無視するだけで余計な情報を見ずにすむ*。10.4標準搭載のBAHを用いてリソースフォーク付きのファイルのZIPアーカイブを作ると、ZIPアーカイブの中に__MACOSXというディレクトリを作り、リソースフォークなどを別途格納する。展開時に__MACOSXディレクトリを見つけると、自動的に結合を行う一方、BAHは、ZIPアーカイブの展開時に__MACOSXディレクトリを見つけると、その中に隠された情報を本来のファイルに結合、リソースフォークなどを復元する。本来MacとはかかわりのないZIPアーカイブであってもリソースフォークやHFS特有の情報は保存されるようになったのだ。技術的には何のひねりもない唯一新規性を感じられたのは、感染経路としてiChatを使うというところであろうか。Xユーザーである可能性が極めて高い。このウイルスの作者が、ただ単にWindowsにあるIMを使ったウイルスを参考にしただけかもしれないのだが。Xから書き込みを行うと、そのファイルと同じ階層に「._」から始まる隠しファイルを作ってしまう。これはほかの環境、特に「.」から始まるファイルを隠しファイルとしないWindows環境から見ると余計なファイルが多くなるため不評であった。称して情報を盗む「ご注意!!OFFICEのプロダクトキーが不正コピーされています。Japanスマートジャパン3Dモデラボキャリア@IT自分戦略研究所エンジニアライフディルバートアプリITmediaねとらぼねこらぼついトピ!ITmediaはアイティメディア株式会社の登録商標です。