// docs / scans
扫描类型
FixVibe 会针对三类目标运行三类扫描。每一种的门槛、速度和影响范围都不同,请选择与你测试内容匹配的类型。
被动
每个级别均可用。被动扫描从不发送精心设计的攻击输入;它像普通浏览器一样获取URL,并检查发送的响应、客户资产、BaaS 暴露、DNS 以及针对260+ passive checks 的公共安全态势。
因为它是只读的,被动扫描可以针对任何 URL 运行:不需要域名验证,也不需要确认授权。取舍在深度:凡是需要发送输入才能发现的问题,被动扫描都会漏掉。
被动扫描能发现什么
- 缺失安全标头(HSTS、CSP、frame-options 等)。
- 不安全的 cookie 属性(缺少 Secure / HttpOnly / SameSite)。
- 弱 TLS 配置、过期证书、缺失 HSTS preload。
- JS bundles 中的 secrets(Supabase service keys、AWS keys、Stripe sk_ 等)。
- 暴露的 source maps、debug endpoints、OpenAPI specs、GraphQL introspection。
- 开放的 Supabase RLS / Firebase rules / Clerk 配置错误。
- DNS(子域名接管、缺失 SPF/DKIM/DMARC)。
- 威胁情报列表(Spamhaus、URLhaus)。
- 存在已知 CVE 的过时框架版本。
主动 Hobby+
主动扫描针对您明确授权的已验证域执行有界验证。它们可在 Hobby 计划和更高级别(Pro、Unlimited)中使用,旨在确认风险行为,而无需发布底层探测方案。
为什么要设置门槛:确认授权流程
主动探测理论上可能影响生产环境:响应变慢、错误激增、测试存储中出现无用数据。因此我们要求你:
- 验证域名:通过 DNS TXT 或 HTTP file(Account → Domains)。
- 确认授权:在扫描开始时进行一次确认,声明你拥有权限。服务器会记录你的 IP、user-agent 和时间戳,并写入
audit_logs。
对于计划的重新扫描和API/MCP 活动启动,域授权将从Dashboard → Domains 记录下来,并且可以随时撤销。自动主动扫描使用该域的授权安全级别。
GitHub 仓库 Pro+
存储库扫描会跳过已部署的 URL 测试并通过 FixVibe GitHub App 或 OAuth 连接检查源。他们报告高可信度代码、依赖性和存储库安全风险,而无需存储您的源代码。
仓库扫描永远不会写入你的仓库,也不会持久化源代码;只会存储发现项证据。配额:与 URL 扫描共用同一个 scansPerMonth bucket。
通过 API 触发
curl -X POST https://fixvibe.app/api/v1/scans \
-H "Authorization: Bearer fxv_..." \
-H "content-type: application/json" \
-d '{"target":"https://staging.example.com"}'REST API 和MCP 可以启动被动扫描,并且可以对Dashboard → Domains 中明确授权的已验证域启动主动扫描。完整参考:/docs/api。
匿名一次性扫描
首页允许未注册访客在每个浏览器会话中运行一次被动扫描。这些扫描会在创建 24 小时后过期,并且如果你在过期前注册,可以迁移到真实账号;认证回调会自动把匿名扫描挂到新组织下。
