WordPressサイトへの悪質なPHPコードのサイレント注入によるハッキング被害

概要

サイバー犯罪者がWordPressサイトへの攻撃を激化させており、テーマファイルを密かに改ざんして不正なサードパーティースクリプトを配信しています。このキャンペーンでは、アクティブなテーマのfunctions.phpファイルに巧妙なPHPインジェクションを仕掛け、外部コードをフェッチすることで、侵害されたサイトを悪質な広告やマルウェアのサイレントディストリビューターに変えています。

この侵害は、サイト所有者が自身のページで見慣れないJavaScriptが実行されていることに気づいたことで明るみに出ました。最近、ある著名なクライアントは、サイトの訪問者全員が知らず知らずのうちに攻撃者によって制御されているドメインから悪質なJavaScriptをロードしていることを発見しました。これはユーザーの信頼を損ない、機密データを露呈させ、サイトの整合性を危険にさらすものです。

侵害の発見

ページソースを迅速に調査したところ、porsasystem.comを参照する単一のスクリプトタグが発見されました。この一行のコードが、攻撃全体を解明する鍵となりました。PublicWWWでのその後の検索により、同じスクリプトが少なくとも17の異なるWordPressサイトに存在することが判明し、脆弱なインストールを標的とした広範な作戦が示唆されました。

悪質なURLのVirusTotal分析では、最悪の事態が確認されました。17のセキュリティベンダーがすでにこのドメインを有害なコンテンツを配布しているとしてブロックリストに登録していました。JavaScriptペイロードのさらなる調査により、広告をロードし、クローキング技術を介してトラフィックをリダイレクトしていることが明らかになり、削除がより困難になっています。ページの改ざんやログイン失敗などの目に見える症状がなかったため、攻撃者は長期間にわたって検出されずに活動を続けることができました。

悪質なPHPインジェクションの解剖

ファイルシステム全体の監査により、侵害の真の原因が明らかになりました。それは、テーマのfunctions.phpファイルの末尾に追加された欺瞞的なスニペットです。一見すると、注入されたコードは無害に見えました。wp_enqueue_scriptの呼び出しをラップする小さな関数です。しかし、詳しく調べてみると、リモートURLを動的に構築し、wp_remote_getを使用してJavaScriptをフェッチし、それをページフッターにエコーしていることがわかりました。

感染チェーンは次のように動作します:

  • 悪質な関数はスクリプトハンドルを登録およびエンキューし、攻撃ペイロードをサイトのフロントエンドに埋め込みます。
  • すべてのページロードは、攻撃者のサーバーへのサーバーサイドHTTPリクエストをトリガーし、新しい広告キャンペーンや悪質なリダイレクトを含む可能性のある更新されたJavaScriptを取得します。
  • この関数は、無害な命名規則とコメントの欠如を通じてその存在を隠し、正当なテーマコードとシームレスに混ざり合うようにしています。

多くのサイト管理者は、特に更新後やプラグインの変更後にテーマファイルを定期的に検査しないため、このアプローチにより、攻撃者はアラームを鳴らすことなく不要なコンテンツを注入し続けることができます。

軽減策

この増大する脅威から防御するために、WordPressサイトの所有者は以下の対策を講じるべきです:

  • 定期的なファイル整合性チェック:コアファイルとテーマファイルの不正な変更を検出するために、自動スキャンを実装します。WordfenceやSucuriのようなソリューションは、既知の良好なバージョンとファイルハッシュを比較し、管理者にあらゆる変更を警告できます。
  • 最小権限の原則:信頼できるユーザーのみがテーマディレクトリへの書き込みアクセス権を持つようにします。不正な編集を防ぐためにfunctions.phpファイルの権限を制限し、過度に寛容なFTPまたはSSH資格情報での操作を避けます。
  • 安全な更新ワークフロー:WordPressコア、テーマ、プラグインを最新の状態に保ち、攻撃者が初期アクセスを得るために悪用する既知の脆弱性への露出を最小限に抑えます。更新を適用する前に、ファイルとデータベースをバックアップして、問題が発生した場合に迅速なロールバックを可能にします。
  • 手動コードレビュー:カスタムテーマおよびプラグインコードを定期的にレビューし、外部アセットをエンキューまたはインクルードする関数に焦点を当てます。見慣れない関数名やリモートドメインを参照するコードブロックに注意してください。
  • ウェブサイトファイアウォールと監視:悪質なHTTPリクエストをブロックし、既知の攻撃パターンからサイトを保護するために、Webアプリケーションファイアウォール(WAF)を導入します。リアルタイム監視と組み合わせることで、WAFは脆弱なスクリプトに到達する前に疑わしいトラフィックを傍受できます。

まとめ

WordPressテーマファイルへの悪質なPHPコードのサイレント注入は、日常的なウェブサイトメンテナンスの隙間を狙う進化する脅威ベクトルを表しています。functions.phpにステルスな関数を埋め込むことで、攻撃者は訪問者のセッションを乗っ取り、不要な広告を配信し、潜在的により有害なペイロードを配信することができます。これらすべては、目に見える痕跡を残しません。ファイル整合性監視、厳格な権限管理、 diligentな更新慣行、およびコード監査を通じた警戒は、このステルスな侵害からWordPressサイトを保護するために不可欠です。警戒心のあるセキュリティ衛生は、WordPressのインストールを、密かな攻撃に対する脆弱な標的から回復力のある要塞へと変えます。


元記事: https://gbhackers.com/wordpress-sites-2/