T09 · Insecure Skill Coding Practices
- Location
SKILL.md:166- Finding
Unencrypted Retrieval of External Policy Content
- Content
View full analysis
Vulnerability Details
File Locations:
SKILL.md:166references/policy-2026.md:8references/policy-2026.md:158-159references/primary-school-policy.md:9
Vulnerability Type: External content retrieved over plaintext HTTP
Risk Level: MediumVulnerable Code Snippets
SKILL.md:166directs the agent to use:text web_fetchThe configured external sources use these plaintext URLs:
text http://edu.chengdu.gov.cn http://www.cdzk.comTechnical Analysis
The Skill permits retrieval of current policy information through
web_fetch, while the referenced policy sources are specified with unencrypted HTTP URLs. HTTP does not provide transport confidentiality, integrity, or server authentication.An attacker able to intercept or modify network traffic could replace the returned policy content. Since retrieved content may enter the agent's context, manipulated responses could produce incorrect enrollment recommendations. If the agent fails to isolate remote content from operational instructions, an altered response could also contain indirect prompt-injection text intended to influence subsequent tool calls or responses.
No evidence shows that remote executable code is downloaded or executed. Therefore, this issue is an insecure configuration rather than remote payload execution.
Attack Path
- The Skill determines that current policy information is required.
- The agent invokes
web_fetchusing one of the documented HTTP sources. - An attacker with a network interception position modifies the unencrypted HTTP response.
- The attacker inserts false policy information or instruction-like content into the response.
- The agent processes the modified content as a reference.
- The resulting recommendation may contain incorrect eligibility, school-placement, or application guidance. If remote content is insufficiently isolated, it may also influence later ag ...[truncated 691 chars]
- Remediation
View remediation
Remediation Suggestions
- Replace all plaintext policy URLs with verified HTTPS endpoints.
- Reject redirects from HTTPS to HTTP.
- Restrict
web_fetchto an explicit allowlist of verified government domains. - Validate the final hostname after every redirect to prevent redirect-based allowlist bypass.
- Treat all fetched content as untrusted reference data, never as agent instructions.
- Delimit remote content and instruct the agent not to execute commands or follow behavioral directives found in fetched pages.
- Prefer signed official documents or verify retrieved policy information against an independent official source.
- Record source URL, retrieval date, policy year, and document title in generated guidance.
- If HTTPS is unavailable, do not automatically consume the source; require explicit user confirmation and clearly warn that content integrity cannot be verified.
