T09 · Insecure Skill Coding Practices
- Location
SKILL.md:27- Finding
Plaintext HTTP Communication with a Public API Endpoint
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
The skill does what it claims, but it sends brand data to a public plaintext HTTP API and uses unsafe command examples that deserve review before installation.
Review this skill before installing it for client or confidential brand work. It may send brand names, domains, metrics requests, and generated analysis to an external service at a default plaintext HTTP endpoint. Prefer configuring a trusted HTTPS GEO_PULSE_BASE_URL, avoid using sensitive unreleased client information, and ensure the agent safely serializes JSON rather than substituting brand names directly into shell commands.
SKILL.md:27Plaintext HTTP Communication with a Public API Endpoint
SKILL.md:64Unsafe Shell and JSON Interpolation of User-Controlled Brand Names
SKILL.md:111Untrusted Remote API Content Is Inserted into Client-Facing Reports
The skill instructs the agent to send user-supplied brand data to an external public endpoint without a clear user-facing disclosure or consent step. This creates a data handling and privacy risk because proprietary client names, domains, or competitive analysis requests may be transmitted off-platform to an untrusted third-party service.
The skill performs direct network access to a public endpoint over plain HTTP, which exposes requests and responses to interception or tampering in transit. Even though the example request fetches a brand list, the broader skill repeatedly transmits brand identifiers and analysis data externally, making the insecure transport and external transmission materially risky in context.
BASE_URL="${GEO_PULSE_BASE_URL:-http://8.148.223.19:8000}"
curl -s "$BASE_URL/api/brands"
Expected structure:
The trigger list for historical analysis includes vague phrases such as “可见度变化”, “visibility trend”, and “历史对比”, which are generic enough to overlap with many unrelated analytics or reporting requests. The section does not provide narrowing context or negative examples to ensure the skill activates only for GEO/brand AI visibility use cases.