ウイルスの脅威が襲ってきた時に最もやってはいけないことは、パニックに陥ることです。次に最悪なのは、情報収集を怠ることです。
Leap-Aプログラムが一部のMacに感染したとの報道を受け、このニュースを客観的に捉えることが重要です。Leap-Aには悪意のある行為を行う可能性はありますが、他のコンピュータ環境を定期的にダウンさせるWindowsウイルスのような深刻なものではありません。さらに重要なのは、後述するように、このインシデントはMacオペレーティングシステムのセキュリティホールを露呈させるものではないということです。むしろ、これは注意深いMacユーザーであれば容易に撃退できるマルウェアです。
とはいえ、Leap-Aのような潜在的に有害なものには注意を怠らないことが重要です。私たちは1日かけてこのマルウェアの調査とテストを行いました。その結果、Leap-Aについて知っておくべきことを以下にまとめました。
Leap-Aとは何ですか?
Leap-A(別名ウンパルンパ)は、単純な画像ファイルに偽装した、潜在的に悪意のあるプログラムです。この感染方法は、ある物が実際には別の物であるかのように見せかけることから、トロイの木馬として知られています。現状では、コードは latestpics.tgzというファイルに隠されており 、これは何か興味深いもの(この場合はOS X 10.5のスパイショット)の画像であるとされています。圧縮アーカイブを展開し、画像ファイルと思われるファイルをダブルクリックすると、Leap-Aマルウェアが起動し、システムにインストールされます。
Leap-Aはインストールされると、2つのことを行います。まず、iChatの友達リストに登録されている全員に自身のバージョンを送信しようとします。友達全員にiChatの標準ファイル転送メッセージが送信されますが、ユーザー側では何も確認できません。次に、Leap-AはユーザーディレクトリにインストールされるInputManagerを介して、ユーザーのマシン上のCocoaアプリケーションに感染を開始します。感染したCocoaアプリケーションを起動するたびに、Leap-AはOS X 10.4のSpotlight検索機能を使って、最近使用したアプリケーションを4つ検索します。もしそれらがCocoaアプリケーションであれば、Leap-Aはそれらにも感染します。
(Cocoa アプリケーションが正確にどのようなものかよくわからない場合、Cocoa は OS X アプリケーションの開発環境です。Apple のアプリケーションのほとんど、およびかなりの数のサードパーティ プログラムは、Cocoa で記述されています。Safari、Mail、Address Book、iCal、Terminal は Apple の Cocoa アプリケーションの一部であり、Camino、OmniWeb、および OmniGraffle は Cocoa で記述されたサードパーティ アプリケーションの例です。)
Leap-Aについて、Ambrosia Softwareの創設者であるAndrew Welch氏によるこちらの分析で、より深く技術的な解説をご覧いただけます。プログラムをダウンロード、展開、そして実行すると何が起こるのかを、彼は正確に解説しています。
Leap-AはSpotlightを使うとおっしゃっていましたが、まだOS X 10.4を使っていない場合はどうなりますか?
Leap-A は Spotlight を使用しているため、Tiger を実行しているシステムでのみ動作します。
このものはどうやって私のマシンに侵入するのでしょうか?
Leap-Aマルウェアをマシンに侵入させる唯一の方法は、自ら何らかの行動を起こして侵入させることです。iChatで友人からファイルを受け取ったり、インターネットから何かをダウンロードしたり、電子メールの添付ファイルを開いたりするかもしれません。このプログラムコードは現在、Appleの次期OS XメジャーアップグレードであるOS X 10.5の画像と称するものの中に隠されています。Leap-Aをマシンに侵入させるには、(a)圧縮されたファイルを受信し、(b)アーカイブを展開し、(c)画像ファイルと思われるファイルをダブルクリックしてコードを実行する必要があります。インターネットを閲覧したり、電子メールを読んだり、iChatで友人とチャットしたりするだけでは、このマルウェアに感染することはありません。
Leap-Aの検出がさらに困難なのは、もちろん、他のマルウェアに偽装しているからです。誤ってLeap-Aに感染させないようにするためのヒントを以下にご紹介します。
とはいえ、Leap-Aを探して、セキュリティ保護されたマシンでどのように動作するかテストしてみました。見つけるのは容易ではなく、見つけたバージョンでさえ、その動作はAndrew Welch氏の説明とは一致していないようでした。私のアプリケーションは感染しておらず、iChat経由でも何も送信されませんでした。もちろん、今後、より広範囲に配布されるバージョンがリリースされる可能性もありますので、Leap-Aを簡単に見つけられないという状況が必ずしも当てはまるとは限りません。
Leap-A は私の Mac に悪影響を及ぼしますか?
現状では、このコードはファイルの削除、権限の変更、アプリケーションの移動といった悪意のある行為は行いません。しかし、コードにバグがあるため、Leap-Aは感染したアプリケーションの実行を阻止します。この問題の唯一の解決策は、元のアプリケーションのクリーンなコピーをインストールすることです。したがって、少なくとも現時点では、データが危険にさらされることはありません。ただし、Leap-Aの亜種がリリースされ、より悪質なものになる可能性は比較的高いことに注意してください。
これはウイルス、ワーム、マルウェア、またはトロイの木馬ですか?
技術的には、これは様々な要素を少しずつ含んでいます。Mac上の他の実行コードに感染するという意味ではウイルスです。自己複製してマシンからマシンへと拡散しようとするという意味ではワームです。コンピュータに悪影響を及ぼす可能性があるため、マルウェアの一種でもあります。基本的に、トロイの木馬を介して拡散され、ウイルス的側面とワーム的側面の両方の作用を持つマルウェアです。
これはどのような意味でトロイの木馬なのでしょうか?
このプログラムはソーシャルエンジニアリングの手法を用いており、多くの人が見たいと思うような画像を装って、開かせようとします。今回のケースでは、Appleの次期OS X 10.5リリースであるLeopardの画像が偽装されていたと報じられています。
これはどのような方法でウイルス感染するのでしょうか?
ウイルスとは、実行中の他のアプリに自身のコピーを挿入することで拡散する自己複製プログラムです。Andrew Welch氏の分析によると、Leap-AはInputManagersフォルダを利用してまさにそのように拡散します。最終的には、起動したすべてのCocoaアプリケーションに感染します。そして、コード内のバグにより、感染したアプリは動作しなくなります。しかし、Leap-Aは 真の ウイルスではなく、人間の介入なしにマシンからマシンへと拡散することはできません。
このものはどのような点で虫なのでしょうか?
Leap-Aの唯一の使命は、できるだけ多くの人に感染を広げることのようです。このプログラムは自身のクリーンなコピーを作成し、iChatの友達リストに登録されているすべてのユーザーに送信しようとします。これらのユーザーがファイルを受け入れ、アーカイブを展開し、生成された画像ファイルをダブルクリックすると、彼らも感染します。繰り返しますが、ワームの拡散には人間の介入が必要です。
Leap-A から身を守るにはどうすればいいですか?
Sophos Anti-Virus、SymantecのNorton AntiVirus、IntegoのVirusBarrier X4をご利用の場合、これらのプログラムはすべて既にアップデートされており、Leap-Aがシステムにインストールされるのを防いでいます。ほとんどのウイルス対策ソフトウェアは、エクスプロイトのバージョンごとにアップデートする必要があるため、ウイルス定義を常に最新の状態に保つようにしてください。ただし、既に感染している場合は、これらのプログラムで感染を根絶できない可能性があります。
自分のマシンに Leap-A マルウェアが存在するかどうかはどうすればわかりますか?
ユーザーのライブラリフォルダを開き、InputManagersフォルダを開いて、 apphookというフォルダを探してください 。そこに存在すれば、マルウェアはインストールされています。ただし、マルウェアの将来のバージョンではこの名前が変更される可能性があるため、念のため、現在インストールされているフォルダをメモしておくことをお勧めします。このフォルダはOS Xの標準機能ではなく、SafariStand、Sogudi、Chaxなどの特定のアドオンプログラムをインストールした場合にのみ存在します。
どうすれば取り除けますか?
ユーザーのLibrary/InputManagersフォルダから apphook というフォルダを削除します 。Finderで「移動:フォルダへ移動」を使用し、次のように入力します。
/tmp
保存先として指定してください。このフォルダが開いたら、 フォルダから latestpics.tgzを削除してください。簡単な部分はここまでです。
起動しない感染したアプリケーションがある場合 (ただし、私のテストではこの問題を再現できませんでした)、アプリケーションが既に感染している可能性があるため、バックアップからではなく、ソース CD または DVD からアプリケーションを再インストールするのが最善策です。
アプリケーションはすべて動作しているようですが、 apphook フォルダがあります。どうすればいいですか?
理論上は、これはあなたのマシンが感染していることを意味します。しかし、私の実験によると、iChatの仲間があなたが要求していないファイルを送信したことについて苦情を言っていない場合、あなたのマシンはプログラムを完全に実行していない可能性があります。私のテストマシンでは、アプリケーションはLeap-Aによって変更されていないようですので、apphookと/tmpのデータファイルを削除すれば、問題は解決します。
Appleはこの件について何と言っているのでしょうか?
同社が私の同僚ピーター・コーエンに伝えた内容は次のとおりです。
Leap-Aはウイルスではなく、ユーザーにアプリケーションをダウンロードさせ、生成されたファイルを実行させる悪意のあるソフトウェアです。Appleは常に、Macintoshユーザーに対し、信頼できるベンダーやウェブサイトからのファイルのみを受け入れるよう推奨しています。インターネットから受信したファイルを安全に扱うためのガイドをご用意しています。
他にどうすれば Leap-A やその類似品から身を守ることができますか?
ウイルス対策アプリケーションを使用する以外にも、感染を防ぐために実行できる簡単な方法がいくつかあります。

最後に、InputManagersフォルダの所有権を変更するという方法もあります。これにより、アプリケーションフォルダ内のプログラムへのダメージは防げませんが、プログラムがiChat経由で複製を試みるのを防ぐことができます。最も簡単な方法は、アプリケーション→ユーティリティにあるターミナルを使うことです。まず、このフォルダはデフォルトではインストールされていないため、存在することを確認する必要があります。それでは、次のように入力してください。
mkdir ~/Library/InputManagers
そしてReturnキーを押します。フォルダが作成されたことを示すメッセージが表示されずコマンドプロンプトに戻るか、ファイルが既に存在するというメッセージがターミナルに表示されます。どちらの場合も、次のコマンドを実行する準備が整いました。
sudo chown root:admin ~/Library/InputManagers
Returnキーを押すと、管理者ユーザーのパスワードが求められます。パスワードを入力すると、InputManagersフォルダへのアクセスがブロックされます。Leap-Aや、そこに何かを配置しようとする他のコードからのアクセスもブロックされます。Safari用のSafariStandやSogudi、iChat用のChaxなどのアドオンをインストールする場合は、このフォルダを一時的に自分の所有権に戻す必要があります。これらのプログラムのインストーラを実行する前に、ターミナルで以下の操作を行ってください。
sudo chown your_user:your_user ~/Library/InputManagers
交換する
あなたのユーザー
ユーザーの短縮ユーザー名で置き換えてください。これでインストーラーを実行し、最初のコマンドを再実行して所有権をrootに戻せます。このフォルダへの書き込みは他には行われないため、日常的な作業に支障をきたすことはないはずです。この脆弱性に対する有効な防御策と言えるでしょう。
私のテストでは、スクリプトは保護されたInputManagersフォルダにスクリプトの一部をインストールしようとした際にエラーが発生し、スクリプトの残りの部分が実行されなかったようです。しかし、前述の通り、Andrew Welch氏と同じバージョンのLeap-Aを使用していたにもかかわらず、同じ動作は見られませんでした。
結論
「安全なダウンロード」を実践していれば、このコードについてはあまり心配する必要はありません。しかし、世の中にはあなたのマシンに悪事を働こうとする者がいるので、常に警戒する必要があることを改めて認識させられます。幸いなことに、Leap-AはOS Xのセキュリティホールを明らかにしたわけではありません。むしろ、ユーザーを騙してマシンにインストールさせた後に悪質な行為を行うソフトウェアに過ぎません。
Leap-Aマルウェアは、OS Xがリリース前と比べてウイルスに対する安全性が低下したことを意味するものではありません。ソーシャルエンジニアリングによるマルウェアはこれまでも、そしてこれからも存在し続けるでしょう。ユーザーに何かを実行させることができれば、コード実行中に何をしても構わないということになります。Appleには、私たち全員の安全性をさらに高めるためにできることがいくつかあります(例えば、InputManagersは明示的な許可なしにインストールできないようにするなど)。しかし、私はOS Xが非常に安全なオペレーティングシステムであると信じており、日常的に使用しても全く心配していません。あなたもそう思うはずです。