WordPress・Magento・Drupal・PrestaShopサイトからCoinHiveクリプトジャッキングマルウェアを削除する方法
クリプトマイニングマルウェア(CoinHive JavaScript)とは?あなたのサイトへの影響は?
CoinHiveは、JavaScriptを使ってウェブサイトに設置できる暗号通貨マイナー(クリプトマイニングマルウェア)を提供するオンラインサービスです。このJavaScriptマイナーはサイト訪問者のブラウザ上で動作し、Monero(モネロ)ブロックチェーン上でコインを採掘します。当初はサイト広告の代替手段として謳われていましたが、実際にはハッカーがウェブサイトに感染させ、訪問者を乗っ取るためのマルウェアとして悪用されていることが判明しました。
CoinHiveでMoneroを採掘するには、ウェブサイトのヘッダーやフッターに小さなJavaScriptスニペットを埋め込むだけです。訪問者がサイトにアクセスするとCoinHiveのJavaScriptが起動し、利用可能なCPUパワーを消費し始めます。アクティブなマイナーが10〜20ある場合、月間平均収益は約0.3 XMR(約109ドル)です。ハッカーは収益を増やすために、脆弱性のあるウェブサイトへクリプトマイニングマルウェア(CoinHive)を注入して悪用しています。
CoinHive自体は悪意のあるサービスではありませんが、ハッカーによって乗っ取られたサイトでのコイン採掘に広く悪用されてきた結果、多くのマルウェアスキャナーやセキュリティ機関がこのドメインをブラックリストに登録しています。
クリプトマイニングコードをホストしている要注意ドメイン一覧
マルウェアが使用するCoinHiveコードをホストしていることが確認されたサードパーティドメインのリストを作成しました。これらのJavaScriptファイル名は、一見正当なものに見えるよう一般的なファイル名が意図的に使われているため、ウェブ管理者が目にしても怪しまれないよう巧妙に偽装されています。
- ads.locationforexpert[.]com
- camillesanz[.]com/lib/status.js
- security.fblaster[.]com
- fricangrey[.]top/redirect_base/redirect.js
- alemoney[.]xyz/js/stat.js
- africangirl[.]top/redirect_base/redirect.js
- ribinski[.]us/redirect_base/redirect.js
- aleinvest[.]xyz/js/theme.js
- babybabybabyoooh[.]net/beta.js
- www.threadpaints[.]com/js/status.js
- oneyoungcome[.]com/jqueryui.js
- wp-cloud[.]ru
- doubleclick1[.]xyz
- doubleclick2[.]xyz
- doubleclick3[.]xyz
- doubleclick4[.]xyz
- doubleclick5[.]xyz
- doubleclick6[.]xyz
- api[.]l33tsite[.]info
- ws[.]l33tsite[.]info
クリプトマイニングマルウェア(CoinHive)の発見方法
自分の知らないうちにウェブサイトでクリプトマイニングスクリプトが実行されていることに気づいた場合、そのサイトはハッキングまたは感染されている可能性が非常に高いです。以下の手順で、サイトが侵害されているかどうかを確認できます。
- ウェブブラウザでサイトを開き、「ソースを表示」を選択します。
- ページのソースコードから、不審なJavaScriptコードを探します。
- 上記の要注意ドメイン
- 認識できないドメイン名やファイル名
- CoinHiveの初期化スクリプト

さらに、サーバー上のコアファイルにもマルウェアコードが潜んでいないか確認してください。Astraをご利用の場合は、ダッシュボードからマルウェアスキャンを開始できます。未導入の場合は、以下の手順を実行してください。
- 次のSSHコマンドで、サーバー上の最近変更されたファイルを調査します。
find /path-of-www -type f -printf '%TY-%Tm-%Td %TT %p\n' | sort -r - 次のSSHコマンドで、よく使われるマルウェア文字列を検索します。
find /var/www -name "*.php" -exec grep -l "eval(" {} \;
太字部分を以下の文字列に置き換えて、再度コマンドを実行してください。- echo(gzinflate(base64_decode
- coinhive(クリプトジャッキングコード)
- locationforexpert
- base64_decode
- gzinflate(base64_decode
- eval(base64_decode
- 検索で検出されたファイルを開き、内容を確認します。
WordPressからCoinHiveマルウェアを除去する方法
WordPressのコアファイルが改ざんされ、マルウェアコードが挿入されている事例を多数確認しています。多くの場合、テーマファイルも乗っ取られ、JavaScriptによるクリプトマイニングコードが仕込まれています。このマルウェアはリクエストのユーザーエージェントをチェックし、Google/Bing/Yahooなどの検索エンジンボット以外の訪問者に対してのみ、悪意のあるJSコードを読み込む仕組みです。
関連ガイド:WordPressマルウェア除去

改ざんがないか確認・比較すべき主なファイルは以下の通りです。
- index.php
- wp-admin/admin-header.php
- wp-includes/general-template.php
- wp-includes/default-filters.php
- wp-includes/manifest.php
- テーマフォルダ内のheader.phpに不明なコードがないか確認
- functions.php
WordPressでよくハッキングされるファイルとその修正方法についても併せてご確認ください。
MagentoからCoinHiveマルウェアを除去する方法
Magentoをご利用の場合は、データベース内にクリプトマイニングマルウェアがないか確認してください。phpMyAdminなどのツールで「core_config_data」テーブルを開き、design/head/includesの値を調べます。<script>タグで読み込まれているJavaScriptファイルがあれば、コードを精査して削除してください。
また、フッターのコピーライト表記にも追加の悪意あるコードが含まれていないか確認してください。「システム → 設定 → デザイン → フッター → コピーライト」に移動して内容を点検します。
悪意のあるコードを削除した後は、Magentoのキャッシュを必ずすべてクリアすることをお忘れなく。
オンライン上の脆弱性が蔓延する中、ウェブサイトの安全性が心配ですか?Astraのセキュリティスイートなら、クリプトマイニング攻撃を検出し、さまざまな脅威からサイトを保護します。
OpenCartからクリプトマルウェア(CoinHive)を除去する方法
OpenCartで感染がよく確認されるファイルは以下の通りです。駆除手順はWordPressの場合と同様です。これらのファイルをオリジナルのOpenCartコードと比較して、整合性を確認してください。
- index.php
- catalog/view/theme/default/template/common/header.tpl
- catalog/view/theme/default/template/common/header.twig
DrupalからCoinHiveマルウェアを除去する方法
Drupalサイトの場合は、各モジュールの.jsファイルを確認してください。Google Analyticsモジュール内にクリプトマイニングコードが仕込まれている事例を確認しています。
- sites/all/modules/google_analytics/googleanalytics.js
このファイルには、Google Analyticsコードの直後にCoinHiveコードが追記されており、クライアントのブラウザでコイン採掘が開始される仕組みになっていました。
データベースに潜むクリプトマイニングマルウェア(CoinHive)
ハッカーは、悪意のあるCoinHiveクリプトマイニングコードをウェブサイトのデータベースに注入することもあります。以下はそのコードのスクリーンショットです。

クリプトジャッキングマルウェア(CoinHive)攻撃の予防策
- 定期的なファイル整合性監視を実施する:Astraなどのツールを使って、サーバー上のファイルを常時監視し、変更があったタイミングを把握しましょう。ハッカーはサーバー上のファイルを改ざんし、サイトのコアファイルにマルウェアやウイルスを仕込む傾向があります。こうしたコードはサーバーサイド(PHP、Pythonなど)でも、クライアントのブラウザ(JavaScript)でも実行され得ます。
- 信頼できるソース・CDNからのJavaScriptのみを読み込む:JSファイルをサイトに組み込む前には十分注意してください。JavaScriptは非常に強力なツールである反面、悪用されると深刻な被害につながります。
- コンテンツセキュリティポリシー(CSP)を設定する:CSPは、クロスサイトスクリプティング(XSS)やクリックジャッキングなど、信頼されたWebページ上で悪意のあるコンテンツを実行させるコード注入攻撃を防ぐためのコンピュータセキュリティ標準です。Googleが公開しているCSPの基礎と設定方法に関するガイドを参考にしましょう。
- CMSを定期的にアップデートする:セキュリティパッチや更新プログラムは、CMSの新バージョンとともにリリースされることが多いです。新しいバージョンを定期的に確認し、アップグレードすることを強くお勧めします。
- ベンダーが公開するすべてのセキュリティパッチを適用する:ほぼすべてのCMSは、重大な問題が報告されるたびにセキュリティパッチをリリースしています。セキュリティ関連のメーリングリストやRSSフィードを購読し、ソフトウェアを常に最新の状態に保ちましょう。
まとめ
CoinHive自体は悪意のあるサービスではありませんが、EthereumやLitecoinなどの暗号通貨を採掘するためにハッカーに広く悪用されてきました。こうした不正利用を抑止するため、CoinHiveはサイト訪問者の明示的な同意が必要な新版「AuthedMine」をリリースしました。しかし、旧バージョンは依然として出回っており、ハッカーは無警戒なサイト訪問者や、乗っ取られたサイトの所有者に気づかれることなくコインを採掘できています。
オンラインビジネスのオーナーにとって、ウェブサイトはビジネスの中核であり、事業の円滑な運営のためには継続的なセキュリティ監視が不可欠です。サイトを安全に、マルウェアフリーに保つという使命において、私たちが全力でお手伝いいたします。
また、CryptoLootクリプトマイナーによるRawGit CDNの悪用に関するブログ記事もぜひご覧ください。
AstraはどのようにCoinHiveやその他のマルウェア攻撃から守るのか?
Astraには、日々数多くのクリプトマルウェア問題を解決し、再発防止まで徹底的に行うセキュリティ専門チームがあります。強力なWebアプリケーションファイアウォール(WAF)が、マルウェア、XSS、SQLインジェクションなど80以上の脅威からウェブサイトをリアルタイムで保護します。サイトへのすべてのリクエストがセキュリティエンジンによってスキャンされ、正当なリクエストのみが通過する仕組みです。
-
マルウェアの脅威からパソコンを守る方法|初心者にもわかる対策ガイド
マルウェア(悪意あるソフトウェア)は、コンピュータを使用する上で最も深刻かつ身近な脅威の一つです。私たちのシステムには、さまざまな経路から「PUP(望ましくない可能性のあるプログラム)」と呼ばれる不要なソフトウェアが次々と侵入してきます。インターネットを一切使わない限り、これらを完全にシャットアウトすることは不可能です。だからこそ、被害が発生する前にマルウェアを検出・駆除できるアプリが必要になります。本記事では、マルウェアの脅威からパソコンを守る具体的な方法を解説します。 Advanced PC Cleanup:信頼できるマルウェア対策ツール マルウェア攻撃からパソコンを守るためには、システ
-
Telegramをマルウェアから守る方法|仮想通貨ウォレット型マルウェアの脅威と対策
記事のポイント: サイバー犯罪者がTelegramユーザーを標的にし、暗号資産(クリプト)ウォレットを盗むマルウェアが拡散しています。偽のTelegramデスクトップアプリによる深刻なマルウェア攻撃も確認されており、自分自身をマルウェアから守る方法を詳しく解説します。 Telegramは、Android・iOS・Windowsに対応したクラウドベースのクロスプラットフォーム型メッセージングサービスです。高いプライバシー保護ポリシーで知られ、多くのユーザーから支持を集めています。しかしその人気の裏で、同アプリはマルウェア攻撃の標的となっています。近年、サイバー犯罪者は一度に多数のユーザーへ到達で