T09 · Insecure Skill Coding Practices
- Location
SKILL.md:95- Finding
Plaintext Storage and Publication Workflow for Identifiable Data Belonging to Minors
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This skill has a coherent workshop purpose, but it handles and publishes children’s identifiable content with insufficient privacy controls.
Review this skill before installing or operating it with real children. Require guardian/operator consent, minimize and pseudonymize stored data, avoid raw prompts in public displays, set deletion and revocation rules, protect gallery/game links, pin deployment dependencies, and replace broad Git staging with reviewed allowlisted files.
SKILL.md:95Plaintext Storage and Publication Workflow for Identifiable Data Belonging to Minors
SKILL.md:357Indiscriminate Repository Staging Can Commit Sensitive or Unintended Files
SKILL.md:358Unpinned npx and CDN Dependencies Permit Supply-Chain Substitution
The skill stores identifiable child session data keyed by telegramUserId, along with names, prompts, generated content, URLs, and timestamps, but presents no user-facing notice, consent, retention policy, or minimization controls. Because the subjects are pediatric patients, the context makes this significantly more sensitive and raises privacy and safeguarding concerns beyond ordinary telemetry.
The voice-input flow sends children’s audio to external transcription services without any visible disclosure that audio leaves the device/session for processing. Audio from child hospital participants may contain names, health context, or other sensitive information, so silent third-party transmission creates a substantial privacy risk.
The skill plans to distribute game URLs, gallery links, and QR codes tied to individual children’s creations without clearly explaining exposure boundaries or access controls. Even if the content seems innocuous, child-associated public links can enable unintended sharing, profiling, or discovery of participation in a sensitive setting.
The workflow explicitly stores free-form child inputs and generated outputs for later reuse, which creates a retention risk because these fields may contain personal details or sensitive disclosures. In a workshop with minors in a medical setting, preserving raw natural-language content is more dangerous than in a generic creative app.
Preserving the child’s first input and first result for later display introduces a disclosure path for whatever the child initially said or generated, including accidental personal or sensitive content. Because the program also uses public or semi-public display moments, this increases the chance of unintended exposure to peers, staff, or guardians.
The skill directs individualized outputs to be broadcast on a large screen and shared via gallery URLs and QR codes, which effectively exposes child-associated content beyond the immediate session. In a pediatric hospital environment, public display and persistent external links materially heighten privacy, dignity, and safeguarding risks.
The skill is framed as a child-facing workshop assistant, but it also contains repository mutation and Cloudflare deployment instructions that extend its authority into source control and public hosting. This materially increases risk because a conversational workflow handling children’s content could also publish files, modify site content, or push unintended data to a public endpoint.
The deployment step invokes npx wrangler without pinning an exact package version, which can cause execution of an unexpected or newly published version during deployment. In a workflow that also holds Cloudflare credentials and performs publishing, a supply-chain compromise or breaking change could lead to unauthorized deployment actions or credential exposure.
No suspicious patterns detected.