- ニュース

英国のセキュリティ企業 Intego は、Snow Leopard に搭載された Apple の新しいウイルス対策システム XProtect について明確かつ詳細に説明したセキュリティメモを公開しました。
興味深い情報がいくつかあります。たとえば、Apple の新しい XProtect システムは、保護対象であるはずのトロイの木馬のすべての亜種を認識できるわけではありません。
また、Integoによると、XProtectシステムはインターネットからダウンロードされた.mpkgファイル内に隠されたトロイの木馬を検出できないという大きな弱点があるという。(Appleのインストーラーは、単純なパッケージ用の.pkgファイルと、インストールする複数のパッケージを含む.mpkgファイルの2種類のファイルを認識します。)
このメモは明らかに自分勝手なもので、Intego は Mac 用のウイルス対策およびプライバシー パッケージをいくつか販売しているが、それでも Apple の新しい XProtect システムが何を実行し、実行しないかについて明確かつ詳細に示している。
完全なメモは下記をご覧ください。
INTEGO セキュリティメモ – 2009 年 9 月 2 日
AppleのSnow Leopardのマルウェア対策機能の仕組み
まとめ
• AppleはMac OS X 10.6 Snow Leopardにマルウェア対策機能を追加しました。
• この機能は、特定のアプリケーションでダウンロードしたファイル内のマルウェアのみをスキャンします。
• Appleのマルウェア対策機能は、Finder、CD、DVD、USBサムドライブ、ネットワークボリュームからファイルをコピーした場合はマルウェアをスキャンしません。
• Appleのマルウェア対策機能は現在、2種類のトロイの木馬のみをスキャンします。
• Appleは、最も一般的なトロイの木馬のすべての亜種を検出しません。
• Appleのマルウェア対策機能は、メタパッケージ(.mpkg)インストーラパッケージをスキャンしません。
• Appleのマルウェア対策機能は、感染したファイルや感染したMacを修復しません。
• Snow LeopardのAppleのマルウェア対策機能は、Macユーザーにウイルスやマルウェアからの本格的な保護を提供しません。
AppleのSnow Leopardの新しいマルウェア対策機能に関する記事を掲載して以来、多くの情報源からその仕組みについての記事をいただいています。Appleのマルウェア対策機能とVirusBarrier X5の比較記事を掲載し、Appleの機能に搭載されている(または搭載されていない)機能の一部を概説しました。そこで今回は、この機能をより詳細に検証し、その仕組みと、Macをマルウェアから保護するために何ができるのか、できないのかを解説したいと思います。
多くのウェブサイトでは、この機能の動作に必要な情報を含むファイルの名前にちなんで、この機能を「XProtect」と呼んでいます。Appleはこの機能に「公式」な名称を与えていないため、ここでは「Appleのマルウェア対策機能」というありきたりな名称で呼ぶことにします。Xprotectファイル(Xprotect.plist)は、/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/にあります。これは、ほぼ隠れた場所にあります(主にアイコンを含むバンドルであるCoreTypes.bundle内にあります)。
しかし、このバンドルにはもう一つ興味深いファイルがあります。それは「Exceptions.plist」と呼ばれるもので、Appleのマルウェア対策機能の影響を受けるプログラムのリストが含まれています。(以下で、これら2つのファイルの内容について詳しく見ていきます。)
では、この機能はどのように機能するのでしょうか?AppleはSafari、メール、iChatで以前から「隔離」機能を採用しています。この機能は、ファイルがダウンロードされたとき、メールの添付ファイルとして受信されたとき、チャット中に受信されたときを検知し、それらのファイルに、いつ、どのアプリケーションでダウンロードされたかに関する情報を含む拡張属性(ユーザーには表示されないデータ)を設定します。 Safari でダウンロードしたディスク イメージの拡張属性は次のようになります:
com.apple.quarantine: 0000;4a9bc528;Safari.app;2E402B0A-4A8B-4E0C- B51B-47DE7BD0361E|com.apple.Safari
(この拡張属性は上記の方法で受信したすべてのファイルに追加されますが、隔離機能は特定のファイル タイプ、主に実行可能ファイル (アプリケーションまたはスクリプト) とインストーラ パッケージのみを確認することに
注意してください)。ディスク イメージをマウントした後、ディスク イメージ内の実行可能ファイルまたはインストーラ パッケージをダブルクリックすると、隔離機能によって拡張属性が検出され、システムが警告をポップアップ表示します:
アーカイブ形式の実行ファイルまたはインストーラーパッケージをダウンロードした場合にも、このエラーが発生します。実行ファイルを解凍し、ダブルクリックすると、上記の警告が表示されます。
マルウェアに関しては、Apple の新しい機能はこの隔離システムを利用してファイルをスキャンし、マルウェアが見つかった場合は次のように表示されます。
Apple のマルウェア対策機能は何をスキャンするのでしょうか?
さて、先ほど触れたXProtect.plistファイルの中身を見てみましょう。Appleのプロパティリストエディタでこのファイルを見ると、RSPlug.Aトロイの木馬とiServicesトロイの木馬という合計2種類のマルウェアがリストされていることがわかります。
Integoは前者を2007年10月に、後者を今年1月に発見しました。現在、RSPlug型トロイの木馬には17種類の亜種が、iServices型トロイの木馬には複数の亜種が流通しています。
興味深い疑問の一つは、Appleのマルウェア対策機能がRSPlugトロイの木馬の既存の亜種をすべて検出できるかどうかです。Integoのウイルス対策チームがテストを行った結果、AppleはRSPlugトロイの木馬の17の亜種のうち15の亜種しか検出できないことがわかりました。つまり、そのうち2つの亜種がAppleのネットワークを突破することになります。Snow LeopardはRSPlug.AとRSPlug.Cの亜種を検出しないことが判明しました。さらに、Appleのマルウェア対策機能は、検出した亜種を誤って識別しているようです。RSPlugトロイの木馬の亜種に対して表示される警告には、必ずRSPlug.Aの亜種が検出されたと表示されます。
iServicesトロイの木馬に関しては、状況は少し複雑です。このトロイの木馬は、BitTorrentサイト経由で配布された海賊版ソフトウェアで発見されました。しかし、AppleはBitTorrentクライアントでダウンロードされたファイルにフラグを付けていません(下記参照)。そのため、誰かがiWork '09やPhotoshop CS3の感染ディスクイメージをウェブサイト経由で配布し始めない限り、Appleのマルウェア対策機能はiServicesトロイの木馬を検出することはありません。
このシステムには大きな弱点があることを指摘しておく必要があります。Appleのインストーラは、.pkgファイルと.mpkgファイルの2種類のインストールファイルを使用します。前者は単純なパッケージファイルで、後者はメタパッケージファイルです。メタパッケージファイルには複数のパッケージが含まれており、多くの場合、複数の要素を含むインストールに使用されます。私たちのテストでは、Appleのマルウェア対策機能は.mpkgファイルに含まれるマルウェアを検出できないことが判明しました。メタパッケージファイル内のRSPlugトロイの木馬サンプルを複数テストしましたが、アラートは表示されませんでした。しかし、メタパッケージに含まれるファイルの中には、単独で開くとアラートが表示されるものもありました。
どのアプリケーションが保護されていますか?
上で述べたように、Exceptions.plist というファイルには、Apple のマルウェア対策機能を使用できるプログラムのリストが含まれています。
「追加機能」の下には、Snow Leopardが現在マルウェアの監視対象となっているプログラムの識別子が表示されます。WebブラウザはInternet Explorer、Firefox、OmniWeb 5、Opera、Shiira、Mozilla Navigator、Camino、メールクライアントはEntourage、Seamonkey、Thunderbirdです。(これらのプログラムに加えて、Apple独自のSafari、Mail、iChatがありますが、これらはファイルには表示されません。これらのアプリケーションのinfo.plistファイルにはLSFileQuarantineEnabledキーが設定されています。このキーを設定するアプリケーションはAppleの隔離保護の恩恵を受けますが、これは個々の開発者の判断に委ねられています。)ただし、これはすべての種類のファイルに適用されるわけではありません。現時点では、アプリケーションやその他の実行ファイル(スクリプトなど)とインストーラパッケージにはフラグが付けられます。他のファイルタイプにもフラグが付けられますが、アプリケーションではないファイルを装ったトロイの木馬は網をすり抜けてしまう可能性があります。
このリストには、インスタントメッセージングプログラム(MSN、Adium、Skypeなど)やメールクライアント(PowerMail、Mailsmithなど)が含まれていません。しかし、何よりも重要なのは、Web以外からファイルをダウンロードできるアプリケーションの数が膨大であることです。FTPプログラムは保護されておらず、BitTorrentクライアントやその他のピアツーピアプログラムも保護されていません。これらはいずれも感染経路としてよく使用されます。
Finderは保護されていないため、ネットワークボリュームやUSBメモリなどのリムーバブルメディアからコピーされたファイルはスキャンされません。さらに、Appleの機能は感染したファイルを修復することも、Macが既に感染している場合に生じた可能性のある損害を修復することもできません。実際、後者の場合、AppleはMacが感染していることさえ通知できません。
未知なるもの:ウイルス定義の更新
Appleは、ウイルス定義ファイル(XProtect.plist)のアップデートはソフトウェア・アップデート・アプリケーションで提供されると発表しましたが、その頻度については言及していません。そもそも、現在の定義にはトロイの木馬が2種類しか含まれておらず、Macを脅かすマルウェアの規模を考えると、到底不十分です。Appleがこのファイルのアップデートをセキュリティアップデートで待つのか、それともより頻繁に個別のアップデートを提供するのかは不明です(AppleはMac OS Xのセキュリティアップデートを平均して年間約10回リリースしています)。商用アンチウイルスソフトウェアは頻繁なアップデートの恩恵を受けます。Integoの場合、少なくとも週2回、そして新たなマルウェアや新たな亜種が発見された場合は、より頻繁にアップデートが行われます。
まとめ
AppleがSnow Leopardに追加したマルウェア対策機能は、非常に限定的であることがわかります。スキャン対象となるのは少数のアプリケーションからファイルを検索するだけで、トロイの木馬も2種類しか検出できず、私たちがテストしたすべての亜種も検出されませんでした。ファイルの修復やMacのスキャンによる感染の検出もできません。メタパッケージに含まれるマルウェアも検出できないため、Appleの保護をすり抜けるマルウェアの拡散が非常に容易になります。ネットワークボリュームのスキャンもできず、リムーバブルメディアからコピーされた感染ファイルも検出できません。つまり、Snow LeopardのAppleのマルウェア対策機能は、Macユーザーにとって本格的な保護機能を提供していないという点で、特筆すべき点と言えるでしょう。