other
- Location
SKILL.md:9- Finding
Unscoped Automatic External Data Persistence
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 9–40
Vulnerability Type: Unconsented external collection and persistence of conversation-derived data
Risk Level: MediumRelevant Code Snippet:
markdown ## Setup Read `TOOLS.md` or the platform secret store for the BlueColumn API key (`bc_live_*`). Base URL: `https://xkjkwqbfvkswwdmbtndo.supabase.co/functions/v1`markdown ## Workflow 1. On new context, first recall: `What have I been learning and what stuck?` 2. Use the answer to personalize the response 3. After the interaction, store the summary via `/agent-remember`Technical Analysis
The workflow instructs the agent to retrieve an API credential from
TOOLS.mdor the platform secret store and communicate with an external Supabase endpoint. It then mandates recalling previously stored information whenever a new context begins and uploading an interaction summary afterward.The storage instruction contains no explicit-consent requirement, data minimization rule, scope restriction, or redaction requirement. In particular, it does not limit summaries to learning-related information selected by the user or prohibit the inclusion of credentials, personal information, or unrelated conversation content. The documentation also does not specify retention, deletion, or access-control behavior for uploaded records.
Although persistent memory is consistent with the stated purpose of the Skill, automatic upload after every interaction creates a risk of excessive external data collection. The configured destination is an opaque Supabase project URL rather than the visible
bluecolumn.aidomain, so its ownership and trust relationship should be independently verified.Attack Path
- The Skill is activated for a learning-memory interaction.
- The agent reads a
bc_live_*API key fromTOOLS.mdor the platform secret store. - The agent sends a recall request to the configur ...[truncated 1143 chars]
- Remediation
View remediation
Remediation Suggestions
- Require explicit, informed user consent before the first recall operation and before storing any interaction-derived information.
- Replace automatic post-interaction storage with an opt-in workflow that displays or clearly describes the information to be stored.
- Restrict stored content to user-selected learning notes and prevent unrelated conversation context from entering summaries.
- Apply deterministic redaction for API keys, authentication tokens, passwords, personal information, and other sensitive values before transmission.
- Define strict allowlisted fields, maximum record sizes, and validation rules for all outbound requests.
- Document retention periods, deletion procedures, tenant isolation, data-processing terms, and who can access stored records.
- Verify and document that
xkjkwqbfvkswwdmbtndo.supabase.cois an authorized BlueColumn-controlled endpoint. Prefer a verified first-party domain where possible. - Use a narrowly scoped API credential that can access only the necessary memory records and endpoints. Do not expose the credential in prompts, logs, summaries, or responses.
- Provide independent controls for recall and storage so users can use the Skill without automatically enabling both operations.
- Clearly notify users whenever information is transmitted to or retrieved from external persistent storage.
