フリーミアム化したランサムウェア「Spora」

Spora ransomware

この記事を公開できるように尽力してきた SophosLabs の Dorka Palotay に感謝します。

Spora は、フリーミアムモデルを採用した新形態のランサムウェアです。

多くのランサムウェアの支払いページでは、ユーザーの信頼を得るために無料で 1~2 個のファイルの暗号を解除する「お試し」機能が提供されています。

攻撃者は、復号鍵を本当に持っていることを証明するために、ランダムに選ばれた 2 つのファイルをユーザーにアップロードさせ、元のファイルのコピーをユーザーに返送します。

攻撃者がユーザーの全データをアップロードしておらず (一般的な家庭用 ADSL ネットワークのアップロード速度がわずか 1 Mbps であることを考えると、全データをアップロードした可能性は高くありません)、また、ユーザーがどのファイルを選択するのか分からないことを踏まえると、攻撃者がユーザーのすべてのファイルを復号化するのに必要な鍵を持っていると推測できます。

Spora では、この「お試し」機能に新たなオプションが追加されています。

攻撃者の言うことを信じるのであれば、ユーザーには次の選択肢があります。

  • 無料で 2 つのファイルを復号化する。
  • 30 ドルで選択した複数のファイルを復号化する。
  • 20 ドルで Spora ランサムウェアそのものを削除する。
  • 50 ドルで「免疫」を購入する。
  • 120 ドルで完全なリストアを行う。

ソフォスは実際には支払いをしていないため (今後も支払うつもりはありません)、各オプションがどのような結果をもたらすのかをお伝えすることはできません。

しかし、ここに希望の兆しがあるのではないかとソフォスは考えます。

免疫オプションと削除オプションが新たに加わっているということは、データをきちんとバックアップするユーザーが最近増えていることを示唆しています。

つまり、感染したユーザーが復号鍵を購入しなくてもデータを回復できるようになったため、攻撃者もユーザーの興味をそそるようなオプションを考え出さなければならなかったのだと考えられます。

Spora の感染経路

これまでのところソフォス独自のスパムトラップで検体は確認されていませんが、Spora が電子メールで配布されるよう設計されているのは明らかです。

Spora の攻撃は、次のような段階を経て実行されます。

  • ZIP ファイルが添付されています。

フォルダ内のファイルのリストを見ることが、そのフォルダ内の個々のファイルを実際に開くことよりも危険性が低いのと同じで、たとえ電子メールに添付されていたものだったとしても、ZIP ファイルを開くことは低リスクであると一般的にはみなされます。

  • ZIP ファイルには、ユーザーの興味を引く名前が付けられた HTA ファイルが含まれています。

HTA は HTML アプリケーションの略です。つまり、Windows は、閲覧時に課されるサンドボックスなどのセキュリティ対策の対象ではない Web ページとして HTA ファイルを処理します。

HTA ファイルにスクリプトが埋め込まれている場合、そのスクリプトはダウンロードされたプログラム (.EXE ファイル) と同様の実行時権限を持ちます。

  • HTA ファイルには、close.js という名前の埋め込み型の JavaScript ファイルを作成・実行する VBScript プログラムが含まれています。

攻撃の次の段階を構築して開始するだけのマルウェアコンポーネントは、ドロッパーと呼ばれます。

最近マルウェアの配信は、ダウンローダーと呼ばれるコンポーネントによって実行されています。ダウンローダーは、攻撃の次の段階を埋め込みデータとして持ち歩かずにインターネットから取得しますが、結果は同じです。

ドロッパーの欠点は、配信される内容を実行時に変更できないことです (ダウンローダーでは変更が可能です)。

一方、ドロッパーにはインターネット接続が不要という利点があるため、感染したユーザーがオフラインであっても機能します。また、Web フィルターで検出されることもありません。

  • close.js ファイルは、ランダムな名前が付けられ、Spora ランサムウェアが組み込まれたプログラムを作成・実行します。

これほど多くの段階に分かれている理由

「マルウェアの実行ファイルを電子メールに添付すれば、上記のような余計な手間が省けるのに」と疑問に思われるかもしれませんが、その理由は次のとおりです。

  • ほとんどのユーザーは何年も前から、電子メールに添付された EXE ファイルを開いてはいけないことを知っています。また、EXE ファイルがメールゲートウェイを通過することを許可している組織はほとんどありません。電子メールに添付されたプログラムが正規のものであることは非常にまれであるため、そうしたプログラムをすべて無条件にブロックするのは効果的な対策です。
  • EXE ファイルが信頼できる会社のものだと思わせる目的で無害そうに見えるファイルがいくつも ZIP ファイルに追加されていたとしても、EXE が含まれている ZIP も同様に疑わしいとみなされます。
  • ZIP ファイル内の JavaScript ファイルは、ランサムウェアを悪用する攻撃者がよく使う方法です。そのため、不審に思うユーザーが増えています。JavaScript ファイルは巻物のアイコンで表示されますが、このアイコンが文書ではなくスクリプト (つまりは「信頼できないプログラム」) を表していることを多くのユーザーが知っています。
  • 現時点ではユーザーは HTA ファイルに対して .JS や .VBS スクリプトファイルほどの懸念を抱いてはいません。しかし、HTML ファイルと同様、HTA ファイルには JavaScript や VBScript のプログラムを埋め込むことが可能であるため、同じくらい危険であると考える必要があります。

このように攻撃を複数の段階に分割することで、各段階が無害であるかのように思わせる効果があるかもしれません。

しかし、一方ではセキュリティソフトウェアによって攻撃を阻止するチャンスが増えることを意味します。

攻撃を成功させるには、すべての段階が順番通りに達成されなくてはなりません。つまり、1 つでも阻止することができれば攻撃は失敗に終わります。

ソフォス製品では、この攻撃を次のようにブロックします。Troj/HTADrp-I (ZIP ファイルと HTA ファイル)、JS/Drop-KI (JS ファイル)、Troj/Ransom-ECL (EXE ファイル)。たとえ EXE ファイルが実行されたとしても、Sophos Intercept X がマルウェアをブロックし、ユーザーのファイルを自動的に復元します。また、攻撃はランサムウェアとして報告します。

その後の展開

Spora が実行されると、他のランサムウェア攻撃と同様、以下の拡張子を持つすべてのファイルが暗号化されます。

   .1cd    .7z     .accdb  .backup .cd     .cdr    
.dbf    .doc    .docx   .dwg    .jpeg   .jpg    
.mdb    .odt    .pdf    .psd    .rar    .rtf    
.sqlite .tiff   .xls    .xlsx   .zip

他のランサムウェアとは異なり、Spora はオフラインでも操作を完了させます。攻撃者のサーバーと通信して攻撃に使用する暗号鍵を取得することもなければ、報告することもありません。

暗号化プロセスはシンプルで、次のような手順で実行されます。

  1. Spora は、ユーザーのコンピュータごとに固有の RSA 鍵ペア (公開鍵と秘密鍵) を生成します。
  2. 次に、ファイルごとにランダムな AES 対称鍵を生成し、ファイルを暗号化します。
  3. ユーザーのコンピュータ用に生成された公開鍵を使用して、各ファイルの AES 鍵を暗号化します。
  4. ランサムウェアのファイルに保存されていた公開鍵を使用して、固有の公開鍵と秘密鍵のペアを暗号化します。

RSA などの非対称/公開鍵の暗号化では、公開鍵を使用してデータをロックします。ロックされたデータを解除できるのは、対応する秘密鍵だけです。非対称暗号化には非常に時間がかかるため、通常は少量のデータ (他の暗号化キーなど) を保護する場合にのみ使用されます。AES などの対称暗号化では、同じ鍵を使用してデータのロックとロック解除を実行します。これは、公開鍵の暗号化よりもはるかに高速で、ファイルやフルディスク暗号化などの大規模な暗号化タスクに使用されます。

ファイルの暗号化に使用される AES 鍵も、AES 鍵の復号化に必要な秘密鍵も暗号化された状態で保存されているため、ランサムウェアが終了した後に削除を取り消すことはできません。

また、Spora は Windows のシャドウコピー (オンラインバックアップ) も削除するため、シャドウコピーを使用してユーザーのファイルをロールバックし復旧することはできません。

さらに、Spora はスタートメニューのショートカットを使用できないようにすることで、ユーザーが簡単にはコントロールパネルを開いたり、コマンドプロンプトを実行したりできなくします。また、調査を妨害する目的で、リカバリモードで再起動できないようにします。

ファイルを復元するには、各ファイルの AES 鍵が必要です。AES 鍵を復元するには、コンピュータ固有の秘密鍵が必要です。そして、固有の秘密鍵を復元するには、ランサムウェアのプログラムファイルに格納されているグローバル公開鍵と対応するグローバル秘密鍵が必要です。

言うまでもなく、グローバル秘密鍵を持っているのは攻撃者だけです。ファイルと鍵が暗号化されてしまったユーザーは、文字通り自分の城への鍵を攻撃者に握られたことになります。

身代金の支払い

Spora はデスクトップに 2 つのファイルを作成します。1 つは支払い方法を説明した HTML ファイルで、もう 1 つはコンピュータのロックを解除するために必要な秘密鍵の暗号化されたコピーを含む KEY ファイルです (下図参照)。

Spora は HTML ファイルを読み込みます (下図参照)。

このローカルの Web ページの次に、攻撃者が運営するポータルページが表示されます。

この Web サーバーは、ダークウェブ上のサービスとバックグラウンドでやり取りします (ダークウェブの情報が明かされることは決してありません)。そして、ユーザーが KEY ファイルをアップロードすると、支払い処理が開始されます (下図参照)。

ソフォスは身代金の支払いを試していないので、免疫オプションがどう機能するのかを正確にお伝えすることはできません (ユーザーが再度感染したとしても、身代金を要求しないことを意味する「みかじめ料」のようなものだと思われます)。

Spora はユーザーのファイルを暗号化する前に攻撃者と通信しないため、攻撃者にとってはユーザーが誰であるかを特定するのは容易ではありません。

したがって、「免疫」オプションを選択しても本当に感染を防止できるかは疑わしいですが、万が一再感染した場合には、料金支払い済みの復号鍵を提供してくれると信じるしかありません。

対策

繰り返し申し上げているように、そもそもマルウェアに感染しないことが大切です。ソフォスが発表した『ランサムウェアから身を守るには』というガイドには役立つ情報が掲載されています。ぜひお読みください。


Techknow ポッドキャスト Dealing with Ransomware (英語) も併せてご紹介しておきます。

今すぐ視聴する

(オーディオプレーヤーが動作しない場合は、Soundcloud でお聞きいただくか、iTunes からアクセスしてください。)