何が起きたか
middleware.Static を e.Use で全体に組み込み、静的配信するパスをルートやグループのミドルウェアで保護している場合、/admin%2Fsecret.txt のように %2F でエンコードしたリクエストで保護をすり抜けてファイルを取得されます。ルーターはエンコードされたままのパスで照合する一方、静的配信はデコード済みのパスを使うためです。静的ルートの外のファイルは読まれません。以前 StaticFS などで直された問題と同種で、middleware.Static が修正から漏れていました。
やること
v4 は 4.16.0、v5 は 5.4.0 へ更新します。
出典
GitHub Advisory Database(GHSA-375p-5qhx-8wq4)github.com英語 ↗上の要約は通り道編集部がまとめたものです。影響範囲と修正版は必ず各出典で確認してください。