Drupal Kittyマルウェアとは?クリプトマイニングマルウェアの仕組みと対策方法
世界で最も安全なCMSの一つとされるDrupalですが、近年は好ましくない理由でニュースに取り上げられることが増えています。「Kitty」と呼ばれるマルウェアがDrupalサイトに感染し、クリプトマイニング(暗号資産マイニング)攻撃への脆弱性を高めているのです。この悪意あるスクリプトは、Drupalにおける重大なリモートコード実行脆弱性として知られる「Drupalgeddon 2.0」を悪用し、脆弱なDrupalサイトに感染して内部ネットワークやWebアプリケーションサーバーを侵害するだけでなく、訪問者のブラウザまで乗っ取ります。
Drupalgeddon 2.0の脆弱性は2018年3月に発見され、Drupal 7.xおよび8.xの各バージョンに影響を及ぼしました。この脆弱性は、Drupalのコアモジュールにおける配列オブジェクトのサニタイズ(無害化処理)が不十分であることに起因し、リモートコード実行を可能にします。この欠陥は、KittyをはじめとさまざまなDrupalマルウェアの侵入経路となっています。
AstraのDrupalマルウェアスキャナーでは、この脅威を PotentialRisk.PUA/CryptoMiner.Gen として検出します。
Drupal Kittyマルウェアとは?
「Kitty」と呼ばれるクリプトマイニングマルウェアは、「Drupalgeddon 2.0」に対して依然として脆弱なままのDrupalサイトを悪用し、暗号通貨Monero(モネロ)を不正にマイニングします。この悪意あるクリプトマイニングスクリプトは、極めて深刻なDrupalgeddon 2.0のリモートコード実行脆弱性(CVE-2018-7600)を利用し、サーバーとブラウザの両方を標的とします。このエクスプロイトは2018年3月に公開されましたが、Drupal 7.xおよび8.xの多くのバージョンには今なお残存しています。
Drupalgeddon 2.0の脆弱性は、コアモジュールにおける配列オブジェクトのサニタイズ不足によって引き起こされ、リモートコード実行を許してしまいます。この脆弱性により、Drupalサイトはさまざまな攻撃ベクトルにさらされ、最終的にはバックドアの設置、クリプトマイニング、データ窃取、アカウント乗っ取りなどにつながる恐れがあります。
Kittyマルウェアの仕組み
Kittyのbashスクリプトが実行されると、攻撃者は感染したサーバーのディスクにPHPファイル「kdrupal.php」を書き込み、バックドアを作成します。
上記のPHPバックドアをBase64デコードしたソースコードは実はシンプルなもので、攻撃者はリモート認証の保護にsha512ハッシュ関数を使用しています。
次に、このスクリプトは「cronjob(cronジョブ)」、つまり時間ベースのジョブスケジューラを登録し、リモートホストからbashスクリプトを定期的に再ダウンロードして実行します。これにより、攻撃者はサーバーを再感染させ続け、管理者による対応を遅らせることが可能になります。
サーバーの完全な制御を握ると、攻撃者は有名なxmrig Moneroマイナーである「kkworker」というMoneroクリプトマイナーをインストールして実行します。
しかし、攻撃者は1台のサーバーで止まることはありません。index.phpファイルを改ざんし、悪意のあるJavaScript「me0w.js」を追加することで、他のWebリソースにもマイニングスクリプトを感染させるようマルウェアに指示します。最後に、攻撃者は「me0w, don't delete pls i am a harmless cute little kitty, me0w」(ニャー、削除しないでください。私は無害で可愛い子猫です、ニャー)というメッセージを出力し、図々しくも自分のマルウェアを削除しないよう懇願します。
Kittyマルウェアは継続的にアップデートされており、そのたびに運営者によって新しいバージョンノートが追加されます。バグ修正や新機能の公開など、まるでソフトウェア製品のように開発が行われていることから、組織化された攻撃者が管理していると見られます。
Kitty Drupalマルウェアの駆除方法
Kittyマルウェアは、コアモジュールにおいて厳格なセキュアコーディングを実践することでオンラインの脆弱性に対抗してきたDrupalの評判に汚点をつけましたが、それでもDrupalは間違いなく世界で最も安全なCMSの一つです。
すでに感染しているサイトに対処するため、Drupalコミュニティはソフトウェアアップデートを展開しています。感染したDrupalサイトへの対応方法とその後の手順に関するアドバイスは、Drupal公式サイトで公開されています。
予防は治療に勝ります。以下の予防策を実践することで、Drupalサイトの運営環境をより安全に保つことができます。
- ファイル整合性監視を定期的に実施する: Astraのようなツールを活用し、サーバー上のファイルを定期的に監視して、変更があった際に即座に通知を受け取れるようにしましょう。ハッカーはサーバー上のファイルを改ざんし、サイトのコアファイルにマルウェアやウイルスを仕込むことがあります。こうしたコードは、PHPやPythonなどのサーバーサイドで実行されることもあれば、JavaScriptのようにクライアントのブラウザ上で実行されることもあります。
- Webアプリケーションファイアウォール(WAF)を導入する: 悪意のあるWebリクエストが脆弱なCMSに被害をもたらす前に、遮断できるようにしましょう。
- CMSを定期的にアップデートする: セキュリティパッチやアップデートは、CMSの新バージョンとともにリリースされることが多いです。新しいバージョンを定期的に確認し、アップグレードすることを強くおすすめします。
- ベンダーが公開するすべてのセキュリティパッチを適用する: ほぼすべてのCMSは、重大な問題が報告されるたびにセキュリティパッチをリリースしています。セキュリティメーリングリストやRSSフィードを購読し、ソフトウェアを常に最新の状態に保ちましょう。
Drupalサイトをオンラインの攻撃者から守りたいとお考えですか?AstraのDrupalセキュリティスイートを活用して、サイトを脅威から守りましょう。また、AstraのDrupalセキュリティブログを購読すれば、最新の動向、パッチリリース、脆弱性ニュースをいち早くキャッチできます。
-
Windows 10でNDIS_Internal_Errorを修正する方法|ブルースクリーンエラーの解決策5選
Windowsの起動時に「NDIS_Internal_Error」が表示されて困っていませんか?ご安心ください。これはBSOD(ブルースクリーン・オブ・デス)と呼ばれる一般的なエラーで、主に古いドライバーや破損したシステム設定が原因で発生します。また、ウイルスやマルウェアの感染が原因である可能性もあります。 ブルースクリーンエラーがさらなる問題を引き起こす前に、この記事で紹介する対処法を試してみましょう。ここでは、Windows 10でNDIS_Internal_Errorを解決するためのトラブルシューティング手法を複数ご紹介します。 それでは始めましょう。 Windows 10でNDIS_
-
Windows 10で「ERROR_VIRUS_INFECTED」エラーを解決する方法
デジタル時代において、ウイルスやマルウェアへの対策は非常に厄介な問題となっています。どれほど多くのセキュリティ対策を講じても、ウイルスは何らかの方法でデバイスへの侵入を試みてきます。「操作を正常に完了できませんでした(Operation did not complete successfully)」というエラーが表示されたことはありませんか?このエラーは、Windows 10 PCにウイルス、マルウェア、または感染ファイルが存在していることが主な原因です。幸いにも、いくつかの対処法を実行することで、このエラーをすばやく解消し、システムをエラーフリーの状態に戻すことができます。 Windows