×

Strutsの入力制限に抜け。更新後の設定も確認する

バグマゲドン対策委員会 · 日本語編集版 · 内容更新 2026-10-30

Struts 2のRESTプラグインで、特定の入力に制限がかからず、データ改ざんにつながる可能性が公表されました。7.4.0以降への更新に加え、チェックを有効にする設定が必要です。

日本語要約・編集:バグマゲドン対策委員会。本記事公開:2026-10-30 / 本記事更新:2026-10-30 / 原文確認:2026-10-30。

原文発行:JVN / Apache / 原文公表:2026-10-29。

対象と影響

Strutsを使う受発注・予約などのWebシステムでは、開発会社への確認が必要です。全Struts環境が対象ではなく、RESTの使い方とアプリ内の指定で影響が変わります。

自社で確認すること

開発担当へ、RESTプラグインの利用・入力制限の設定・更新後の検証を確認する。

  1. Struts 2の7.2.1〜7.3.0で、struts.parameters.requireAnnotations=trueと、RESTで入力を受けるAction/Modelの@JsonAnySetterを併用しているか確認する。
  2. 7.4.0以降へ更新し、struts.rest.anySetter.requireAnnotations=trueを設定する。許可するany-setterに@StrutsParameter(allowDynamicKeys = true)を付け、動作を検証する。
  3. すぐ更新できない場合は、該当クラスの@JsonAnySetterを使わないか、保存前にアプリ側で入力値を検証する。更新だけで設定済みとは判断しない。

攻撃の流れと防御の確認箇所

RESTへの入力 → 一部の入力制限を通過 → データ改ざんの可能性

防御の確認箇所:Struts更新・入力制限の明示設定

優先度の考え方

利用構成を確認。特定のアノテーションと設定の組み合わせが対象。JVN本文に悪用や被害の確認、CVE番号・CVSS値の掲載はなく、独自に補完していません。

優先度は編集上の判断です。公式CVSSや、自社への実際の影響の確定とは区別してください。

報告の範囲

Strutsの特定構成の利用環境。発信元を示し、被害地域・攻撃元ではありません。

原文と確認箇所

JVNの公開・最終更新日はいずれも2026/10/29。対象7.2.1〜7.3.0、発生条件、データ改ざんの可能性、7.4.0以降と設定による対処を確認。ApacheのJackson any-setters節でも、追加設定が初期値falseであることと必要なアノテーションを照合。

海外の公的機関・ベンダーの一次情報を確認し、日本の小規模企業向けに独自要約。全文翻訳ではありません。対策優先度と小規模企業への影響は編集上の判断で、公式CVSSとは区別しています。

Markdown版 · RSS · 編集方針・出典

検索