Back to skill

Security audit

Supabase Database Integration

Security checks for vulnerabilities and agentic risk

Overview

This skill is a disclosed Supabase database helper, but it enables live database writes, deletes, bulk changes, and RPC calls without clear confirmation or scoping safeguards.

Install only if you are comfortable letting the agent make Supabase REST calls with the configured key. Use a least-privilege anon key with strict RLS policies, avoid service_role keys, and require your own confirmation before deletes, bulk updates, upserts, or RPC functions that can change data.

Vulnerability Patterns
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • Agent Memory PoisoningWrites attacker-controlled rules into memory that affect later sessions
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
Vulnerability Patterns
  • Tool MisuseTool Parameter Abuse, Chaining Abuse, Unsafe Defaults
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (4)

Tool Parameter Abuse

High
Category
Tool Misuse
Confidence
95% confidence
Finding

This example demonstrates a direct destructive API call using user-controlled parameters with no indication of authorization checks, confirmation workflow, or validation guardrails. If an agent maps natural-language input into this operation, an attacker or mistaken user could trigger deletion of records in accessible tables.

Content

Scanner excerpt · SKILL.md (reported line 251)May include surrounding context.

Delete by ID:

text
DELETE /rest/v1/users?id=eq.42

Response 204 No Content (success, no body)

Tool Parameter Abuse

High
Category
Tool Misuse
Confidence
95% confidence
Finding

This variant not only performs deletion but also returns the deleted record representation, which can compound harm by exposing sensitive data during a destructive action. In a prompt-driven integration, this increases both integrity risk from deletion and confidentiality risk from returning deleted row contents to the requester.

Content

Scanner excerpt · SKILL.md (reported line 259)May include surrounding context.

Delete with Prefer header to get deleted row:

text
DELETE /rest/v1/users?id=eq.42
Prefer: return=representation

Response 200 OK:

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The trigger list includes broad phrases such as "Supabase database operation," "Supabase REST API," "Supabase filter query," and "Supabase pagination" without narrowing context or exclusion conditions. These phrases can match ordinary discussion, troubleshooting, or documentation requests rather than a clear intent to invoke this skill.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The skill enables destructive actions like DELETE and bulk update without requiring an explicit confirmation step, dry-run preview, or prominent data-loss warning. In an agentic context, this increases the chance of accidental or prompt-induced destructive operations against a live database.

Content

No source excerpt is available for this finding.

Static analysis

Detected: suspicious.exposed_secret_literal

File appears to expose a hardcoded API secret or token.

Critical
Code
suspicious.exposed_secret_literal
Location
SKILL.md:86