Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Next.jsの脆弱性(CVE-2025-29927)の話

 Next.jsの脆弱性(CVE-2025-29927)の話

51回 初心者のためのセキュリティ勉強会(オンライン開催)の発表資料です。
https://sfb.connpass.com/event/348181/

kuzushiki

March 25, 2025
Tweet

More Decks by kuzushiki

Other Decks in Technology

Transcript

  1. なんでこんなことに? > Next.js uses an internal header x-middleware-subrequest to prevent

    recursive requests from triggering infinite loops. https://nextjs.org/blog/cve-2025-29927 内部ヘッダーx-middleware-subrequestを使って、再帰的なリク エストが無限ループを引き起こすのを防いでいた。 -> すでにMiddlewareを通過したものとして処理されるように なっていた!
  2. 脆弱性についての所感 CVSS 9.1で深刻的な脆弱性ではあるものの... 実は、Middlewareのみで認証認可のチェックをすることは推奨されていない > Optionally use Middleware to perform

    optimistic checks. https://nextjs.org/docs/pages/building-your-application/authentication 実際に悪用される可能性は低かったのでは?
  3. 対策 可能ならアップデートしましょう For Next.js 15.x, this issue is fixed in

    15.2.3 For Next.js 14.x, this issue is fixed in 14.2.25 For Next.js 13.x, this issue is fixed in 13.5.9 For Next.js 12.x, this issue is fixed in 12.3.5 もし難しければ、x-middleware-subrequestヘッダを含む外部からのリクエストをWAFな どで遮断しましょう