test(wave139): url_security domain 层 +86 单测 #1056

Merged
xiaoxia merged 1 commits from test/wave139-url-security into develop 2026-07-28 16:19:10 +08:00

1 Commits

Author SHA1 Message Date
xiaoxia 87a3351aba test(wave139): url_security domain 层 +86 单测
CI/CD Pipeline / Staging E2E Tests (pull_request) Blocked by required conditions
CI/CD Pipeline / Staging API Integration Tests (pull_request) Blocked by required conditions
CI/CD Pipeline / Deploy Production (pull_request) Blocked by required conditions
CI/CD Pipeline / Production Browser E2E (pull_request) Blocked by required conditions
CI/CD Pipeline / ACR Image Cleanup (pull_request) Blocked by required conditions
CI/CD Pipeline / Canary Release to Production (pull_request) Blocked by required conditions
Preview Cleanup / Cleanup Preview Environment (pull_request) Waiting to run
ACR Cleanup / ACR Image Cleanup (pull_request_target) Has been cancelled
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 6s
CI/CD Pipeline / Unit Tests (pull_request) Waiting to run
CI/CD Pipeline / Frontend Unit Tests (pull_request) Waiting to run
CI/CD Pipeline / Build Production API Image (pull_request) Waiting to run
CI/CD Pipeline / Build Production Web Image (pull_request) Waiting to run
CI/CD Pipeline / Build Production Worker Image (pull_request) Waiting to run
CI/CD Pipeline / CI Gate (pull_request) Blocked by required conditions
CI/CD Pipeline / Frontend Lint (pull_request) Successful in 42s
CI/CD Pipeline / Build Staging API Image (pull_request) Has been skipped
CI/CD Pipeline / Build Staging Worker Image (pull_request) Has been skipped
CI/CD Pipeline / Build Staging Web Image (pull_request) Has been skipped
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Waiting to run
CI/CD Pipeline / Validate - Type Check (mypy) (pull_request) Successful in 2m26s
CI/CD Pipeline / Validate - Migration (alembic) (pull_request) Successful in 2m26s
CI/CD Pipeline / PR Build Web Image (pull_request) Successful in 1m58s
CI/CD Pipeline / PR Build Worker Image (pull_request) Successful in 1m44s
CI/CD Pipeline / Validate - Code Quality (pull_request) Failing after 3m35s
CI/CD Pipeline / Integration Tests (pull_request) Waiting to run
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 1m49s
CI/CD Pipeline / PR Build API Image (pull_request) Successful in 6m26s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 4m30s
AI Code Review / AI Code Review (pull_request) Successful in 6m53s
PR Automation / Auto Merge on CI Green + Approved (pull_request) Successful in 47m11s
为 domain/url_security.py 新增 86 个单测,SSRF 安全校验全覆盖:

- 常量与异常类:6 个
- check_internal_hostname 内部主机名拦截:12 个
- is_trusted_domain 可信域名匹配:7 个
- check_ssrf_ip IP SSRF 检查:9 个
- is_ip_address IP 判断:5 个
- validate_url_basic URL 基础校验:16 个
- is_url_basic_safe 便捷函数:5 个
- validate_magic_number 魔数校验:20 个

覆盖场景:
- 回环/私有/链路本地/组播/未指定/保留 IP 拦截
- .local/.internal/.localdomain 内网域名后缀拦截
- localhost/metadata 等敏感主机名拦截
- scheme 白名单 / 端口白名单 / URL 长度限制
- 直接 IP 访问开关 + 可信域名白名单(含子域名)
- 9 种文件格式魔数校验(图片/音频/视频)
- 空字节 / 过短 / 未知 MIME 等边界情况
2026-07-28 16:06:02 +08:00