主要なMacソフトウェアの注目アップデートを追跡するTidBITS Watchlistの定期機能は多くの読者にご好評いただいていますが、多くのアプリでは、最新バージョンがリリースされるたびにわざわざ探し回る必要がなくなりました。代わりに、これらのアプリはSparkleと呼ばれるオープンソースフレームワークを使用して、アップデートを自動的にチェック、ダウンロード、インストールします。
残念ながら、一部の開発者はSparkleの実装に十分な注意を払っておらず、Macが攻撃を受けるリスクがあります。研究者のRadosław Karpowicz氏は、多くの開発者がサーバーへの接続に暗号化されていないHTTP接続を使用していることを発見しました。これは中間者攻撃(MITM)の危険性をはらんでいます。そのため、悪意のある人物はネットワーク接続を傍受し、悪意のあるコードを挿入することで、AppleのGatekeeperセキュリティ機能を作動させることなく、侵入したアプリを介してMacを乗っ取ることができるのです。
Sparkle自体は、実際にはそれほど悪い行為をしているわけではありません。暗号化されていないHTTP接続の使用は、ドキュメントに記載されている「AppCastではHTTPS URLを使用することを強くお勧めします」という推奨事項に違反しているからです。とはいえ、Sparkleチームは既にこの脆弱性に対処するためにSparkleを更新しています。唯一の問題は、新しいSparkleコードを含むアプリを更新するには、アップデートが必要であり、それが脆弱性の影響を受ける可能性があることです。
でも、慌てる必要はありません!この脆弱性を悪用するには、攻撃者はあなたのMacと同じネットワークに接続している必要があります。自宅やオフィスなど、安全な場所にイーサネットや安全なWi-Fi接続があれば、何も心配する必要はありません。アプリを必要な時にアップデートし続け、プライベートネットワークに接続していれば問題ありません。
しかし、VPNを導入してネットワークトラフィック全体を保護せずに、公共のWi-Fiネットワークを頻繁に利用している場合、隣のテーブルに十分な能力を持つハッカーがいれば危険にさらされる可能性があります。このリスクは、自動アップデートチェックが有効になっていて実行されている、影響を受けるすべてのアプリに適用されます。しかし、VPNを使用することで安全を確保できるため、自宅やオフィス以外のネットワークを使用する際には、VPNを標準的な運用手順として活用する必要があります。VPNが利用できない場合は、Sparkleを使用するすべてのアプリで自動アップデートチェックを無効にし、アップデートが届いたら手動でダウンロードしてインストールすることもできます。この脆弱性を悪用するには標的型攻撃が必要となるため、
政府や企業の要人以外に対して無差別に使用される可能性は非常に低いでしょう。
それでもまだ不安なら、どのアプリが脆弱なのかをどうやって見分ければいいのでしょうか?脆弱なアプリを見つけるためのターミナルコマンドはいろいろありますが、私が見つけた中で最も良いのは、Mac Kung Fuのコメント欄にコメントしているRussWさんのものです。彼の解決策は、アプリがSparkleと安全でないHTTP接続の両方を使用しているかどうかを確認し、それらのアプリのリストを分かりやすい形式で出力することです。
残念ながら、RussWさんのテキストにはスマートクォートが含まれており、コマンドが部分的に壊れてしまいます(ご指摘いただいた読者のJoeさんに感謝します)。そこで、正しい形式のコマンドを記載したPastebinリンクを作成しました。このリンクにアクセスし、「RAW Paste Data」の下のコマンドをコピーし、ターミナルウィンドウに貼り付けてReturnキーを押します。ターミナルにアプリケーションフォルダ内の脆弱なアプリの一覧が表示されます。
リストは長くなるかもしれませんが、公共のWi-Fiネットワークを利用する人は、新しいバージョンがリリースされるまで自動更新を無効にするべきアプリを特定するのに役立ちます。新しいバージョンがリリースされたら、手動で更新するか、
信頼できるネットワークに接続している場合にのみ自動更新を再度有効にしてください。繰り返しますが、これは、あなたが偏執狂的であるか、信頼できないネットワークを使用することに不安がある場合に限ります。セキュリティエディターのリッチ・モーグル氏がよく指摘しているように、中国にいる場合やNSAに追跡されている場合は、おそらくすでにデータが侵害されているでしょう。