クリプトジャッキングとは
クリプトジャッキングとは、被害者の端末を利用して不正に仮想通貨をマイニングさせることで、攻撃者が収益をあげる攻撃のことです。攻撃者は、多数の端末に仮想通貨マイニングを行うマルウェア(以降、マイニングマルウェア)に感染させることにより、大規模な仮想通貨マイニングを行えるようになり、大きな収益をあげられるようになっています。
クリプトジャッキング攻撃の中でも特に、ブラウザベースのマイニングマルウェアが流行しています。ブラウザベースのマイニングマルウェアでは、ユーザがマイニングマルウェアの配置されているWebサイトにアクセスしただけで、仮想通貨のマイニング活動が始まります(図1を参照)。Webサイトをアクセスしたエンドユーザ全員が対象になり、容易に多数の端末に仮想通貨のマイニングを行わせることが可能であり、攻撃者には非常に魅力的なものとなっています。
図1. クリプトジャッキング概要(ENISA[1]の資料を筆者が和訳)
Webサイトに配置されるケース以外にも、ブラウザの拡張機能やスマートフォンのアプリなどでもマイニングマルウェアが広がっています。これまでマイニング機能がついていなかったにもかかわらず、アップデートとともにマイニングの機能が組み込まれ、知らぬ間にマイニングを行っていたというケースも多くあります。Googleの提供するWebブラウザであるChromeの拡張機能についていえば、Googleも当初はユーザの同意を得た上でマイニングを実施するのであれば拡張機能の公開を許可していましたが、それを守るものが少なく、マイニング機能を持つ拡張機能の公開は全面的に禁止となりました[2]。
仮想通貨マイニングとは:
仮想通貨においては、取引履歴の記録をブロックチェーンという仕組みで実現していますが、その記録を行うにあたって多くの計算作業が必要になります。この計算作業に参加することで、参加者は仮想通貨の報酬を受け取ることができます。この作業が、鉱山から金を掘り起こすのと似ていると考えられ、仮想通貨のマイニング(採掘)と呼ばれています。仮想通貨のマイニングには、多大なコンピュータリソースが必要であるため、マイニングファームと呼ばれる大規模な計算工場を建設し、サービスとして提供する事業者なども存在します。
クリプトジャッキングが増加した背景
前述の通り、クリプトジャッキングはサイバー攻撃者の新たなお金儲けの方法として着目されており、2017年後半に爆発的に普及しました。
図2. マイニングマルウェアの2017年の検知状況[3]
クリプトジャッキングの流行については、単に仮想通貨が急騰しているというだけでなく、以下の二つの要因が爆発的な普及を後押ししました。
マイニングマルウェアを非常に簡単に導入可能である
2017年9月にCoinHive(コインハイブ)というサービスが出現し、誰でも容易にWebサイト上に仮想通貨をマイニングするスクリプトを配置できるようになりました。具体的には以下のコードを追加するだけで、実現可能です[4]。
CoinHive(コインハイブ)の類似サービスも多く出現してきており、攻撃者は非常に簡単にマイニングスクリプトを仕込むことができるようになりました。
どんな被害者であってもリターンが期待できる
これまで説明してきたとおり、いったんマイニングのスクリプトが実行されさえすれば、攻撃者は収益をあげることができます。これは、ランサムウェアによる身代金取得や詐取した情報の売買による金銭取得と比較するとより確実に収益があげられる攻撃手法です。実際、現在も広く行われているランサムウェアによる攻撃は、クリプトジャッキングの出現とともに減少傾向にあります[5]。
ランサムウェアによる身代金取得の場合は、仮にランサムウェアを被害者に感染させたとしても、被害者が身代金を払わない可能性がある(バックアップなどの対策がされている、発展途上国などではそもそも身代金を払うだけの余裕がない等)ことから、攻撃者はクリプトジャッキングをより効率的に収益をあげられる攻撃手法として着目していると考えられます。
クリプトジャッキングの問題点
クリプトジャッキング等により、仮想通貨のマイニングを実施するマルウェアに感染したところで、リモートから操作されたり、データを暗号化されて利用できなくなったりするわけではないので、大きな実害がないようにみえます。また、ユーザの同意のうえで仮想通貨のマイニングが実施されているのであれば、法的にも問題ないという見方が一般的です。
しかしながら、多くの場合、ユーザの同意なしで、仮想通貨のマイニングが行われています。そして、単に電気代が多くかかる、パフォーマンスが落ちるという被害だけでなく、ハードウェアに問題が発生したケースも存在します[6]。
クリプトジャッキングの検知方法
ウィルス対策ソフトやIDS/IPS(不正侵入検知・防御システム)によって、マイニングマルウェアを検知可能ですが、サイバー攻撃者も検知されないための工夫を凝らしてきており、検知できないことも多々あります。スクリプトの難読化によって検知をすり抜けたり、Google AnalyticsのコードにみせかけWeb管理者の目をかいくぐろうとしたりと、様々な手法がみられます[7]。
ウィルス対策ソフトやIDS/IPS(不正侵入検知・防御システム)以外にも、下記のような検知手法があります。
エンドポイントでの検知
各端末のリソースの状況を監視できているのであれば、CPU使用率が普段より継続して高い値を指しているといった兆候を見つけることが、クリプトジャッキングの検知に有効です。また、ユーザからの「端末が遅い」といったクレームを軽く流さず、クリプトジャッキングを疑うことも有効な検知手段といえます。
ネットワークでの検知
PaloAlto Networks社等の提供する次世代FWは、アプリケーション識別の機能によって、仮想通貨に関わるトラフィックを識別することができることもあります。
Webフィルタリングやファイアウォールのログを分析し、nanopoolといったマイニングプールやCoinHive(コインハイブ)といったマイニングサービスへのアクセスをみつけることにより、仮想通貨のマイニング活動の検知することも可能であるため、ネットワーク機器のログ監視はクリプトジャッキングの検知に有効な手段です。
おわりに
これまで、悪意のある第三者の攻撃によって仮想通貨のマイニングが行われる場合について述べてきました。これ以外にも、社内の正規のユーザが意図して実施することも考えられます。仮想通貨のマイニング活動を検知できるようにしておくことは、自社のIT資産を守る上で重要です。
当社のセキュリティログ監視サービス[8]では、高度なセキュリティ知識を持ったアナリストが、日々、仮想通貨のマイニングを行うマルウェアのアクセス先や、マイニングプール、マイニングサービスのURL、IPアドレスの情報収集を行っており、仮想通貨のマイニング活動を検知できるよう監視基盤にフィードバックしています。当サービスにご興味がある方は是非一度、サービス内容についてお問い合わせ頂ければ幸いです。
[1] Cryptojacking - Cryptomining in the browser
https://www.enisa.europa.eu/publications/info-notes/cryptojacking-cryptomining-in-the-browser
[2] Protecting users from extension cryptojacking
https://blog.chromium.org/2018/04/protecting-users-from-extension-cryptojacking.html
[3] Detection of coinminers on endpoint computers rose 8,500 percent in 2017, Symantec says
https://www.techspot.com/news/73857-detection-coinminers-endpoint-computers-rose-8500-percent-2017.html
[4] CoinHive: Simple Miner UI
https://CoinHive.com/documentation/simple-ui
[5] Cybercrime tactics and techniques:Q1 2018
https://www.malwarebytes.com/pdf/white-papers/CTNT-Q1-2018.pdf
[6] Currency-mining Android malware is so aggressive it can physically harm phones
https://arstechnica.com/information-technology/2017/12/currency-mining-android-malware-is-so-aggressive-it-can-physically-harm-phones/
[7] Cryptomining is here to stay in the enterprise
https://www.zscaler.com/blogs/research/cryptomining-here-stay-enterprise
[8] セキュリティログ監視サービス
https://www.nri-secure.co.jp/service/mss/log_monitoring.html