システムをメンテナンスするソフト「CCleaner」は世界中にユーザーを持ち、その数は1億人を超えると言われている。このソフトの一部にマルウェアが混入したことが判明した。日本は国別検出数で14位となっており、企業・組織を中心に被害を受けている恐れがある。(2017年9月度マルウェアレポートでも解説)
この記事は、ESETが運営するマルウェアやセキュリティに関する情報サイト「Welivesecurity」の記事を翻訳したものである。
Piriform社が不正コードに汚染された「CCleaner」(バージョン5.33.6162)と「CCleanerクラウド」(バージョン1.07.3191)を自社のサーバーから配布するようになったいきさつについては、多くの可能性がある。もちろん、実際の理由が確定し公表されるまでは全ては推測にすぎないが、当記事では、この世界的に拡散したセキュリティ事故の引き起こした、幾つかの可能性について論じる。
以下のいずれもが、今回の事故を引き起こした原因かもしれないセキュリティ侵害である(順不同)。
1.内部犯行。AvastがPiriformを買収した後、反対する誰か、会社を去った誰か、もしくはAvastのために働きたくない誰かが、バックドアを仕掛けた。
2.社外のクラッカー。ウクライナの会計ソフト「M.E.Doc」とマルウェア「DiskCoder.C.」が拡散したように、外部からのクラッキングがこのサプライチェーン攻撃を引き起こした。
3.ISPや正規のダウンロードサイトからファイルのダウンロードにリダイレクトするプロキシーが一時的に、トロイの木馬化されたバージョンにリダイレクトされた。近い例では、「FinFisher」攻撃がある。トロイの木馬化されたバージョンはデジタル署名を保持していない傾向にあり、追加での侵害を伴う。
4.その他
ほかにも、まだ思い付いてもいない、可能性のより低いシナリオもたくさんありうる。
Piriform社へのシステム侵害の手法については言及しなくとも、32ビットバージョンだけがハッキングされていただけでも、CCleanerのユーザー数は1億人いることから、世界中に影響があるだろう。だが、ここには違和感が残る。もしも64ビットバージョンにもバックドアが仕掛けられていれば、その影響もより強大で劇的なものになっていたからだ。32ビットバージョンだけがトロイの木馬に改造されていた理由は、今までのところ、謎である。
このバージョンだけで、サイバー犯罪者たちはデジタル署名を得られたのだろうか。おそらく、(近い)将来に、Piriform社はこのシステム侵害の実態を発見し、もしもそのサイバー攻撃が他社でも有効であるならば、皆が学び知るために公表するだろう。
後半部分がより重要だ。なぜなら、こうしたサプライチェーン攻撃と呼ばれる攻撃手法は、いまだに珍しいが、増えつつあるからだ。誰もがこの攻撃を受けるかもしれず、より優れた防御手法を構築するために、既存の事例から攻撃の方法について学ぶのが賢明だろう。狙われたソフトウェアの普及度次第で、影響も重大になり得る。侵害された会計ソフト「M.E.Doc」は、CCleanerほど広くは拡散しなかった一方で、感染した企業へのトロイの木馬(DiskCoder.C)の影響は大きかった。最終的な影響は、C&Cサーバーがすでに閉鎖されてしまっており、まだ分からない。そして、いったい何台のコンピュータが感染しているかも分からない状態なのだ。
ESETがパートナー企業と協力して集めたマルウェア検出測定値を見ると、トロイの木馬バージョンのCCleanerが33万8,000件も検出されており、検出数の国別のトップ10は以下の通りだ。
1.ロシア
2.ドイツ
3.ペルー
4.ポーランド
5.フランス
6.ウクライナ
7.アメリカ
8.オランダ
9.イタリア
10.スペイン
CCleaner国別検出数
サイバー攻撃は32ビットバージョンに対して行われた一方で、最近ではユーザーの大半は、64ビットバージョンを運用している。しかし、被害の生じた国々は、CCleanerの普及についてはそれほど顕著に多いわけではない。つまり、全ての国で同じだけの割合の人々が感染したという推察が可能である。これは、悪用されたソフトウェアがどのように世界中に影響を与えるのか表しており、気になる事柄だろう。
幸運なことに、セキュリティ分野では多様な対応網が形成されているが、1社しかセキュリティベンダーのない一様な対応では何が起こり得るのか考えてもらいたい。トロイの木馬の作成者は、たった1つのセキュリティ製品の対策を潜り抜けるだけでよい、ということである。
1つあるいは幾つかの理由から、パフォーマンスを改善することはまれであるにもかかわらず、レジストリーを「掃除(クリーンアップ)」する必要を感じる。ただしMicrosoftではレジストリークリーナーの使用は勧めていない。その理由は、こうしたユーティリティーが実際にシステムに悪影響を与える可能性があるためである。
「ダメージを受けたWindowsレジストリーは、さまざまな症状に悩まされ、CPUの過剰駆動や起動・シャットダウン時間の延長、アプリケーション機能の劣化や不規則なクラッシュや停止も起こり得る。これらの不規則なクラッシュや停止は究極的には、その途上でデータをストレージに保存し返せなくなることに起因するデータの消失を引き起こし得る」
さらに興味深いことに、Microsoftはほかにも次のように書いている。
「インターネット上で無料利用できるプログラムはスパイウェア、アドウェア、あるいはウイルスを含んでいる」
今回の事故は、フリーソフトが本当は「無料」ではないことを思い起こさせるものになるべきだろう。無料のときはいつでも、そのユーザーのデータが価値あるものだと考えられている可能性がある。もし無料ソフトウェアについてより詳しく知りたければ、トニー・アンスコム(Tony Anscombe)の記事「タダ乗りのコストとは」を読んでもらいたい。
「電子フロンティア財団」(EFF)の記事「CCleanerへの攻撃は、ダウンロード保護とユーザーの信頼性維持の重要性を強調する」において、この声明で強調している危険性は、(無料の)ソフトウェアの重要性や信頼を損ねている。
読者には、無料でもそうでなくても、そしてその無料ソフトウェアを作っている企業に対しても、ソフトウェアへの信頼を失わないでもらいたい。また、アップデートをし続けると、サプライチェーン攻撃のリスクはいつも存在しており、おそらく拡大しつつあることも忘れてはならない。しかし、ソフトウェアをアップデートしないままにしておくことは、リスクを非常に拡大させてしまうことになる。
ESETを含むソフトウェア開発者にとっては、サプライチェーン攻撃を防ぎ、それぞれのステップを検証し、正規のソフトウェアがデジタル署名され、ユーザーが利用できるようにすることが、喫緊の課題である。
セキュリティ産業は(正しいことに)2FA(2要素認証)のような技術を用いてセキュリティレイヤーを追加するよう説いている。しかしもちろん、セキュリティ業界自体も、供給経路、配布経路、そして内部システムを安全に保つべきだ。「二人規則」(ツーマンルール)と似ている二人認証(2PA)は、そのスタート地点にふさわしい。