Skip to content

docs: FT180 xml モジュール フィールドトライアルレポートを追加#508

Merged
hideyukiMORI merged 1 commit into
mainfrom
docs/ft180-xml-field-trial
May 21, 2026
Merged

docs: FT180 xml モジュール フィールドトライアルレポートを追加#508
hideyukiMORI merged 1 commit into
mainfrom
docs/ft180-xml-field-trial

Conversation

@hideyukiMORI
Copy link
Copy Markdown
Owner

Summary

  • FT180: xml.etree.ElementTree + defusedxml — XML パース・XXE防御・展開爆弾対策
  • 56 テスト全通過(mypy: Success / ruff: All checks passed)
  • v1.8.51 へバージョンアップ
  • セキュリティ診断(180 % 3 = 0)+ クラッカーペンテスト(180 % 4 = 0)実施済み

Key Findings

  • F-1(HIGH): ET.Element() が不正なタグ名を受け入れて壊れた XML を生成 → NCName バリデーションで修正
  • XXE 防御: defusedxml で外部エンティティ参照を完全拒否(標準ライブラリは脆弱)
  • Billion Laughs 防御: defusedxml が DTD を含む XML を拒否
  • タグ名インジェクション: クラッカーペンテストで発見・修正済み

Security Audit Result

合格(F-1 をペンテストで発見し修正済み)

GitHub Issues

  • #506: defusedxml を CLAUDE.md に追記
  • #507: build_xml() 子タグ名バリデーション追加

Test plan

  • uv run pytest — 56 passed
  • uv run mypy — Success
  • uv run ruff check — All checks passed
  • uv run pip-audit — PYSEC-2025-183 (継続監視)

🤖 Generated with Claude Code

@hideyukiMORI hideyukiMORI merged commit 36ea2fa into main May 21, 2026
2 checks passed
@hideyukiMORI hideyukiMORI deleted the docs/ft180-xml-field-trial branch May 21, 2026 15:07
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.

1 participant