Skip to content

feat(howto): FT170 Request Deduplication + クラッカー攻撃試験 ATK-01〜12#850

Merged
hideyukiMORI merged 1 commit into
mainfrom
feat/849-ft170-deduplog
May 22, 2026
Merged

feat(howto): FT170 Request Deduplication + クラッカー攻撃試験 ATK-01〜12#850
hideyukiMORI merged 1 commit into
mainfrom
feat/849-ft170-deduplog

Conversation

@hideyukiMORI
Copy link
Copy Markdown
Owner

Summary

  • docs/howto/request-deduplication.md 新規追加 — Idempotency-Key 必須パターン・24h TTL・replayed フラグ・ctype_digit 型検証
  • FT プロジェクト ../NENE2-FT/deduplog/ 実装: 24 tests / 57 assertions (DedupTest 12 + AttackTest 12)
  • クラッカー攻撃試験 ATK-01〜12 全 Pass: SQL インジェクション・リプレイ攻撃・ホワイトスペースキー・XSS・情報漏洩なし
  • ATK-02 で発見した実際の脆弱性: PHP (int) キャストが "100; DROP TABLE …"100 として処理 → ctype_digit() チェックで修正済み

Test plan

  • php8.4 vendor/bin/phpunit --testdox → 24 tests OK
  • php8.4 vendor/bin/phpstan analyse --level=8 src tests → No errors
  • php8.4 vendor/bin/php-cs-fixer fix → No changes needed

Related

Closes #849

Self-review: backend-api, middleware-security

FT157〜FT170 全ループ完了 🎉

🤖 Generated with Claude Code

- docs/howto/request-deduplication.md を新規追加(Idempotency-Key パターン・TTL・replayed フラグ・ctype_digit 型検証)
- クラッカー攻撃試験 ATK-01〜12 全 Pass(../NENE2-FT/deduplog/tests/Dedup/AttackTest.php)
- ATK-02 で発見: PHP (int) キャストが文字列注入を無視 → ctype_digit 検証で修正
- docs/todo/current.md を v1.5.104 に更新、FT170 完了・FTループ全完了

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@hideyukiMORI hideyukiMORI merged commit 316e256 into main May 22, 2026
@hideyukiMORI hideyukiMORI deleted the feat/849-ft170-deduplog branch May 22, 2026 08:27
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.

FT170: Request Deduplication (deduplog) — クラッカー攻撃試験

1 participant