Skip to content

fix(#122): X-Request-Id を UUID v4 形式のみ許可してログインジェクションを防ぐ#135

Merged
hideyukiMORI merged 1 commit into
mainfrom
fix/122-request-id-validation
May 19, 2026
Merged

fix(#122): X-Request-Id を UUID v4 形式のみ許可してログインジェクションを防ぐ#135
hideyukiMORI merged 1 commit into
mainfrom
fix/122-request-id-validation

Conversation

@hideyukiMORI
Copy link
Copy Markdown
Owner

Summary

  • RequestIdMiddleware がクライアント送信の X-Request-Id をバリデーションなしで structlog に設定していた
  • 改行文字やログ構文を含む任意の文字列が注入可能だった
  • UUID v4 正規表現 (^[0-9a-f]{8}-...-4...-[89ab]...-...$) でバリデーション、不正な値は新規 UUID に置換

Test plan

  • 既存テスト継続パス(UUID v4 形式の ID は正しく転送される)
  • test_invalid_request_id_is_replaced_with_new_uuid — 非UUID値は置換される(新規)
  • test_newline_in_request_id_is_rejected — 改行インジェクションが防がれる(新規)

Closes #122

🤖 Generated with Claude Code

クライアント送信の X-Request-Id ヘッダーを UUID v4 正規表現でバリデーションし、
形式不正な場合は新規 UUID を生成することで改行文字等によるログ注入を防ぐ。

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@hideyukiMORI hideyukiMORI merged commit 2c7db81 into main May 19, 2026
1 check failed
@hideyukiMORI hideyukiMORI deleted the fix/122-request-id-validation branch May 21, 2026 15:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

ApiKeyAuthMiddleware: TokenVerificationException を捕捉せず 500 が漏洩する

1 participant