Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Next.jsの脆弱性(CVE-2025-29927)の話
Search
kuzushiki
March 25, 2025
Technology
32
0
Share
Next.jsの脆弱性(CVE-2025-29927)の話
51回 初心者のためのセキュリティ勉強会(オンライン開催)の発表資料です。
https://sfb.connpass.com/event/348181/
kuzushiki
March 25, 2025
More Decks by kuzushiki
See All by kuzushiki
ECS-cape – Hijacking IAM Privileges in Amazon ECSを解説する
kuzushiki
0
280
CISSPに出てくるセキュリティモデルとアクセス制御モデルをまとめてみた
kuzushiki
0
370
攻撃者の視点から見たGraphQLのセキュリティ
kuzushiki
0
31
PythonのURLパーサで見つかった脆弱性について解説する
kuzushiki
0
53
Pythonのtarfileによる展開処理がセキュアになりそう
kuzushiki
0
17
Web Cache Deception Attackについて解説する
kuzushiki
0
43
PHP8.2の新機能✞SensitiveParameter✞につい て
kuzushiki
0
26
Apple M1 CPUの脆弱性「PACMAN」について解説する
kuzushiki
0
820
ファームウェア解析はじめました
kuzushiki
0
27
Other Decks in Technology
See All in Technology
AI時代における技術的負債への取り組み
codenote
1
1.5k
ワールドカフェI /チューターを改良する / World Café I and Improving the Tutors
ks91
PRO
0
320
Azure Static Web Apps の自動ビルドがタイムアウトしやすくなった状況に対応した件/global-azure2026
thara0402
0
410
インターネットの技術 / Internet technology
ks91
PRO
0
210
AWS認定資格は本当に意味があるのか?
nrinetcom
PRO
2
270
目的ファーストのハーネス設計 ~ハーネスの変更容易性を高めるための優先順位~
gotalab555
8
2.2k
Do Vibe Coding ao LLM em Produção para Busca Agêntica - TDC 2026 - Summit IA - São Paulo
jpbonson
3
120
AWS Agent Registry の基礎・概要を理解する/aws-agent-registry-intro
ren8k
3
370
マルチプロダクトの信頼性を効率良く保っていくために
kworkdev
PRO
0
160
EarthCopilotに学ぶマルチエージェントオーケストレーション
nakasho
0
300
弁護士ドットコム株式会社 エンジニア職向け 会社紹介資料
bengo4com
1
150
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
6
74k
Featured
See All Featured
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.2k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
The Cost Of JavaScript in 2023
addyosmani
55
9.8k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
3.8k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
2k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
170
Information Architects: The Missing Link in Design Systems
soysaucechin
0
890
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
260
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.5k
How to Think Like a Performance Engineer
csswizardry
28
2.5k
GraphQLとの向き合い方2022年版
quramy
50
15k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
120
Transcript
Next.jsの脆弱性 (CVE-2025-29927)の話
自己紹介 kuzushiki - セキュリティエンジニア5年目 - 2020~2024: 脆弱性診断・ペネトレーションテスト - 2024~: コーポレートITのセキュリティ担当
背景 発表のネタがなく困っていたところ、 先週末にNext.jsの脆弱性が話題になっていた→ 面白そうだったので調査することにした
Next.jsとは 有名なWebフレームワークの一つで、Reactがベースになっている JavaScriptのメタフレームワークの中では利用率1位 https://2024.stateofjs.com/en-US/libraries/#all_tools_experience 2024年|案件が多い「フレームワーク」ランキング 8位 https://prtimes.jp/main/html/rd/p/000000111.000045678.html
CVE-2025-29927とは Next.jsのMiddlewareによる処理がスキップされる脆弱性 認証認可のチェックをMiddlewareでやっていた場合、 本来アクセスできない機能にアクセスされる恐れあり 公式のアナウンスも出ていた https://nextjs.org/blog/cve-2025-29927
デモやります デモアプリはAppRunで公開しているので、ぜひ試してみてください! https://app-e5e67cd8-f4e6-4f7c-b571-09b522207dd6.ingress.apprun.sakura.ne.jp/ ソースコードも公開中 https://github.com/kuzushiki/CVE-2025-29927-test
なんでこんなことに? > 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を通過したものとして処理されるように なっていた!
脆弱性についての所感 CVSS 9.1で深刻的な脆弱性ではあるものの... 実は、Middlewareのみで認証認可のチェックをすることは推奨されていない > Optionally use Middleware to perform
optimistic checks. https://nextjs.org/docs/pages/building-your-application/authentication 実際に悪用される可能性は低かったのでは?
対策 可能ならアップデートしましょう 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な どで遮断しましょう
おわりに ミドルウェアでのチェックを過信してはいけない 使う前に公式ドキュメントを読んで、用途に問題がないか確認しておこう バグハンター目線だと狙い目かも?