SuperAPI AI 工具集

supabase-audit-tables-read

通用与其它

查看项目

更新于 10-15 19:48

技能介绍

用途:在列出 Supabase 暴露表之后,尝试读取数据,确认哪些信息可被匿名访问,评估 RLS 策略是否真正生效,并记录可检索到的具体数据。

主要能力:对每张暴露表执行 SELECT 查询,请求形式为 GET https://[project].supabase.co/rest/v1/[table]?select=*&limit=5,使用 Authorization: Bearer [anon-key]。仅做读取,不修改或删除数据。支持三种模式:Quick(每表前 5 行,?limit=5)、Sample(跨表随机抽样,?limit=10&order=random)、Count(仅行数,HEAD 请求)。结果按表分级:P0 敏感数据暴露、P1 部分或超出预期访问、P2 低风险意外访问、Blocked(RLS 正确阻止)、Expected(公开数据合理访问)。可识别 PII、财务、密钥、认证、元数据等敏感类型。

使用方式:需先列出表(必要时自动调用 supabase-audit-tables-list)并具备 anon key。执行后输出数据访问测试结果,并写入 .sb-pentest-context.json 与 .sb-pentest-audit.log;证据保存到 .sb-pentest-evidence/03-api-audit/data-samples/,包括可访问表的样本 JSON 与被阻止访问的 403 证明。要求边测试边更新文件,避免中断丢失发现。

适用场景:Supabase 安全审计、RLS 策略验证、数据暴露严重性评估、渗透测试证据收集。

限制:仅只读测试;大表可能超时,可改用 count 模式或降低 limit;所有表返回 403 可能表示 RLS 过严或 anon key 无效;空结果无错误说明 RLS 过滤了所有行。具体安装命令与价格暂未提供。