36
バグと修正:Appleのマルウェア対策のトラブルシューティング

Snow Leopardのセキュリティアップデート2011-003をインストールしている場合は、Appleの保護機能の恩恵を受けることができます。特に最近のMac Defenderのトロイの木馬型マルウェアの亜種など、様々なマルウェア攻撃から保護されます。この保護機能は、ドライブに出現したマルウェアを検出し、場合によっては削除します。

新たなマルウェア攻撃が出現したらどうなるでしょうか?これがAppleのアプローチの優れた点の一つです。Appleは、ユーザー側で何も操作することなく、ドライブ上のマルウェア定義を自動的に更新できます。そのため、毎回新しいセキュリティアップデートをダウンロードする必要はありません。この機能を有効にするには(Appleにこの権限を与えることがマルウェアの脅威よりも不安にならないことを前提としています)、システム環境設定の「セキュリティ」パネルの「一般」タブで「安全なダウンロードリストを自動的に更新」オプションをオンにしてください。

このアップデートは非常に便利ですが、うまくいかない時もあります。理論上は、Appleが定義ファイルのアップデートをリリースした後、24時間以内にMacに変更が反映されるはずです。さらに、Macを再起動すれば、いつでも最新のアップデートが強制的にインストールされるはずです。しかし実際には、必ずしもスムーズに進むとは限りません。

同僚グループに確認したところ、想定されていた24時間以内にアップデートを受け取れたのは約50%だけでした。アップデートを受け取れなかった人(私もその一人です)の場合、原因はMacが「間違った」時間にスリープ状態になったこととは関係ありませんでした。Macがスリープ状態にならないように設定されていたにもかかわらず、アップデートは届きませんでした。同様に、アップデートを強制しようとしてMacを再起動しても、何も起こりませんでした。

ほとんどの場合、十分に待てば(48時間、あるいは72時間)、アップデートはいずれ届きます。しかし、少なくとも一度は、4日経ってもアップデートが届かなかったことがありました。

ここではバグが発生しており、どうやら一部のユーザーにのみ影響するバグであると確信しています。

このバグに対して何ができるでしょうか?先週のMacworldの記事で詳しく説明されているように、システム環境設定の「セキュリティ」パネルで上記のオプションのチェックを外して再度チェックすることで、強制的にアップデートできます。私も試してみたところ、うまくいきました。ただし、これは永続的な修正ではありません。次に定義ファイルのアップデートがリリースされても、想定される24時間以内にはアップデートされません。少なくとも私の環境では、そのように動作しました。

より便利な代替手段(ただし、これも永続的な解決策ではありません)は、Mac Observer の Adam Christianson 氏が開発した無料アプリ「Safe Download Version」を使用することです。このアプリでは、「定義を更新」ボタンをクリックするだけで、最新のアップデートがインストールされます。これで完了です。

プロパティ リスト エディターで表示される XProtect.plist

Appleはこれらの定義に精力的に取り組んでおり、この記事の執筆時点ではすでにバージョン10に達しており、数日ごとに新しいアップデートがリリースされているようです。

仕組みを詳しく知りたい人のために、仕組みは以下のとおりです。

マルウェア定義リストは、XProtect.plistというファイルに保存されています。Finderからこのファイルにアクセスするには、Finderの「移動」メニューから「フォルダへ移動」(Command-Shift-G)を選択し、「/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/」と入力します。開いたウィンドウで、XProtect.plistファイルを見つけるまで下にスクロールします。ダブルクリックしてください。AppleのProperty List Editorがインストールされている場合は、そのアプリで開きます。インストールされていない場合は、テキストエディタで開きます。このファイルには、Appleが保護を提供しているマルウェア定義がすべてリストされています。

このフォルダにアクセスしたついでに、隣接するXProtect.meta.plistファイルも確認してください。このファイルには、XProtect.plistファイルの最終更新日とバージョン番号が記載されています。Safe Download Versionアプリケーションはここから情報を取得します。

定義の更新は、XProtectUpdaterという名のUnixアプリケーションによって処理されます。このファイルはターミナルから手動で実行できます。プロンプトで と入力sudo /usr/libexec/XProtectUpdaterし、Returnキーを押します。プロンプトが表示されたら、管理者パスワードを入力してもう一度Returnキーを押します。(私はsudoを使わずにコマンドを入力できましたが、このコマンドを省略すると問題が発生したという報告もあります。)これは、Safe Download Versionの「定義の更新」ボタンをクリックしたときに実行される処理です。

2011 年 6 月 10 日 2:05 に更新され、sudo コマンドに関する情報が追加されました。