速報

KUSANAGIのWordPress設定にヘッダー注入の脆弱性 更新と旧版の緩和策を確認

CATEGORY

KUSANAGIのWordPress設定にヘッダー注入の脆弱性 更新と旧版の緩和策を確認

※本ページのリンクにはプロモーションが含まれています。

リダイレクト設定の一行を修正しHTTP応答への不正なヘッダー挿入を止める概念イラスト

この記事のポイント

脆弱性
CVE-2026-117477
深刻度

MEDIUM5.1

対象
KUSANAGIで作成したNginx利用のWordPressプロファイル:Free/Business/Premium Edition 9.12.2-1以前、Security/Enterprise Edition 10.7.2-1以前、KUSANAGI 7・8(サポート終了、公式緩和策あり)
悪用状況
不明
推奨対応
KUSANAGI 9はFree/Business/Premium Edition 9.12.3-1以降、Security/Enterprise Edition 10.7.3-1以降へ更新。更新できない環境と7・8は各プロファイルの指定rewrite行を公式どおり変更し、Nginxへ反映する。
公表日

目次

GMOプライム・ストラテジーは2026年11月9日、KUSANAGIで作成したWordPressプロファイルのNginx設定に、ヘッダーインジェクションのがあると公表しました。-2026-117477として管理され、細工されたURLへアクセスすると、HTTPレスポンスに任意のヘッダーを挿入される可能性があります。対象のKUSANAGI 9はへ更新し、更新できない環境やサポート終了済みの7・8では、公式のを実施してください。

対象はKUSANAGI上でWordPressサイトを保守する管理者や、複数プロファイルを運用する制作・運用チームです。WordPress本体やプラグインを更新するだけで済ませず、Nginxの設定を確認する必要があります。Apache httpdを使用する構成は対象外です。以下は開発元のSecurity AdvisoryとJVNの公表情報を確認したニュースと対応手順の整理で、本サイトが攻撃再現や実環境試験を行ったという意味ではありません。

スポンサーリンク

影響範囲はOS名よりプロファイルとWebサーバーで確認する

開発元は、KUSANAGI 7・8・9のうち、Free/Business/Premium Editionの9.12.2-1以前、Security/Enterprise Editionの10.7.2-1以前でプロビジョニングしたWordPressプロファイルを影響対象としています。数字の9と10はエディションごとの系列であり、KUSANAGI 9という製品世代と同じ軸で比較しないようにします。

確認の単位は仮想マシン一台だけではありません。同じサーバーに複数のWordPressプロファイルがあるなら、利用するWebサーバーと設定ファイルをプロファイルごとに整理します。Apacheで動くサイトが一つあることを理由に、同居するNginx側のサイトまで対象外とは判断できません。構成を保守会社へ委託している場合は、サイト名とプロファイル名を対応づけて確認を依頼します。

  • KUSANAGIの世代とエディション、導入済みパッケージの版を記録する
  • 各WordPressプロファイルがNginxかApache httpdかを確認する
  • Nginxの対象設定に公式告知のリダイレクト行があるかを確認する
  • 更新または緩和策の反映状況をプロファイルごとに記録する

公式告知の影響はHTTPレスポンスへのヘッダー挿入です。任意コード実行やWordPressへの無条件の管理者ログインまで確認されたと広げてはいけません。公表資料には今回の悪用確認の記載はなく、被害件数や攻撃期間も示されていません。認証情報の強制変更など、公式が求めていない対応を一律の必須作業にはしません。

原因はリダイレクト先に使うURIの扱い

問題の箇所は、WordPress管理画面のパスに末尾のスラッシュを付けるNginxのrewriteルールです。公式の修正は、リダイレクト先に含める変数を$uriから$request_uriへ変更します。入力を受け取るPHPコードの修正ではなく、Webサーバーがレスポンスを作る段階の設定変更です。

修正前:
rewrite /wp-admin$ $scheme://$host$uri/ permanent;

修正後:
rewrite /wp-admin$ $scheme://$host$request_uri/ permanent;

NGINXの変数仕様では、$uriは正規化された現在のURI、$request_uriは引数を含む元の要求URIです。同じURLに関係する変数でも保持する値が違うため、リダイレクトの出力先で交換可能なものとして扱えません。この性質は設定を理解するための説明であり、独自の置換案を作る根拠にはしないでください。修正は開発元が指定する行を基準にします。

NGINXのrewrite仕様では、置換先がhttp://、https://、$schemeで始まる場合にクライアントへリダイレクトを返し、permanentは301応答を返します。そのため、管理画面の表示だけでなく、リダイレクト応答のLocationと通常の遷移を確認することが、今回の修正後の検査につながります。

スポンサーリンク

KUSANAGI 9はエディション別の修正版へ更新する

KUSANAGI 9のFree/Business/Premium Editionは9.12.3-1以降、Security/Enterprise Editionは10.7.3-1以降が修正版です。開発元は次の更新コマンドを案内しています。作業前に現在の設定とパッケージ版を保存し、通常の保守手順に従ってと復旧方法を確認してください。

dnf upgrade kusanagi

Security EditionとEnterprise Editionでは、kusanagi autoupdateでミドルウェアの自動更新を有効にしている場合、この修正は自動適用されると案内されています。ただし「自動更新を契約している」と「当該環境で有効になって実行された」は別です。保守担当者は導入済みの版と実行結果を確認し、自動更新という名称だけで対応済みと記録しないようにします。

更新後は、対象プロファイルの設定を確認し、通常の管理画面への転送が維持されるかを調べます。独自のテンプレートや構成管理から設定を配布している場合、その配布元に古い行が残っていないかも点検することを本サイトは提案します。現在のファイルが正しくても、次の再配備で過去の設定へ戻れば対応が持続しないためです。

更新できないKUSANAGI 9の緩和策

KUSANAGI 9をすぐに更新できない場合、公式告知は各WordPressプロファイルの次のファイルを対象に、前述のrewrite行を変更するよう案内しています。{プロファイル名}は実環境の名前へ読み替えます。対象の行以外をまとめて書き換えたり、同名変数を全ファイルで一括置換したりする手順ではありません。

/etc/opt/kusanagi/nginx/conf.d/{プロファイル名}.wp.inc

変更後はNginxをリロードまたは再起動します。公式のコマンドは次のとおりです。--reloadへ対応していない環境では後者を使用します。再起動が必要な場合は、受付中の通信や監視への影響を考慮して作業時間を決めてください。

kusanagi nginx --reload

# --reloadに対応していない場合
kusanagi nginx

NGINXのコマンドライン仕様では、-tは構文と参照ファイルの検査、-Tは検査に加えて設定内容を出力する機能です。反映前の検査は有用ですが、KUSANAGI環境の実際の実行ファイルと設定先を指定できていることが前提です。別に導入されたnginxを検査して、稼働中の設定を検査したつもりにならないようにします。出力には環境情報が含まれるため、共有先も限定します。

スポンサーリンク

KUSANAGI 7・8は緩和と移行を分ける

KUSANAGI 7と8はサポート終了済みで、今回のアップデートは提供されません。開発元は各WordPressプロファイルのHTTP用とSSL用の設定ファイルを変更し、Nginxを再起動する緩和策を案内しています。一方だけを修正して終わらせず、利用している両方の設定を確認します。

/etc/nginx/conf.d/{プロファイル名}_http.conf
/etc/nginx/conf.d/{プロファイル名}_ssl.conf

# 指定のrewrite行を変更後
kusanagi nginx

今回の行を直すことは、この脆弱性への緩和です。サポート終了を解消したり、他の問題へ更新が提供される状態に戻したりするものではありません。本サイトの提案として、緩和策の実施日と担当者を記録したうえで、サポートされる環境への移行計画を別の作業として管理してください。移行前にはPHPやDB、プラグインの互換性を検証し、今回の緩和を移行完了まで先延ばしにしないことが重要です。

修正後は設定と通常応答を対で確かめる

以下は本サイトが提案する確認方法です。自分が管理するで、まず設定の差分と読み込み対象を確認し、次に通常のURLで応答を比較します。攻撃用の文字列を本番や第三者のサイトへ送る必要はありません。正常系の試験は脆弱性が絶対に残らないことの証明ではなく、設定変更で通常運用を壊していないかを確認する工程です。

curl -sS -D - -o /dev/null https://example.com/wp-admin

example.comは管理下の検証用へ置き換えます。Locationの転送先が意図するサイトとパスであるか、想定外のループがないか、通常の管理画面操作が継続できるかを確認します。外部公開側にやがある場合は、外部からの応答と管理下の側の結果を対応づけます。途中の装置が返した301を見て、KUSANAGI側の修正を確認したとしないためです。

リロードの成功も確認してください。NGINXの公式プロセス制御資料では、設定再読込時に構文や適用を確認し、失敗した場合は古い設定で動き続ける挙動を説明しています。サービスが停止しなかったことだけでは、新設定が有効になったとは判断できません。作業ログとエラーログを確認し、失敗していれば設定を修正して再検査します。

最終記録は、サイト名、プロファイル名、KUSANAGI世代・エディション、更新前後の版、対象ファイル、反映方法、通常遷移の結果を一組にします。複数台構成では全台、HTTPとでは各経路を確認し、未対応の対象を残したままサーバー全体を完了扱いにしないようにします。

今回の対応で混同しないこと

本件はKUSANAGIのWordPress向けNginx設定に関する問題です。NGINX本体の修正版への更新だけ、WordPress管理画面へのアクセス制限だけ、あるいはWordPress本体の更新だけで公式対策を置き換えたとは扱いません。対象プロファイルを特定し、KUSANAGI 9は対応版へ更新し、更新できない環境は指定行の変更と反映を完了させることが中心です。

はと開発元が4.0で5.1、3.1で6.1を示しています。本記事の構造化メタにはCVE-2026-117477のCVSS 4.0基本値5.1を使用します。方式が違う値を混ぜて深刻度が上がった、下がったと解釈せず、実際に影響するプロファイル数と更新可否から保守作業を決めてください。

出典・一次情報

本記事は以下の公開情報をもとに作成しています。最新の状況は各リンク先で確認してください。

この記事を書いた人

Ryohei

Webエンジニア / アプリ開発者 / 技術ブログ運営者

福岡のWeb制作会社に勤務するWebエンジニアです。10年以上にわたりWeb制作・開発に携わり、ヒアリングや進行管理から、コーディング、CMSの構築、システム開発、サーバーの構築・保守・運用まで、Webサイト制作の工程を幅広く担当しています。Webサイトは、これまでに100以上の構築・保守を手がけてきました。

個人でもWebサイトの制作・改修やWebアプリの開発・運用を行い、AIを活用した開発にも取り組んでいます。近年はWebセキュリティにも注力しています。

2015年から技術メディア「Into the Program」を運営し、実務や開発で得た知識をもとに、プログラミングの実装方法やWebサイトの運用・セキュリティ情報を発信しています。

主な分野
Webサイト構築・保守・運用 / HTML/CSS / JavaScript / PHP / WordPress / サーバー構築・保守・運用 / アプリ開発 / セキュリティ対策
資格・試験合格
情報セキュリティマネジメント試験
基本情報技術者試験
AWS認定ソリューションアーキテクト アソシエイト
PHP8技術者認定ウィザード
メディア運営
2015年〜

記事の作成・更新について

セキュリティ記事は、ベンダーの公式アドバイザリやCVE・JVNなどの一次情報を参照し、出典と情報確認日を記載します。実環境での検証を行った場合は、その環境と確認範囲を明示します。重要な追加情報や誤りを把握した場合は、内容を確認して追記・訂正します。

あわせて確認したい対策・解説

ほかの脆弱性

関連する記事

おすすめの書籍

キーワードから探す

スポンサーリンク

JVN

JPCERT/CCとIPAが共同で運営する、日本で使われている製品の脆弱性情報を公開するポータルサイト。

詳しく見る

CVSS

脆弱性の深刻度を0.0〜10.0の数値で評価する共通の基準。数値が大きいほど深刻度が高い。

詳しく見る

HTTPS

HTTPの通信をTLSで暗号化したもの。Webサイトとの通信を盗み見や改ざんから守る。

詳しく見る

オリジン

Webで、スキーム(httpsなど)・ホスト名・ポート番号の組み合わせ。ブラウザーはオリジンが同じかどうかで、ページ間のアクセスを制限する。

詳しく見る

ロードバランサー

複数のサーバーにアクセスを振り分け、負荷を分散させる装置や仕組み。障害時に別のサーバーへ切り替える役割も持つ。

詳しく見る

CDN

世界各地のサーバーにWebサイトのファイルを複製して置き、利用者に近いサーバーから配信する仕組み。表示の高速化や負荷の分散に使う。

詳しく見る

ドメイン

インターネット上の住所にあたる名前。「example.com」のように、WebサイトやメールアドレスのURLに使う。

詳しく見る

検証環境

本番環境に反映する前に、変更や更新が問題なく動くかを試すための環境。本番と同じ構成にできるほど確認の精度が上がる。

詳しく見る

バックアップ

データの複製を別の場所に保存しておくこと。故障や誤操作、攻撃でデータを失ったときに元に戻すために使う。

詳しく見る

パッケージ

ソフトウェアを配布・インストールしやすいように、プログラムと必要な情報をひとまとめにしたもの。npmやComposerなどで管理する。

詳しく見る

リダイレクト

あるURLにアクセスしたとき、自動的に別のURLへ転送すること。サイトの移転やURLの変更で使う。

詳しく見る

緩和策

脆弱性を悪用されにくくしたり、悪用されたときの被害を小さくしたりするための対処。

詳しく見る

パッチ

ソフトウェアの不具合や脆弱性を修正するための更新プログラム。適用することで既知の問題を解消する。

詳しく見る

CVE

公開された脆弱性に付けられる世界共通の識別番号。「CVE-2026-12345」のように年と連番で表す。

詳しく見る

脆弱性

ソフトウェアや設定の不備のうち、攻撃者に悪用されると情報漏えいや不正操作などにつながる弱点。

詳しく見る

HTTP

ブラウザとWebサーバーがやりとりするための決まりごと(プロトコル)。暗号化したものはHTTPSと呼ぶ。

詳しく見る