T09 · Insecure Skill Coding Practices
- Location
scripts/superlore.mjs:54- Finding
Authentication Credentials Can Be Sent to Server-Controlled Arbitrary URLs
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
The skill is mostly coherent for connecting OpenClaw to Superlore, but its helper can send credentials to server-supplied absolute URLs without validating the destination.
Review before installing. The skill's main behavior is disclosed and useful for Superlore users, but the bundled helper should validate credential-bearing URLs against the expected Superlore HTTPS origin before sending tokens. If used, approve only minimal scopes and know how to revoke or rotate the Superlore agent credential.
scripts/superlore.mjs:54Authentication Credentials Can Be Sent to Server-Controlled Arbitrary URLs
Referenced artifact was not completely inspected
node scripts/superlore.mjs pair --code 123456 --scopes episodes:create,sources:read
Referenced artifact was not completely inspected
node scripts/superlore.mjs pair --code 123456 --scopes episodes:create,sources:read
Referenced artifact was not completely inspected
node scripts/superlore.mjs pair --code 123456 --scopes episodes:create,sources:read
Referenced artifact was not completely inspected
node scripts/superlore.mjs pair --code 123456 --scopes episodes:create,sources:read
Referenced artifact was not completely inspected
node scripts/superlore.mjs pair --code 123456 --scopes episodes:create,sources:read
Referenced artifact was not completely inspected
node scripts/superlore.mjs pair --code 123456 --scopes episodes:create,sources:read
The skill invokes a bundled Node helper that uses network access and environment/token handling, but the manifest does not declare any explicit tool permissions or allowed-tools boundaries. That mismatch weakens least-privilege controls and can let an agent use capabilities users or the platform did not clearly consent to, especially around credential storage and external API access.
The skill is explicitly designed for recurring use and persistent storage of an agent credential at ~/.config/superlore/agent.json or via an environment variable, creating session persistence across runs. Persistent authentication to a private podcast service increases the blast radius of host compromise or cross-skill misuse, particularly because the token grants access to private feeds, uploads, and possibly saved Sources.
---
name: "superlore-personal-podcast"
description: "Pair OpenClaw with Superlore to create or upload private podcast episodes and use saved Sources."
homepage: https://superlore.ai/integrations/openclaw
---
Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.
4. Tell the user the agent has claimed the code and is waiting for approval. The helper polls for approval, stores the one-time credential privately, acknowledges delivery, and performs a side-effect-free connection test.
5. If pairing expires or returns 401, ask for a new code. Never ask the user to paste a raw `slc_` credential.
## Create an episode