OpenAIHono2026/06/09 3:30

v4.12.25

要点だけを先に読めるように短く再構成したセクションです。

元記事

Quick Digest

要約

要点だけを先に読めるように短く再構成したセクションです。

openaijamodel: gpt-5-mini-2025-08-07

hono v4.12.25 リリース — セキュリティ修正

Key Points

  • CORSでcredentials反映問題修正
  • Lambda上でBody Limitバイパス防止
  • Windowsでパストラバーサル修正

Summary

v4.12.25 が 2026-06-09 に公開され、複数の重大なセキュリティ不具合が修正されました。影響範囲は CORS、Body Limit、serve-static のパス検証、AWS Lambda / Lambda@Edge アダプタのヘッダ/クッキー処理などです。該当するアダプタやミドルウェアを利用している環境では速やかなアップグレードと検証を推奨します。

Key Points

  • 修正内容(主な脆弱性):

    • CORS ミドルウェアがワイルドカード起源を使う際に、credentials=true の場合に任意の Origin を反映してしまう問題を修正 (hono/cors) — GHSA-88fw-hqm2-52qc
    • AWS Lambda 上で Content-Length を小さく申告することで Body Limit を回避できる問題を修正 (hono/body-limit, hono/aws-lambda, hono/lambda-edge) — GHSA-rv63-4mwf-qqc2
    • Windows 環境でエンコードされたバックスラッシュ (%5C) により serve-static のパスガードを突破できるパストラバーサルを修正(Node/Bun/Deno アダプタ) — GHSA-wwfh-h76j-fc44
    • AWS Lambda アダプタが複数の Set-Cookie ヘッダを単一のカンマ区切り値に結合してしまい、ALB(single-header)や VPC Lattice でクッキーが破棄される問題を修正 — GHSA-j6c9-x7qj-28xf
    • Lambda@Edge アダプタが重複するリクエストヘッダの最後の値しか残さない問題を修正(例: X-Forwarded-For) — GHSA-wgpf-jwqj-8h8p
  • 影響範囲:

    • hono/cors, hono/body-limit, serveStatic(各プラットフォームのアダプタ), hono/aws-lambda, hono/lambda-edge
  • 推奨対応(エンジニア向け):

    • 速やかに v4.12.25 にアップグレードする。特に AWS Lambda / Lambda@Edge / ALB / Lattice を利用するサービスは優先度高。
    • CORS 設定で明示的な origin を指定するなど、credentials を扱う設定を見直す。
    • Lambda 上で body-size 制限を運用している場合は、アップグレード後に大きいペイロードでの検証を行う。
    • Set-Cookie と複数ヘッダの取り扱いをテストし、クライアント側でのクッキー欠落がないか確認する。
    • Windows デプロイや開発環境で静的ファイルのパス検証を再確認する。

References

  • リリース: v4.12.25(2026-06-09)
  • 各修正は GitHub の該当 GHSA 識別子に紐づく

Full Translation

翻訳

原文の流れを保ったまま読める翻訳セクションです。

openaijamodel: gpt-5-mini-2025-08-07

v4.12.25

v4.12.25

Released: 2026-06-09T03:30:10.000Z
リリース担当: yusukebe — 09 Jun 03:30 · 1 commit to main since this release fce483e

セキュリティ修正

このリリースには以下のセキュリティ修正が含まれています。

  • CORS Middleware がワイルドカードを既定の Origin とした場合に資格情報付きで任意の Origin を反映する
    Affects: hono/cors
    修正内容: 明示的な origin を指定せずに credentials: true を設定した場合に、ワイルドカード Origin がリクエストの Origin を反映し Access-Control-Allow-Credentials: true を送信してしまう問題を修正しました。この障害により、ログイン済みユーザーが訪問した任意のサイトから資格情報付きのクロスオリジン要求を行い、クッキー認証されたエンドポイントのレスポンスを読み取れる可能性がありました。
    GHSA-88fw-hqm2-52qc

  • Body Limit Middleware が AWS Lambda 上で Content-Length を過小に申告することで回避されうる
    Affects: hono/body-limit on AWS Lambda (hono/aws-lambda, hono/lambda-edge)
    修正内容: クライアントが宣言する Content-Length を基にリクエストを構築していたため、実際にはボディが完全にバッファされて配信される環境で、クライアントが小さい Content-Length を申告して大きなボディを送ると設定したサイズ制限をすり抜けられる問題を修正しました。
    GHSA-rv63-4mwf-qqc2

  • Windows の serve-static におけるエンコードされたバックスラッシュ(%5C)経由のパストラバーサル
    Affects: serveStatic on Windows (Node, Bun, Deno adapters)
    修正内容: デコードされたエンコード済みバックスラッシュ(%5C\)が Windows のパス解決で区切り文字として扱われ、単一の URL セグメントがミドルウェアで保護されたサブツリーを抜け出すことを許していた問題を修正しました。パスガードが孤立したバックスラッシュを許してしまっていた点に対処しています。
    GHSA-wwfh-h76j-fc44

  • AWS Lambda アダプターが複数の Set-Cookie ヘッダーを一つの値に結合し、ALB single-header と Lattice でクッキーを失う
    Affects: hono/aws-lambda
    修正内容: ALB の single-header レスポンスや VPC Lattice v2 において、複数の Set-Cookie レスポンスヘッダーがカンマ区切りの一つの値に結合され、クライアント側で個別のクッキーに分解できずに静かに破棄または誤解析される問題を修正しました。
    GHSA-j6c9-x7qj-28xf

  • Lambda@Edge アダプターが繰り返し送られたリクエストヘッダーの最後の値だけを保持して残りを破棄する
    Affects: hono/lambda-edge
    修正内容: 繰り返し存在するリクエストヘッダーが append ではなく overwrite で書き込まれていたため、X-Forwarded-For のようなヘッダーの最後の値だけがアプリケーションに届き、残りが静かに破棄されていた問題を修正しました。
    GHSA-wgpf-jwqj-8h8p

その他

  • Assets: 2
  • リアクション: 👍 2, ❤️ 3