【活用ガイド】

JVNDB-2026-036137

GoHugoのHugoにおけるクロスサイトスクリプティングの脆弱性

概要

Hugoのデフォルトのフェンス付きコードブロックレンダラーは、コードフェンスの情報文字列から取得した属性値をエスケープせずにレンダーされたHTMLに書き込みます。markup/internal/attributes/attributes.goの新しいコードでは、属性値がバイトスライスから文字列に変換されて保存される際に、意図的に以前そこで行われていたエスケープ処理が削除されています。同じファイル内のRenderAttributes関数は、まだバイトスライスである値のみをエスケープするため、そのエスケープ処理の分岐は決して実行されず、すべての値がそのまま書き込まれます。この関数のドキュメントには文字列属性のHTMLエスケープを行うと記載されていますが、実際には行われていません。したがって、情報文字列の属性値の中に引用符がある場合、その属性が終了したと見なされ、さらにイベントハンドラーを含む追加の属性をラッパー要素に配置でき、そのスクリプトはページを読み込むすべての訪問者で実行されます。この攻撃経路はデフォルト設定で到達可能であり、コードフェンスが有効で、goldmarkのunsafe設定やカスタムレンダーフックが使用されていない状態となっています。属性名の先頭が"on"で始まるものは属性解析時にフィルタリングされるため、インジェクションは名前ではなく値を通じて行われます。
CVSS による深刻度 (CVSS とは?)

CVSS v3 による深刻度
基本値: 5.4 (警告) [その他]
  • 攻撃元区分: ネットワーク
  • 攻撃条件の複雑さ: 低
  • 攻撃に必要な特権レベル: 低
  • 利用者の関与: 要
  • 影響の想定範囲: 変更あり
  • 機密性への影響(C): 低
  • 完全性への影響(I): 低
  • 可用性への影響(A): なし
影響を受けるシステム


GoHugo
  • Hugo 0.93.0 以上 0.165.0 未満

本脆弱性の影響を受ける製品の詳細については、ベンダ情報および参考情報をご確認ください。
想定される影響

・当該ソフトウェアが扱う情報の一部が外部に漏れる可能性があります。
・当該ソフトウェアが扱う情報の一部が書き換えられる可能性があります。
・当該ソフトウェアは停止しません。
対策

ベンダ情報を参照して適切な対策を実施してください。
ベンダ情報

VulnCheck
CWEによる脆弱性タイプ一覧  CWEとは?

  1. クロスサイトスクリプティング(CWE-79) [その他]
共通脆弱性識別子(CVE)  CVEとは?

  1. CVE-2026-10618
参考情報

  1. National Vulnerability Database (NVD) : CVE-2026-10618
  2. 関連文書 : hugo/markup/goldmark/codeblocks/render.go at v0.165.0  gohugoio/hugo  GitHub
  3. 関連文書 : hugo/markup/highlight/highlight.go at v0.165.0  gohugoio/hugo  GitHub
  4. 関連文書 : hugo/markup/internal/attributes/attributes.go at v0.165.0  gohugoio/hugo  GitHub
  5. 関連文書 : GitHub - gohugoio/hugo: The world’s fastest framework for building websites.  GitHub
更新履歴

  • [2026年09月30日]
      掲載