エフセキュアブログ

2016年04月

TeslaCryptの要約

 2年前、ランサムウェアについての一連のブログ記事を公開した折には、活発なランサムウェア・ファミリーは一握りしかなかった。しかしながら今年は、ランサムウェアがサイバー犯罪者達を熱狂させる最新の流行マルウェアとなった。

 そのため、我々は当社の若きTET(訳注:後述)の生徒Miroに、ランサムウェアの歴史、とりわけTeslaCryptの歴史についての短いレッスンを受けさせようと考えた。なぜならTeslaCryptは、いまだに流行っている、比較的「古い」ランサムウェアの1つだからだ。

 以下は、その彼の研究結果だ。


 TeslaCryptはランサムウェア・ファミリーに分類される。ランサムウェアが被害者のコンピュータに侵入すると、被害者のファイルを暗号化する。サイバー犯罪者たちが求めるもの、つまり金を得るまでは、暗号化したファイルはそのままだ。

 TeslaCryptは支払い方法としてBitcoinに加え、初めてPayPal My Cash Cardを追加したものの1つだ。

 TeslaCryptは通常のドキュメントや画像のファイルを暗号化するだけでなく、ビデオゲーム関連のファイルも標的にすることで知られるようになった。とりわけCall of Duty、Minecraft、League of Legends、Steamに関連付けられたファイルだ。

 これまでのところ、TeslaCryptには4つのバージョンがある。2015年2月に最初に発見され、最新のものは2016年3月に特定された。

 最初のバージョンでは、RSA-2048を用いていると称していたが、実際には暗号化方式としてAESを使用していた。暗号化されたファイルの名前には、.ECCという拡張子が付けられた。

Your presonal files are encrypted!

What happened to your files?

 TeslaCryptの2つ目のバージョン、つまりTeslaCrypt 2.0は、2015年7月辺りに出現した。同バージョンでもやはりAESを用いているのにも関わらず、RSA-2048のアルゴリズムを採用していると主張していた。暗号化されたファイルの拡張子は変更され、たとえば.VVVや.ABCといったものになった。身代金の要求も変わった。HTMLページ、テキストファイル、壁紙またはフォトギャラリー中の画像の3つの異なるフォーマットで提示される。この2つのバージョン間の違いは、文章だけでなく脅迫メッセージの外観に見て取れる。読みやすくするために、タイトルと章が追加された。新たな身代金の要求では、支払いまでの残り時間のカウントダウンも削除された。

TeslaCrypt 2 - What happened to your files?

 TeslaCrypt 3.0は2016年1月に発見された。TeslaCrypt 3.0では暗号化にRSA-4096を用いていると主張しているが、やはり依然としてAESを使用している。しかしながら、このバージョンでは暗号キー交換アルゴリズムは異なるものを使用しており、暗号を破るのが一層困難になっている。このバージョンでのもう1つの違いは、暗号化されたファイルの拡張子に.MP3、.XXX、.TTT、.MICROが使用される点だ。HTMLの脅迫メッセージはTeslaCrypt 2.0と同じだが、テキストファイルのフォーマットが以下のように多少変更になった。バージョン3.0ではGoogle Translateへのリンクが含まれており、「What does this mean」という行が削除された。

TeslaCrypt 3 - What happened to your files?

 TeslaCrypt 4.0はTeslaCryptランサムウェア・ファミリーの最新版だ。これは2016年3月前後に初お目見えした。同バージョンとそれ以前のバージョンとの最大の違いの1つは、4.0では暗号化されたファイルの拡張子に.VVVや.MP3といったものを使わないことだ。また、以前のバージョンでは、4GBを超えるファイルを暗号化する際に破損してしまうというバグがあった。最新バージョンではこのバクは修正されている。被害者のコンピュータに関するさらなる情報を探ろうと試み、犯罪者のネットワークへ情報を送信することもする。

 TeslaCrypt 4.0もやはり暗号化にRSA-4096を用いていると主張しているが、依然としてAESを使用している。身代金の要求の外観には変化はないが、TeslaCrypt 4.0と3.0で中に書かれた文章には相当な数の違いがある。たとえば3.0では「What happened to your files」と書かれているが、4.0では「What’s the matter with your file」だ。TeslaCrypt 4.0ではまた、バージョン2.0から「What does this mean」という行を戻している。

TeslaCrypt 4 - What's the matter with your files?

その他の情報源:


記述および調査:Miro Ikaheimonen


 著者によるメモ:私はフィンランドのヘルシンキにいる中学生で14歳です。エフセキュア社で5日間のTET(Tyoelamaan tutustuminen、訳注:フィンランドのインターンシップ制度)プログラムを行っている最中です。なぜ、エフセキュアを選択したのでしょうか?通信技術に興味があったのと、学校のプロジェクトでミッコ・ヒッポネンにインタビューする機会もあり、エフセキュアのマルウェアとの戦いに興味を抱くようになったためです。ここでは楽しい時間を持ち、マルウェアについての新しい内容をたくさん、特にランサムウェアとそれと戦うことについて学びました。

Miro

ブラウザとメール:マルウェア配信における最大の攻撃経路

 エフセキュアラボでは、顧客が一般的に遭遇するような普及している脅威について継続的に監視している。脅威の大勢を観察する際、我々はサイバー犯罪者が用いる感染経路を調査する。また、こうした攻撃から顧客を保護する効果的な方法を探る。

 以下は、当社の顧客を保護した検知の上位10件である。なお、上位2つはエクスプロイトとスパムメールに関連している。

top10_worldmap_20160428

 まず、最上位にランクされた検知について見ていこう。

ブラウザ経由での攻撃:Angler EK(エクスプロイトキット)

 当社における検出でExploit:JS/AnglerEK.DとなるAngler EK(現在もっとも活動的なエクスプロイトキット)は、当社の世界地図上の統計で最上位の1つになっていることが多い。

 ここ24時間で、同エクスプロイトキットは攻撃的なキャンペーンを再開したように見える。

AnglerEK_hits_20160428

 ユーザは大抵の場合、侵害されたWebサイトを訪れることで感染する。こうしたWebサイトには、インジェクションするリダイレクタのスクリプトや、悪意ある広告(マルバタイジング)が含まれている。このキャンペーンでは、ヒットするのは侵害されたWebサイトからだが、一部はOpenXの広告プラットフォーム経由でもやってくる。

angler_adplatform_blur

 Angler EKは、ワンクリック詐欺のトロイの木馬をインストールすることで知られているBedepを配信し続けている。また、最近ではランサムウェアCryptXXXもインストールする。

angler_saz_20160427_blur

メール経由での攻撃:JavaScriptのダウンローダ

 当社の統計で2番目に多く検知したのは、JavaScriptのダウンローダであるTrojan:JS/Kavala.Dだ。このJavaScriptのダウンローダは、大抵の場合スパムメールに添付されたzipファイルに格納されて届く。当社のテレメトリー上で急上昇を引き起こした、現行のスパムキャンペーンのメールのサンプルを以下に示す。

locky_spam1

locky_spam2

 Locky、TeslaCryp、Dridex、GootKit、Kovter、Boaxxe、Gamarueのようなマルウェアを配信するスパムキャンペーンにおいて、過去数か月の間、ダウンローダとしてJavaScriptを使用するケースが増加しているのを当社では目撃してきた。通常、このようなスパムは様々なテーマで届く。「請求」「写真共有」「支払・注文」「履歴書」「スキャン画像」「VISAの景品」「宅配便の通知」「保険」「Amazonの注文」といったものだ。攻撃者は被害者の範囲を広げるべく、より大きな網を打とうとしているのだ。

 JavaScriptのダウンローダで使用されているファイル名の例を以下に挙げる。

0061705_006774.js
CAN0000013502.js
20160403_914618_resized.js
01c4b975.js
details.jse
63e0f3bc.js
2016 Sales Invoice 700422016.pdf.js
bill.js
copy.js
ADCWYuEi.js
dino kennedy.js

 今回のキャンペーンでは、JavaScriptのダウンローダはランサムウェアLockyの配信を試みる。

locky_blur
Lockyの脅迫メッセージ

 当社の世界地図上でのこれら2つの検知は、マルウェアを配信する最大の攻撃経路がブラウザとメールであることを示唆している。

 顧客の皆さんには、常にブラウザおよび、Flash PlayerやSilverlightといったプラグインを最新バージョンに更新するように注意喚起する。また使用しないのであればプラグインを無効にすることをお勧めする。スパムについては、メールの添付ファイルには慎重になるようにアドバイスする。

インターネットの現状についてのデータマイニング

 当地ヘルシンキにあるアールト大学では、毎年ソフトウェア・プロジェクトの演習を2〜3年生に向けて開催している。この演習の考えは、リアルな目的、リアルな顧客、リアルな締め切りがあるリアルなソフトウェア・プロジェクトの作業を学生が味わえるようにすることだ。演習は初秋に始まる。学生がチームを組み、地元企業から提示される一連のプロジェクトの中から選択する。プロジェクトの作業は10月下旬に始まり、翌年の4月中旬まで続く。演習の最後には、最良のプロジェクトが3つ選定され、この3つのチームが最終決戦のデモで戦う。そして1チームが勝者となる。今年はエフセキュアが後援するチームが、優勝トロフィーを4月19日に授与されて、持ち帰った。

The winning team
アールト大からの当社チームが勝利を祝っているところ

 今回は16チームが形成され、42のプロジェクトが提案された。エフセキュアの提案は「インターネットの現状についてのデータマイニング(DMSI、Data Mining The State Of The Internet)」という名称なのだが、当社のセキュリティクラウド部門の長Ville Lindforsが提出した。熾烈な争いであったが、学生チームの1つが当社プロジェクトを選択した。

 このプロジェクトの目的は、AWS(Amazon Web Services)サービスを用いて、データマイニングのフレームワークを開発することだ。エフセキュアはこのフレームワークを使って、Whoisのデータに基づいてインターネットドメイン同士の接続、相関関係、依存関係を分析することになっている。ここでは、データマイニングの技術が広範に用いられている。このプロジェクトで我々が達成したかったことの例を以下に挙げる。

  • 既知の悪意あるドメインと、ネームサーバを共有するドメインの発見
  • 未知の、害を及ぼすインターネットサイトの検知
  • 新たに登録されたドメインのレピュテーション(評判)を自動的に予測する機能
  • 未知の潜在的なフィッシングサイトの発見
Data Science
最終的に構築したもの

 今回のプロジェクトで作業したチームには7人が参加しており、うち1名はこのラボで働いている。またプロジェクトの期間中、チームをサポート、指導する者がいた。何かにつけ手助けした者を以下に挙げる。

  • Jouni Kuusistoはアールト大の理学修士の研究の一環として、チームの一員となった。またスクラムマスターとしての役割を担った
  • Perttu Ranta-Ahoは、技術専門家として、またプロダクトオーナーとしてチームを支援した
  • Jukka Haapalaはプロダクトオーナーおよびファシリテーターとして対応した
  • Christine Bejerascoは今回のフレームワークの構築に使用されるユースケースを提供した
  • Jaakko Harjuhahtoは2年連続でチームを指導した
Project demo meeting - man pointing at thing.
初期のプロジェクト会議での、学生とエフセキュアのスタッフ

 プロジェクトでは多数の技術を採用することになった。Apache Sparkはデータマイニングのタスクを実行するために選定された。外部情報源からのデータを展開して処理したり、展開したデータに対する問い合わせを実施する。AWSはデータの処理および保管のために幅広く利用した。後続のデータ処理のためにAmazon EMRも用いた。Amazon DynamoDBは、使用するシステムの設定やサービスの状態を格納する目的で使用した。ストリーミングデータのソースを扱うために、Amazon Kinesisを組み込んだ。最後に、使用中のAWSのリソース群を管理するためにAWS CloudFormationを用いた。

Tech used in DMSI
DMSIプロジェクトで使われている技術のほんの一部

 エフセキュアが後援したチームは、献身的であること、非常に難易度の高い技術群を採用した点、網羅的なドキュメント、顧客との熱心な関わり(エフセキュア・ラボで分析ワークショップやデモを開催)、高品質のインテグレーション、模範的な開発プロセス、そして最終プレゼンテーションの品質により称賛された。我々はさらには、夏休みの仕事として3チームを連れてきて、5月に開始する。

 ところで、当社では既に数年に渡ってこの演習に何とか参画している。6位以内に入ることは頻繁で、時には3位以内になったことがある。今回は初のポールポジションだった。勝ち負けに関わらず、これは地元の学生たちにとって素晴らしい機会だ。業界関連の物事に参加し、現実の世の中でソフトウェアエンジニアリングがいかに機能するかを確認し、地域のソフトウェア企業のエンジニアたちに会うのだ。我々のチームが何を達成したかについてご興味があれば、以下2つのリンクに詳細がある。

パフォーマンス上のクリティカルパス

 人々が信じていることとは違って、我々はこのラボでリバースエンジニアリングとマルウェアの分析だけを行っているのではない。それどころか、おそらくはコードを分析する人よりも書く人のほうが多くいる職場だ。当社では今まで、作業についてはほとんどブログで取り上げてこなかったが、これを変えたいと思っている。この取り組みを開始するために、当社のWindows保護コンポーネントの開発者たちの生活をちらっとお見せしたいと思う。

 我々は、ある変更作業をちょうど終えたところだ。当社のソフトウェアを実行しているWindows 10システムの起動時間に改良を加え、また選択したWindowsアプリケーションの開始時間に良い影響を与えるものだ。これら改良点はローエンドのシステムで特に顕著になる。これを行う過程で、RAMがわずか1 GBしかない32ビットWindows 10機で、当社のSAFE製品が快適に動作するようにこぎつけた。スペックを考えると悪くない。

Low-end tablet
SAFEはこのちっぽけな機器でなかなか快適に動く

 あらゆるコードやロジックの変更、当社のコンポーネントに加える機能のすべてが当社製品のパフォーマンスに影響を与える可能性がある。したがって膨大なパフォーマンステストを実施していることは言うまでもない。顧客にリリースする前に、すべてのデータベースのパフォーマンスを確認している。社内に24時間毎日稼働する大掛かりな自動パフォーマンステストシステムを保有している。これは当社の全製品の内部・ベータ・プロダクションのそれぞれのビルドに対し、Windowsのさまざまなバージョンで使われるものだ。また外部のアンチウィルス製品のテスト企業によって発表されるパフォーマンス結果の情報も綿密に追っている。

 当社では、数多くのシナリオの下でソフトウェアをプロファイルする時間を頻繁に確保している。シナリオは自社で定義したものもあれば、Windows Assessment Kitで規定されたものもある。我々はテストを実施し、可能な限りすべてのメトリクスを収集してから、Windows Performance AnalyzerやWindbgで出力データの調査を行う。時折このデータをすべて掘り下げることで、除去することで最適化可能なボトルネックに到達する。

Jose's performance testing setup.
最先端の分析技術 + 古風な電話機 == 成功

 当社の振る舞い分析エンジンDeepGuardでは、最近の最適化を相当数見ることができる。我々が適用した大きな変更の1つは、ハッシュ計算を扱うために使用するコードのリファクタリングだ。Intel VTuneを用いて、我々は既存のハッシュアルゴリズムを分析し、CPUパイプライン内で失速する部分を探した。発見に基づき、こうした計算を実行するアセンブリコードの再調整を行い、使用されるCPUサイクル数の大幅な削減につながった。以下のスクリーンショットで確認できるとおり、今回の変更により我々は相当なパフォーマンス向上をなんとか絞り出した。

CPU benchmarking tool
アセンブリコードを書きたいなら、この仕事は気に入るだろう

 パフォーマンスの向上は、当社が繰り返し追及していることだ。当社で常に取り組んでいる点を、以下に挙げる。

ホワイトリストの改良

 クラウド内を検索したり、スキャンエンジンにかけたり、クライアントサイドの分析コンポーネントを通じて実行したりする必要がなければ、どのファイルもユーザエクスペリエンスの向上につながる。アプリケーションの起動が早まったり、ファイル操作が早まったり、ブラウジング体験が向上したり、だ。

古く重複する検知の除去

 当社の検知の大半は合理的であり、数千のサンプルにヒットするように設計されている。当社で新たにより良く検知するように開発する際に、より古い検知が持つのと同じサンプルを新バージョンで捕捉するのを発見することがある。このような場合には、古い検知を削除することで、パフォーマンスの小さな改善が得られる。OSとソフトウェアは古い攻撃に対するパッチが当てられているので、マルウェア作者は犠牲者を感染させるための新たな方法を探らねばならない。最終的には絶滅するマルウェアもある。このような場合には、それに応じて検知を削除する。

バグの発見と修正

 バグのないコードは無い。いつも変わらず、バグを見つけては修正している。かつては捉えられなかったバクを特定する新たな方法を定期的に発見しており、顧客ベース全体でのクラッシュについてうまく可視化するシステムを保有している。時折、パフォーマンスに打撃を与えるようなバクを発見し、修正することがある。この瞬間はいつでもお祝いだ。

クリティカルパスの最適化

 スキャンするロジックは複雑で、年がら年中ロジックを変更して、顧客の問題を解決したり、新製品の機能をサポートしたり、OSに対する変更をサポートしたり、あるいは使用されない機能を外したりしている。ほぼ常にスキャンのロジックについて作業している。その間、効率化する方法を模索している。

 エンジニアリングの面でラボにて起こっていることの小さな断片を覗くのが興味深いものであったら良いのだが。

 では。
 Andy

 (訳注:アンケートフォームは原文の記事へ)

Windows Script Hostを無効にする方法

 幾多のスパムキャンペーンで、添付されたzipファイルを経由でさまざまな暗号化ランサムウェアファミリー(とバックドア)が送り込まれている。そして典型的には、このようなzipファイルにはあるJScriptファイル(jsまたはjse)が含まれている。もしこれをクリックすると、Windows Script Host経由で実行される。

 よろしいだろうか。Windowsのレポジトリを編集して、Windows Script Hostを無効にしよう。

 レポジトリキー(フォルダ)は以下だ。

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Script Host\Settings

 「Enabled」という名前で新たなDWORDの値を作成し、値のデータを「0」にセットする。

Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Script Host\Settings

 その後jsファイルをクリックすると、以下を目にすることになる。

Windows Script Host access is disabled on this machine. Contact your administrator for details.

 脅迫文を見るよりもマシだ。


2016年4月20日更新:代わりにHKEY_CURRENT_USERを使うのでも良い。

Badlock:横展開への懸念点

 昨日、Badlockがついに明らかになり、一見したところでは誇大広告だったことで、情報セキュリティ業界全体とも思える範囲でずっこけた。

https://sadlock.org/
Badlock… or Sadlock?

 公開までの1か月間の構築作業と派手なロゴは不要だったという点には同意するが、この脆弱性によって悪意のある人物に有用な兵器が将来的に提供される、と我々が考える理由を説明したい。

 今回の脆弱性を悪用するためには、兵器級の中間者攻撃を作り上げてから、一連のネットワーク化された、パッチが当てられていないSMB(Server Message Block)を実装したホストに展開する必要がある。業界で共有した期待を裏切られた感覚は、この事実によるものだ。こうしたシナリオをあなたが目にするのは、ほぼ企業の内部ネットワークにおいてのみだろう。しかし、この脆弱性に対する適切な中間者攻撃によって、攻撃者は権限を引き上げ、Active Directoryのデータベースへフルにアクセスできるようになる。これはつまり、ログイン情報とパスワードのハッシュをすべて攻撃者に提供することを意味する。Badlockの公式サイトでは、次のように述べられている。

 「Sambaで使用されている各種プロトコルで実行され得る中間者攻撃が複数ある。これにより、インターセプトしたユーザのコンテキストを用いて、任意のSambaネットワークコールの実行が許可される」

 もしこの脆弱性がSambaのActive Directoryサーバで使われたら、攻撃者はActive Directoryのデータベース内の、ユーザパスワードのハッシュを含む機密情報を閲覧、変更できるようになる可能性がある。また当該サーバ上で実行中の重要なサービスも停止し得る。もしこの脆弱性が標準的なSambaサーバで使われたら、攻撃者はファイルやディレクトリに対するユーザのパーミッションを変更できるようになる可能性がある。

 この脆弱性はWindowsとLinuxの双方に影響を及ぼす。この問題を解決するためのパッチは既に提供されているものの、企業全体できちんとこのパッチが適用されているかは管理者によるところだ。マイクロソフト社自身の「Patch Tuesday(定例パッチ)」のプロセスでこの問題は解決され、大半のWindows機は速やかに最新の状態になると、我々は予期している。一方Linux機については未知数である。

 より大局的な観点で見ると、高度な脅威をもたらす人物がひとたび企業の内部ネットワークへのアクセスを得た場合には、Badlockの脆弱性によってこうした人物に有用なツールが提供される可能性がある。国家のような、組織化されて豊富な資源のある集団にとっては、Badlockを悪用して、これに適した中間者攻撃を作成・展開することはそれほど難しいことではない。

 今回の脆弱性についての概念実証は現在のところは表沙汰になっていないが、世の中にはエクスプロイトの作成に励んでいる集団がいると、我々は確信している。現時点ではこのような類の戦略が使われているのを確認していないが(Badlockを取り巻く噂では)、そのうち利用されているのを目にしても驚きはないだろう。

「Petya:ディスク暗号化ランサムウェア」に感染したマシンの復旧

エフセキュアブログによると、Petyaに感染するとマシンを復旧する方法は一つしか無いと書かれています。

エフセキュアブログ : Petya:ディスク暗号化ランサムウェアより抜粋
サーバのヘルプ無しでマシンを復旧する唯一の方法は、デバッガを使って感染プロセスの途中でsalsa20のキーを捕捉することだ。これは通常のコンピュータユーザにとっては、あまり魅力的な対抗手段ではない:)
皆さんお分かりかと思いますが、これはエフセキュアブログ流のジョークであり、実際には「復旧方法は無い」という意味の文章です。

しかしその後、leostone氏が感染マシンを復旧する方法を発見し、公開しました。(hack-petya mission accomplished!!!)
もはやPetyaに身代金を支払う必要はありませんし、デバッガを使う必要もありません。

復旧までの道のりを簡単に紹介します。
続きを読む

#Wassenaar アレンジメントのゆくえ3 -- 今週から始まる予定の「Intrusion Software」の修整再交渉

3月18日、脆弱性テストツールMetasploitを提供しているRapid7社がブログで「Wassenaarアレンジメント - サイバーセキュリティ輸出コントロールへの推奨事項」という提言記事をポストした。記事中ではまさに今週にあたる4月11日の週からWassenaarアレンジメントの再交渉に関するミーティングが始まる事の指摘があり、それを睨んだ提言だ。

このWassenaarアレンジメントの再交渉の件は、前回私が1月15日にF-Secureブログに「#Wassenaar アレンジメントのゆくえ2 -- 国際武器輸出規制と「Intrusion Software」定義の影響とは」のポストを書いたのと同時期に動きだしていた。  http://blog.f-secure.jp/archives/50761446.html
この『再交渉』というのは、アメリカ国内での対応制度の話ではなく、41ヶ国の合意となっているWassenaarアレンジメントの本体の文言を書き換えるということだ。

1月12日にアメリカ議会のITサブコミッティーでヒアリングが行われた。
WASSENAAR: CYBERSECURITY AND EXPORT CONTROL

そして2月29日にはアメリカ議会動向のニュースを扱うThe Hillに、オバマ政権が「Intrusion Software」のルールへ再交渉へ舵をきったと流れた。
Obama administration to renegotiate rules for 'intrusion software'

3月1日には、アメリカ商務省がWassenaarアレンジメントの書き換え交渉の提案を受領したことが通知された。


Rapid7による提言そのものは、228ページにわたるWassenaarアレンジメント本文の中の「Intrusion Software」に関する条項の文言それぞれについて、法律家の支援を得て添削を試みたもので、以下のPDFになる。

Rapid7の提言によるWassenaarアレンジメントの添削ドラフトでは、以下の3つの点が変更すべき推奨のポイントになっている。
1) Exceptions to the Wassenaar Arrangement controls on "systems," "software," and "technology."
Wassenaarアレンジメントによる「システム」「ソフトウェア」「テクノロジー」のコントロールへの例外をはっきりすること

2) Redefining "intrusion software."
「イントルージョン・ソフトウェア」を再定義すること

3) Exceptions to the definition of "intrusion software."
「イントルージョン・ソフトウェア」の定義への例外をはっきりすること

F-Secureブログの1月15日のポストでも触れたが、MetasploitはWassenaarアレンジメントの影響を受けるツールとしてよく例に上げられている。理由は、Metasploitにはオープンソース版と商用版があるが、Wassenaarアレンジメントではオープンソースやパブリックドメインのソフトウェアのようにソースコードが公開されていればの規制から除外されることになっているので、オープンソース版MetasploitならばWassenaarアレンジメントの規制から除外されるが、商用版Metasploitは輸出ライセンスを得る必要があるという問題だ。そのため、このMetasploitを提供するRapid7がこのような提言を出して来るのはとても意味がある。

再交渉が始まるタイミングならば、Wassenaarアレンジメントの影響を受け得る日本の企業も積極的に意見を表明していく必要があるだろう。

新たな脅威レポート

 当社の脅威レポート(PDF)の最新版が先ほど公開された。このレポートでは、2015年に目にしたもっとも蔓延したサイバーセキュリティ上の脅威から、傾向を論じている。エクスプロイトキットやランサムウェアなどと共に、CoC(Chain of Compromise)についても紹介している。

tr_2015_ataglance

 このレポートその他はf-secure.com/labsから入手できる。

Flashの最新の脆弱性CVE-2016-1019と共にMagnitude EKが急増

 アドビ社は、Flash Playerのまた異なる脆弱性CVE-2016-1019に対する緊急アップデートを公開した。これは20.0.0.306以前のバージョンのFlash Playerに影響を及ぼすものだ。まず4月5日にアドビはセキュリティアドバイザリを公開し、Flashバージョン21.0.0.182に含まれる脆弱性のさらなる悪用を回避する緩和策を強調した。そして緊急アップデートが公開されたのは4月7日だった。

 ご存じのとおり、エクスプロイトキットの作者は、パッチがまだ利用できないときにこそ脆弱性につけ込む。最初にアドバイザリが公開された時点で、我々は当社のテレメトリでMagnitude EK(Exploit Kit)のヒット数が増大したのに気付いた。

Magnitude EK 2016.04.07

 Magnitude EKはCVE-2016-1019の欠陥に対応するエクスプロイトを盛り込むように更新されたが、当社ではすでに既存のFlashエクスプロイトの検知でブロックしている。

MagnitudeEK_Salama.H_20160407

 1か月前、ユーザをMagnitude EKへと押しやるマルバタイジング・キャンペーンについて記事を投稿した。今回の最新のキャンペーンでも同様の広告プラットフォームが使用されていることだけでなく、ユーザをランディングページへと導く新たなリダイレクタやゲートといった注目に値する追加部分も観察している。当社ではこうしたリダイレクタやゲートもMagnitude EKの検知の一部に含めている。

MagnitudeReferers_AdPlatforms_20160407.PNG

 さらに、一部はアダルトサイトや無料動画サイトからヒットしていることも観察している。

MagnitudeReferers_AdultSites_20160407.PNG

 Magnitude EKは現在、暗号化ランサムウェアCerber(SHA1:1f6f5c03d89a80a725cdff5568fc7b98bd2481b8)を配信している。

 このキャンペーンの影響をもっとも受けている国は、フランス、ベルギー、ドイツ、フィンランド、オランダである。

 当社のユーザは以下の検知により、CerberというランサムウェアやMagnitude EK(リダイレクタや使用する最新のFlashのエクスプロイトを含む)から保護されている。

  • Exploit:JS/MagnitudeEK.G
  • Exploit:SWF/Salama.H
  • Trojan:W32/CryptoRansom.A!DeepGuard

 当社のユーザには、最新版のFlash Playerにアップデートすることをお勧めする。

動画:Petyaのデバッグ

 上級研究員のヤルコ・ツルクレイネンが、暗号化ランサムウェアPetyaに関する彼の分析を継続している。今回は、2本の動画という形だ。

Debugging Petya bootloader with IDA – 「この動画では、x86リアルモードのような珍しいプラットフォームをデバッグする強力な技術を示している。」

 (訳注:動画は原文の記事へ)

Petya ECDH key exchange – 「今度は滑らかなボサノバに乗せて、楕円曲線暗号を楽しく体験できる!」

 (訳注:動画は原文の記事へ)

Petya:ディスク暗号化ランサムウェア

 4月3日更新。暗号化スキームについてより詳しく追記した。


 Petyaは邪悪なひねりが加えられている新しいランサムウェアだ。ディスク上のファイルを暗号化する代わりに、ディスク全体をロックしてほとんど使い物にならない状態にする。具体的には、ファイルシステムのMFT(master file table)を暗号化する。つまりOSからファイルの位置が特定できなくなることを意味する。Petyaは、ブートキットと同様に自身をディスクのMBR(master boot record)にインストールする。ただし、秘密裏に活動するのではなく、赤い画面上にシステムを復旧する方法についての説明を表示する。

 MFTを狙うと素早く攻撃できる。データファイルを暗号化するより極めて短時間で済むのだ。それでも全体的な結果としては暗号化と同じ、すなわちデータにアクセスできなくなる。

Petya, Press Any Key!

 Petyaは2段階で実行する。第1段階はメインのドロッパーで、以下を実行する。

  • \\.\PhysicalDriveを直接操作してMBRに感染させる
  • 一連の暗号キーを生成する。これには16バイトのランダムなディスク暗号用のキーと楕円暗号(EC、Elliptic Curve)のキーペアが含まれる。この時点で、特別な「復号コード」も用意される
  • あとでMBRに感染したコードで使うため、ディスクの暗号キーと復号コードをディスクに保存する。その他の生成された暗号データはすべて破棄される
  • なんの警告もなしにマシンをシャットダウンし、MBRのコードでブートする

 Petyaは非対称キーによる暗号化と搬送のために、楕円曲線暗号スキームを用いている。192ビットの公開鍵とsecp192k1曲線パラメータは、ドロッパーのバイナリにハードコーディングされて配信される。Petyaはサーバの公開鍵を取得し、ECDH(Elliptic Curve Diffie-Hellman)アルゴリズムを用いて共有の秘密鍵を構築する。この共有秘密鍵を用いて16バイトのディスク暗号キーをAES暗号化する。共有秘密鍵はこのマルウェアとサーバしか使用できない。バイナリをASCIIにエンコーディングするBase58により、このマルウェアの楕円曲線の公開鍵といっしょにディスク暗号キーをパッケージする。ここで得られるパッケージが、後に赤いスクリーン上で提示される「復号コード」である。

Petya physdrive
PetyaドロッパーによるPhysicaldriveの操作

Petya server pubkey
ドロッパー内部にあるPetyaサーバの楕円曲線暗号の公開鍵

Petya ecc params
ドロッパー内部にあるPetyaのsecp192k1の曲線パラメータ

Petya encode pubkey
ASCIIエンコーディングのPetyaドロッパーの楕円曲線暗号の公開鍵

Petya gen salsa20 key
Petyaドロッパーのsalsa20バイト列の生成

 感染後、マシンはMBRのコードでブートする。これは以下のようになる。

  • まずディスクが感染しているかを確認する
  • 感染していなければ偽のCHKDSK画面を表示し、暗号キーに共有秘密キーを用いてMFTを暗号化する
  • ディスクの暗号化にsalsa20を用いる。暗号化後は当該キーを破棄する
  • 赤い「スカルスクリーン」、続いてTorの隠しサービスのURLがある画面と「復号コード」を表示する。「復号コード」とは、サーバでしか開けない暗号化されたメッセージである
Petya debug environment
Petyaが環境を取り戻すところ

petya_disk_encryption
salsa20でディスクを暗号化する際の、偽の「CHKDSK」に関するMBRのコード

Petya salsa20 expand32
MBRに置かれるsalsa20のコード

 楕円曲線アルゴリズムを用いて暗号キーを復号できるのは、もはやサーバしかない。これはマルウェアによってキーが破棄されたためだ。また、たとえ破棄されていなかったとしても、マシンがロックされて使えないままだ。リカバリディスクでMBRを復旧したとしても役には立たないだろう。なぜならMFTがいまだ暗号化されているからだ。理論上は共有秘密鍵を復旧して、リカバリディスクでディスク暗号化キーを復号して戻すことは可能だ。しかしそのためには、元々の楕円曲線暗号のキーペアを入手しなければならないのだが、必要な楕円曲線のデータはすべてドロッパーが破棄してしまっている。これはまるで家に入るための鍵が2つあって、意図的に片方を無くしたようなものだ。

 サーバ側では、復号コードのデコードが逆の順番で行われることが想定される。

  • Base58で符号化されたバイナリデータをデコードする
  • マルウェアの公開鍵と暗号化されたデータを展開する
  • 公開鍵を用いて、共有秘密鍵を構築する
  • この共有秘密鍵を用いると、サーバはAESを使ってディスク暗号化キーを復号できる
  • ここで攻撃者は、ロックされたマシンを解放できる暗号化キーを元に戻すことができる

 一例として、当社のラボのマシン上の復号コードの1つは次のように見える(ハイフンと先頭の2文字は削除。サーバはこれをデコードに使用しない)。

Q5rL1YMqnJPCsCgji4KcDv5XnQrtqttBQ7tfbAq7QStmTXNQ6Voepeaiem8uzaQxYq3LwpvMCXBvMx2Mmqkdt8Fi

 このコードを標準のBase58アルゴリズムを用いてデコードすると、以下のデータが生成される(説明のために、マルウェアが生成する公開鍵を緑で、ディスクを暗号化するキーを赤で示す)。

Petya decryption code opened

 サーバのヘルプ無しでマシンを復旧する唯一の方法は、デバッガを使って感染プロセスの途中でsalsa20のキーを捕捉することだ。これは通常のコンピュータユーザにとっては、あまり魅力的な対抗手段ではない:)

トリビア:

バックナンバー
セキュリティ関連リンク
セキュリティ機関

政府関連

セキュリティ関連団体

研究機関・大学
詳細カテゴリ
メディア関係者の皆様へ
エフセキュアブログメンバー
エフセキュアブログメンバー
ミッコ・ヒッポネン
エフセキュア CRO(セキュリティ研究所主席研究員)(ヘルシンキ)
(Twitterアカウント)
(研究所Twitter)
ショーン・サリバン
エフセキュア セキュリティ・アドバイザー(ヘルシンキ)
(Twitterアカウント)
高間 剛典
メタ・アソシエイツ代表
(公式ブログ)
(Twitterアカウント)
星澤 裕二
株式会社セキュアブレイン 最高技術責任者
(公式ブログ)
(人物紹介)
岩井 博樹
デロイト トーマツ リスクサービス株式会社 (〜2013年3月 株式会社ラック) 情報セキュリティ大学院大学 客員研究員
(Twitterアカウント)

(人物紹介)
福森 大喜
株式会社サイバーディフェンス研究所 上級分析官
CDI-CIRTメンバー
(人物紹介)
鵜飼 裕司
株式会社FFRI 代表取締役社長
(人物紹介)
福本 佳成
楽天株式会社
執行役員
OWASP Japan
アドバイザリーボード
Rakuten-CERT representative
(人物紹介)
神田 貴雅
エフセキュア株式会社 プロダクトグループ 部長
富安 洋介
エフセキュア株式会社 プロダクトグループ
コーポレートセールスチーム
エフセキュア株式会社
(エフセキュアブログ公式Twitterアカウント)

海外記事翻訳
株式会社イメージズ・アンド・ワーズ
エフセキュアメールマガジン

ブログに載らないメルマガ限定情報や、技術者インタビュー、製品情報、技術解説を掲載して毎月一回配信します。アドレスのみの登録で購読無料。

エフセキュアブログQRコード
QRコード