SuperAPI AI 工具集

supabase-extract-anon-key

通用与其它

查看项目

更新于 10-15 19:48

技能介绍

用途:从客户端代码中提取 Supabase 匿名(public)API 密钥,用于后续 RLS 测试与 API 审计。anon 密钥出现在客户端属预期行为,安全性依赖 RLS 配置;它不同于绝不应出现在客户端代码中的 service_role 密钥。

主要能力:搜索直接赋值、createClient 初始化及环境变量模式(如 NEXT_PUBLIC_SUPABASE_ANON_KEY、VITE_SUPABASE_ANON_KEY、REACT_APP_SUPABASE_KEY、SUPABASE_KEY);校验 JWT 格式、解码 payload、确认 role 为 anon、比对项目 ref 与过期时间;发现多个密钥时提示可能存在的 service_role 泄露;输出来源文件与行号。

使用方式:基本用法为“Extract Supabase anon key from https://myapp.example.com”;已知 URL 时可用“Extract anon key for project abc123def”。若未提取 URL 会自动调用 supabase-extract-url。密钥无法解码时可尝试“Extract anon key with deobfuscation from https://myapp.example.com”;未找到密钥时可监控网络请求。

输出与记录:结果写入 .sb-pentest-context.json,审计日志写入 .sb-pentest-audit.log,证据保存至 .sb-pentest-evidence/02-extraction/extracted-anon-key.json。执行中必须逐步更新这些文件,而非仅在结束时写入。

适用场景:Supabase 应用安全评估、RLS 配置验证、API 审计前置步骤。

限制:仅针对客户端代码中的 anon 密钥提取;密钥可能被混淆、拆分或运行时获取,导致无法直接提取;多项目场景下密钥可能与 URL 不匹配。具体平台与收费信息暂未提供。