Cisco Japan Blog
Share

基本に戻る:ランサムウェア時代のワームへの防御


2017年9月8日


執筆者:Edmund Brumaghinpopup_icon

「過去を記憶できない者は、それを繰り返す運命にある」- George Santayana

前日譚

2017 年 3 月、Microsoft はさまざまなバージョンの Windows 用にセキュリティ更新プログラムをリリースしました。これは、SMBv1 というプロトコルに影響を与える、リモート コード実行の脆弱性に対処するためのものでした(MS17-010)。この脆弱性が悪用されるとリモートの攻撃者が感染システムを完全に侵害することが可能になるので、この脆弱性は「緊急」と格付けされ、セキュリティ更新プログラムの適用が推奨されました。Microsoft はさらに、セキュリティ更新プログラムを直接適用できない環境でもこの脆弱性を排除できるように、回避策のガイダンスをリリースしました。同時に、シスコから、お客様の保護を確保するためのカバレッジpopup_iconがリリースされました。

翌月の 2017 年 4 月、「TheShadowBrokers」の名で活動しているグループが、インターネット上にいくつかのエクスプロイトを公開しました。これらのエクスプロイトでは、さまざまな脆弱性がターゲットにされていましたが、その中に、1 ヵ月前に MS17-010 で対処されたものも含まれていました。いつものことですが、新しいエクスプロイト コードが世に送り出されると、それは必ず、情報セキュリティ業界だけでなくサイバー犯罪者にとっても研究の焦点になります。善良な者が情報を取得し、セキュリティの改善などのよりよい行いに使用する一方で、サイバー犯罪者もコードを取得して、金銭的利益や混乱の醸成などといった自らの目標に活用する方法を模索します。

ランサムウェア ワーム

コンピュータ ワームは新しい概念ではありません。ワームは、システム内部またはシステム間で自己伝播するという点で、その他のマルウェアとは異なります。たとえば Conficker は、Windows の脆弱性(MS08-067)を利用して伝播するコンピュータ ワームで、その起源は 2008 年にまでさかのぼります。事実、Conficker は、それからほぼ 10 年を経た今もなお、脆弱なシステムからシステムへと次々と移動し、インターネット全体に広まっています。私たちは過去からの教訓として、「ワーム化できる」脆弱性を利用したエクスプロイト コードが公表されるたびに、ワームが作成され配布されるということを学んできました。これは頻繁に起こることではありませんが、実際に起きた場合、ワームが世界中に及ぼし得る影響は重大です。2017 年の時点で、私たちはこれまでにそれを 2 度経験しています。ただし、コンピュータ ワームを使用してランサムウェアやその他の破壊的マルウェアを広めるやり方がこれまでと異なっていました。WannaCry と Nyetya が現れたのです。

WannaCry

時は進んで 2017 年 5 月、私たちは、脅威状況の中に、WannaCrypopup_icon が出現したことを確認しました。WannaCry はランサムウェア ワームとして作成されました。つまり、これは Windows の脆弱性を利用して拡散し、明示的なユーザ操作を必要とせずに他のシステムも感染させます。WannaCry は、2 ヵ月前に対処されていた脆弱性(MS17-010)を利用して、この伝播を実行しました。システムが感染するとランサムウェアがインストールされ、そのシステムが攻撃を他のシステムに拡大させるために使用されます。これにより、感染システムが短期間のうちに雪だるま式に増え、マルウェアの拡散行動が活発に行われることになります。世界中の多くの組織が、感染により直接的な影響を受けたり、マルウェアを原因とする何らかの問題によって間接的な影響を受けたりして、WannaCry による被害は世界的に広がりました。

Nyetya

話を 2017 年 6 月に進めます。WannaCry と同じ脆弱性(数ヵ月前にセキュリティ更新プログラムがリリースされています)を活用した、より精巧な 2 つ目の攻撃popup_iconが登場しました。この攻撃を精巧と評価するのには、多くの理由があります。まず、「サプライチェーン攻撃」と呼ばれる手法が、組織侵害のための初期の攻撃ベクトルpopup_iconとして使われています。サプライチェーン攻撃では、組織とベンダーやサプライヤとの信頼関係が、攻撃者によって利用されます。今回、Nyetya の背後にいる攻撃者は、ウクライナの企業や組織で広く使用されているソフトウェア更新サーバを侵害しました。攻撃者は、侵害されたサーバを利用し、ソフトウェアのアップデートを装って、バックドア付きのソフトウェアを展開しました。いったんバックドアが開けられると、攻撃者は、標的とする環境に直接マルウェアを配信することができます。今回のケースでは、マルウェアはシステムに重大な影響を与え、複数の方法を利用して感染組織のネットワーク全体に伝播しました。WannaCry 同様、これにより多くの組織が、重大な操業の中断に直面しました。ただし今回の被害は主にウクライナ国内に集中していました。

WannaCry とNyetya の比較

これらの 2 つのマルウェアには大きな違いがあります。前述のように、多くの理由から Nyetya のほうがかなり精巧であると考えられます。それらの理由については、次のセクションで詳しく説明します。これら 2 つのワームの精巧度の違いの一例が、コードそのものの中に見られます。WannaCry には複数のバグがありました(スキャン機能の不具合など)。これは、WannaCry を作成した攻撃者と Nyetya を作成した攻撃者のスキル レベルの違いの現れかもしれません。これらの 2 つのワームの主な違いは、マルウェアの配信方法、マルウェアの伝播の方法、それらを配布した攻撃者のミッションの目的によって、特徴付けることができます。

配信

2 つのマルウェア ファミリが使用した配信メカニズムは大きく異なっていました。WannaCry は単純でした。脆弱な SMBv1 サーバを検出あるいは構築して感染させ、そのサーバにインターネットをスキャンさせて、伝播します。Nyetya は、はるかに高度でした。Nyetya ワームの背後にいる攻撃者は、特定の地理的地域内で広く使用されているソフトウェアのアップデート配信用サーバの侵害に成功しました。私たちのブログ記事(こちらpopup_icon)で述べているように、攻撃者が標的地域内のシステムにこのようなレベルでアクセスできることを暴露あるいは公表することを選んだ理由は、将来的に使用できるであろう同等の機能をほかにも持っていることにあると考えられます。

伝播

Nyetya によって使用される伝播メカニズムには、WannaCry と同様の機能のほか、Nyetya によって利用可能ないくつかの方法と、クレデンシャルの侵害が含まれていました。Nyetya は、単純に SMBv1 の脆弱性に依拠するだけではなく、PSExec と WMI を利用する能力も備えていました。さらに、WannaCry が内部ネットワークにも外部ネットワークにも広がるようプログラミングされ、コード レベルでスキャン機能に問題を抱えていたため性能が不十分だったのに対し、Nyetya は、被侵害環境の内部にのみ伝播していきました。これは、マルウェアの影響を特定の標的地域または組織のみに限定するために行われた可能性があります。

ミッションの目的

これら両ケースでは、ミッションの目的も異なっていたと想像されます。WannaCry では、ランサムウェアの大規模展開を通じて収益を挙げようとしたものの、そのマルウェアの試みは不十分な結果に終わったと結論付けるのが妥当と思われます。このマルウェアには「キルスイッチ」(マルウェアの拡散の制御を目的に指定された単一のドメイン)が含まれていたため、セキュリティ研究者はその拡散を容易に止めることができました。これは、このプログラマが現に未熟であったことを示唆しています。WannaCry のビットコイン ウォレットで見られた、その後の攻撃者のビットコインの動きも、その仮説をさらに裏付けているように思われます。Nyetya では、標的の環境内で操業の中断を引き起こすことが、ミッションの目的とされていたようでした。Nyetya では、感染システムのハード ドライブが部分的に完全消去されたこと、そのプロセスを逆転させるメカニズムが提供されなかったことも、この仮説の裏付けになっているように思われます。

実施すべきだった対策

情報セキュリティの基本原則をおさえていれば、これら両脅威の影響を防止または大幅に制限する有効な手段となっていたでしょう。

パッチ

WannaCry は、ほとんどの組織にとって、容易に回避可能でした。MS17-010 関連のセキュリティ更新プログラムをインストールするだけで、WannaCry の感染を防ぐことができたでしょう。一部の組織でまだ現役で使用されている古いシステムについては、これが可能であったのか、いくつかの議論がなされています。WannaCry の MS17-010 の脆弱性を狙ったエクスプロイト コードの実装では、これらのシステムのほとんどで正常に実行されることすらありませんでした。Microsoft は最終的に、これらの古いオペレーティング システム用にも、MS17-010 の更新プログラムをリリースしました。

セキュリティ コミュニティが長年にわたって強調してきたように、有効なパッチの管理は不可欠のセキュリティ制御であり、組織は何としてもこれを自身の環境内で実装しなければなりません。私たちは、組織が自身の環境にパッチを適用していなかったというだけで攻撃が成功してしまった事例を、数多く見てきました。ゼロデイの脆弱性を使ったエクスプロイトは実効性が高いですが、通常は攻撃者にとっても非常にコストがかかります。パッチの存在する公開済みのエクスプロイトならば、非常に安く済みます。攻撃者がより安価な手段でミッションが達成できることを知っているのなら、普通に考えればゼロデイ脆弱性は利用されないでしょう。組織の立場から考えると、ゼロデイ脆弱性の悪用により環境内のシステムが侵害されている場合、それは概してよい兆候です。つまり、それは攻撃者が防御を突破する上でより安価な方法を見つけられなかったということを意味しており、ゼロデイ脆弱性以外への対処がすべて効果的に実施されていることを示しているからです。

最小限の機能

システムが所定の役割または機能を実行する上で必要な機能だけをシステムに実装するようにしてください。Microsoft では、必要ない場合には SMBv1 を無効にすることを推奨しています。同様に、システムやサービスへのアクセスを制限することも、もう 1 つの不可欠なセキュリティ制御です。システムで SMBv1 が使用されている場合でも、インターネットのような攻撃される恐れのあるネットワーク環境にそれをさらす必要があることは稀です。Windows オペレーティング システムに組み込まれているようなホストベースのファイアウォールを、内部ネットワーク セグメント上でも活用することが、これらのサービスへのアクセスを制御する際のもう 1 つの方法となります。

最小限の権限

WMI および PSExec のような管理ツールの使用は、システム管理者がシステムの管理を実施するシステムだけに制限するようにしてください。組織のネットワーク全体で、これらのツールが使用されていないかを監視しても、予防的なセキュリティ制御とはいえません。しかしながら、そのような監視によって侵害されたシステムをすばやく特定することで、適切なインシデント対応プロセスの開始につなげることができます。

システムとネットワークの監視

通常、コンピュータ ワームは非常に早く伝播し、ほとんどの環境で、きわめて大きな兆候を示します。今回のケースではどちらの場合も、ワームはスキャン機能を起動させて、新たな伝播先ホストを特定しようとしました。サービスのスキャン、あるいはネットワーク上の単一のシステムから短時間のうちに多くのシステムに接続する試みなどが行われていないかを監視します。このように環境を監視することで、感染システムの早期識別が可能になり、組織にさらに大きな影響が及ぶ前に問題に対処することができます。

ネットワークのセグメント化

MS17-010 関連のセキュリティ更新プログラムのインストールがまったく不可能な環境においても、ネットワークのセグメント化が効果的な手段となります。攻撃の成功を防いだり、あるいは攻撃が成功してしまった場合に組織の環境内の他の部分に影響が及ぶのを制限したりする効果が期待できます。通信経路内に「チョーク ポイント」を作成することは、侵害が成功してしまった場合の影響を制限する上で、非常に優れた手段です。また、それだけでなく、ネットワークベースのセキュリティ制御を展開する上での理想的な場所にもなります。攻撃を初期の段階で防ぐことにも使用できるのです。前述した最小限の機能の原則に準じれば、これらのチョーク ポイントのそれぞれに対してもその原則が求められます。アクセス制御を展開する際には、システムが業務上の役割を果たす上でほんとうに必要な通信のみに制限します。フラットなネットワークは管理と維持が容易ですが、その一方で、WannaCry や Nyetya のような攻撃の影響を軽減する上ではほとんど役に立ちません。

プロセスとポリシー

組織にとっては、予期せぬ事態が発生した場合に、適切かつ効果的に対応できる備えを確保する上で、安定したポリシーとプロセスを定めておくことが必須です。ディザスタ リカバリや事業継続性計画により、計画外のシステム停止や障害からの復旧が可能となります。これらのプロセスの効果を長期間持続させるには、組織は計画を定めるだけでなく、相当の時間をかけてテストや検証を行い、組織のニーズが継続的に満たされていることを確認しなければなりません。ご自身の組織は、迅速にシステムの停止から復旧し、ビジネス ニーズに応えることができるでしょうか。バックアップ戦略は有効でしょうか(つまり、バックアップを使用するだけで復旧できるでしょうか)。このようなニーズは時間の経過とともに変化します。こうしたプロセスをテストすることで、効果が維持されているかを、システム障害や災害が発生する前に確認しておくことができます。インシデント対応も、定期的にテストした上で配置すべきプロセスです。テストは、ハンティング演習、机上演習、実地検証を使用して行います。インシデント対応チームが環境内でセキュリティ イベントが発生した際に効果的な対応を行う上で、必要な知識とツールを備えているかをほんとうの意味で確認するには、これが唯一の方法なのです。

まとめ

WannaCry と Nyetya は、世界中の多くの組織にマルウェアによる著しい影響をもたらした事例でした。組織が適切に保護されていること、および環境内で発生し得る障害に対応する準備ができていることを確認するには、情報セキュリティの観点から基本に立ち返る必要があることを、これらの出来事は如実に示しています。コンピュータ ワームは何ら新しいものではなく、数十年前から存在しています。適切な多層防御戦略を配備することで、広範囲にわたるシステム障害を防止するとともに、環境内でシステム侵害が発生した場合に、それを検出した上で対応し、その影響を最小限に抑えることのできる体制が確保されます。

国立標準技術研究所(NIST)は、特別刊行物 800-53『Security and Privacy Controls for Federal Information Systems and Organizations(連邦情報システムおよび組織のためのセキュリティとプライバシーの制御)』を発表しました。この刊行物では、推奨されるベスト プラクティスとネットワーク環境内で適切な防御アーキテクチャを確立する上で実施できるセキュリティ制御の選択肢について、包括的なガイダンスが提供されています。このガイダンスはこちらpopup_iconから参照できます。

 

本稿は 2017年8月31日に Talos Grouppopup_icon のブログに投稿された「Back to Basics: Worm Defense in the Ransomware Agepopup_icon」の抄訳です。

 

Tags:
コメントを書く