HTProtect.org
HTProtect HTProtect JOOMLA SECURITY
htprotect.org 脆弱性情報 & アップデート手順
新登場 htprotect.app - 複数のJoomlaサイトを一元管理
脆弱性

Helix3テンプレートフレームワーク – 複数の重大な脆弱性

緊急 悪用確認済みCVE: 申請中(報告者:Phil Taylor、mySites.guru)
今すぐ対応を
Helix3をただちにバージョン3.1.2(またはそれ以降)へ更新してください。

安全なバージョン: Helix3 3.1.2以降 · via JoomShaper (account required)

ひと目でわかる基本情報

対象の拡張機能
Helix3 – システムプラグイン & AJAXプラグイン(plg_ajax_helix3
開発元
脆弱性の種類
複数の重大な脆弱性:認証なしでのファイルの書き込み・削除、テンプレート設定の上書き、コード実行に至る権限昇格(PHPファイルのアップロード)、およびXSS
影響を受けるバージョン
3.1.1より前のすべてのバージョン
安全なバージョン
Helix3 3.1.2以降   ダウンロード
深刻度
緊急 · 悪用確認済み
CVE
申請中(報告者:Phil Taylor、mySites.guru)
Joomlaとの互換性
Joomla 4 / 5 / 6
更新日/公開日
公開・修正日:2026年6月29日(報告日:2026年6月28日)

どのような脆弱性ですか?

Helix3は、JoomShaperが提供する従来型のテンプレートフレームワークです。システムプラグインと、それに付属するAJAXプラグイン(plg_ajax_helix3)として動作します。このAJAXプラグインに複数の脆弱性が見つかりました。いずれもJoomla標準のcom_ajaxエンドポイント経由で、認証なしに呼び出せてしまいます。

報告されている主な内容は次のとおりです。認証なしでのファイルの書き込みsaveアクションを悪用したパス操作)、任意のファイルの削除remove/remove_image)、テンプレート設定の上書きimport)、そしてログイン後にはコード実行に至る権限昇格です。権限昇格は、画像アップロード機能が.phpファイルまで受け付けていたことによるものです。このほか、格納型・反射型のXSSと、ソースコードに残されたGoogle FontsのAPIキーも指摘されています。

修正版は2026年6月29日にHelix3 3.1.1として公開され、その後3.1.2がリリースされています。更新する際は、そのまま3.1.2へ上げてください。CVE番号は公表の時点で申請済みでしたが、まだ割り当てられていませんでした。報告者はmySites.guruのPhil Taylor氏です。

Helix3とHelix Ultimateは別の製品です
Helix3は旧世代のフレームワークです(システムプラグイン+AJAXプラグイン)。Helix Ultimateは独自のコードベースとバージョン体系を持つ、まったく別の新しいテンプレートです。今回の脆弱性の影響は受けません
情報公開についての注意
公開された変更履歴には、当初「Security Update」としか書かれておらず、深刻度は示されていませんでした。変更履歴だけを判断材料にせず、セキュリティに関わる拡張機能は常に早めに更新してください。

自分のサイトは影響を受けますか? – 確認方法

  1. 管理画面を開く

    Joomlaの管理画面にログインします(URLの末尾が/administratorのページです)。

  2. プラグイン一覧を開く

    システムプラグインを開きます(拡張機能管理管理からでも開けます)。

  3. 「Helix3」で絞り込む

    Helix3または「System – Helix3 Framework」で検索し、表示されているバージョン番号を確認します。

  4. バージョンを判定する

    表示されたバージョンが3.1.2より古い場合は更新してください。3.1.1より前のバージョンは、いつ攻撃を受けてもおかしくない状態です。

脆弱性を塞ぐ手順

アップデート前に必ずバックアップ
アップデートの前に、ファイルとデータベースをバックアップしてください。万一トラブルが起きても、元の状態に戻せます(例:Akeeba Backup、またはご契約のホスティング事業者の機能)。
  1. 更新画面を開く

    システム更新拡張機能を開き、更新を確認をクリックします。

  2. Helix3を更新する

    一覧からHelix3を選び、更新をクリックします。バージョン3.1.2はJoomShaperの更新サーバーから配信されます。

  3. 更新できたか確認する

    システムプラグインで、3.1.2(またはそれ以降)と表示されていることを確認します。

手動インストール(代替手段)
更新が表示されない場合は、JoomShaperのアカウントからパッケージをダウンロードし、拡張機能管理インストールから手動でインストールしてください。

公式の入手先: via JoomShaper (account required). 必要な最低バージョン: Helix3 3.1.2以降.

すでに攻撃を受けている場合は?

更新してもマルウェアは取り除かれません
危険にさらされていた期間にサイトが未更新だった場合は、更新後に次の点を確認してください。テンプレートフォルダー内の見覚えのないファイル、なくなっている保護用ファイル(.htaccessなど)、テンプレートスタイルの設定値に生じた説明のつかない変更です。判断がつかないときは、専門業者にサイトの駆除を依頼し、すべてのパスワードを変更してください。

よくある症状:挿入された「Custom Javascript」によるサイト改ざん

この脆弱性では、次のような兆候がよく見られます。攻撃者はHelix3のテンプレートオプション、具体的にはCustom CodeCustom Javascriptの入力欄に、悪意のあるJavaScriptを直接書き込みます。ページを開くとこのコードがページ全体を上書きし、改ざん画面が表示されます。たとえば「Hacked by trenggalek6etar」「Hacked by antonkill」といった「Hacked by …」のメッセージです。

HACKED BY TRENGGALEK6ETAR
訪問者にはこのように表示されます(再現例)。
document.addEventListener("DOMContentLoaded", function(){
  document.title = "hacked by trenggalek6etar";
  document.body.innerHTML =
    '<div style="position:fixed;inset:0;'
    + 'background:#0a0a0a;z-index:2147483647">'
    + ' … HACKED BY trenggalek6etar … '
    + '</div>';
});
Helix3のテンプレートオプションのCustom Javascript欄に挿入されたコード。

確認方法:管理画面の拡張機能テンプレートスタイル(お使いのHelix3スタイル)Custom CodeCustom Javascriptを開きます。document.title = "hacked by…"document.body.innerHTML = …のような身に覚えのないコードがあれば、サイトは侵害されています。そのコードを削除し、Helix3の更新で原因をふさぎ、すべてのパスワードを変更してください。

サイトの復旧でお困りですか。対応できる専門家はJoomlaサービスプロバイダーディレクトリで探せます。

データベースのバックアップからテンプレートオプションを復元する

Helix3は、ロゴ・配色・レイアウト・カスタム CSS/JSなどすべてのテンプレートオプションを、params列にJSON形式で保存します。この列があるのはテーブル#__template_stylesで、スタイル1件につき1行です。改ざんや更新の失敗、誤ったリセットで設定が失われた場合は、テーブル全体ではなくこのparamsの値だけをデータベースのバックアップから書き戻します。

  1. 有効なスタイルを特定する

    フロントエンドのスタイルはclient_id = 0です。そのうち有効なスタイルはhome = 1になっています。そのIDを控えておきます。

  2. バックアップ側の行を探す

    ダンプファイルの#__template_stylesから、テンプレート名が同じ行を見つけます。

  3. 現在の値を退避する

    先に、稼働中の行のparamsの値をコピーして保管します。

  4. paramsを上書きする

    その1行のparamsだけを、バックアップの値に置き換えます。

  5. 確認する

    トップページが正常に表示され(HTTP 200)、オプションが元に戻っていることを確認します。

SELECT id, template, home FROM #__template_styles WHERE client_id = 0;
UPDATE #__template_styles SET params = '<バックアップのJSON>' WHERE id = 12;

古いparamsの値を保管してあれば元に戻せます。また、データベースを変更する前のバックアップは必須です。

出典 & 参考リンク

最終的には、各開発元の公式発表が優先されます。本ページは、公開されている情報を中立的な立場で整理したものです。

Supporters

Supporters of this site

htprotect.org is a free, vendor-independent information service. It is supported by:

Host & community
FC-Hosting

Joomla host from Germany with active community support – discovered the first attack on the JCE vulnerability.

fc-hosting.de
Initiator & operator
Website-Bereinigung.de

Specialised in cleaning, maintaining and securing Joomla and WordPress websites.

website-bereinigung.de

Support this project

You run a hosting or Joomla service and would like to support htprotect.org – and be listed here as a supporter? Every contribution helps to warn and protect those affected faster.

Prefer to give privately, without a listing? A little something for the tip jar is just as welcome.

Support HTProtect now
Bauschild & Service

Manufactures and installs construction-site signs, hoardings and façade solutions – including design and 3D visualisation.

bauschildundservice.de
IT Specialista

Professional IT support from Czechia – Windows management, domain administration and web hosting.

defendersoft.cz
onlineweg.de

Travel portal from Germany – package holidays, hotels and flights online, with personal travel-agency advice.

onlineweg.de
Criadero

Creative agency from Brandenburg – web design, print media, photography and 360° panoramas from a single source.

criadero.de
Jahn EDV-Dienst GmbH

IT service provider from Wächtersbach – Joomla websites, PC service, hardware and software.

jahnedv.de
IsariConsult

Information-security consulting from Berlin – security analyses, risk management and ISO 27001 for SMEs.

isari-consult.de