ブログ · 13 ページ目
開発とデザイン、あとは雑記。
Next.js のインクリメンタルキャッシュ経由のパストラバーサル RCE:CVE-2026-75604
エスケープされていないバックスラッシュ一つが、Windows 上でキャッシュを任意ファイルの読み書きに変えます。漏えいした Server Action の暗号鍵でリクエストを偽造し、React Flight のプロパティ連鎖から Function に到達します。
React Router のプロトタイプ汚染から RCE へ:CVE-2026-42211
turbo-stream v2 は TYPE_ERROR の復元でコンストラクタを動的に呼び出しながら、その出所を検証していません。アプリにプロトタイプ汚染が一つあればこの経路が Function に届き、中度の欠陥二つが RCE になります。
head の出典は一つ:SiteHead、JSON-LD のエスケープ、hreflang
三つの HTML シェルが一つのコンポーネントを共有し、head のタグをすべて出力します。データはサーバー層で組み立てます。JSON-LD の山括弧をエスケープする必要がある点も忘れずに。
静的サイトの公開は「フォルダを上げる」だけではない:キャッシュ、圧縮、正直な 404
静的ホスティングの罠はほぼ全部レスポンスヘッダーにあります。永久にキャッシュしてよいファイル、絶対にしてはいけないファイル、そして静的サイトが SPA 式フォールバックを使ってはいけない理由。
View Transitions でテーマ切り替えの波紋を作る
クリック位置から広がる円で新しいテーマを現します。半径は最も遠い角まで届く必要があり、終了時にカスタムプロパティを消さないと次の切り替えに漏れます。
ビルド時のページネーション:静的サイトのページ送りにクエリ文字列を使わない理由
一覧はビルド時に静的なページへ分割され、N ページ目は実在のルートになります。クライアント側のページング処理もクエリ文字列も使わず、ただのリンクです。
