T09 · Insecure Skill Coding Practices
- Location
SKILL.md:85- Finding
Arbitrary Python Code Execution Through Unsafe Search Query Interpolation
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This skill is mainly a search-link generator, but its documented command examples can execute unsafe local code from crafted search text and can open third-party search pages without clear consent.
Review before installing. Use this only for non-sensitive searches, avoid secrets or private customer data in queries, and do not run the bash snippets with untrusted query text unless the python3 -c interpolation is fixed. Prefer generating links first and opening them manually.
SKILL.md:85Arbitrary Python Code Execution Through Unsafe Search Query Interpolation
The manifest description says the skill provides '结果聚合展示' and the overview repeatedly describes aggregating results from multiple engines. However, the included Bash and Python code only URL-encodes the query and returns/prints per-engine search links; it does not fetch, parse, or display actual search results. This is a semantic mismatch between the advertised capability and the implemented behavior.
Several sections state that execution supports '创建/查询/导出操作', which suggests broader operational behavior. The actual code snippets only build and print search URLs or structured link data and do not implement creation or export workflows. This is an active contradiction in the documentation about what the skill does.
Earlier capability sections say the tool returns '搜索结果聚合' response data and structured results, implying retrieved or aggregated search outcomes. Later, the FAQ explicitly states '免费版生成搜索链接,需在浏览器中查看结果' and that direct result content requires the pro API. These statements materially conflict about whether the free version returns search results or just links.
The skill instructs opening external search-engine links but does not provide a clear privacy or data-egress warning. User queries may contain sensitive terms, and sending them to multiple third-party search providers expands exposure and tracking risk, especially in enterprise or agent-assisted settings.
Automatically invoking the system browser to open external links creates immediate side effects without a prominent risk prompt. In practice this can exfiltrate sensitive search terms, trigger browser-based tracking, and surprise users who expected local-only processing.
L363-L365 将触发条件描述为“需要SEO优化、关键词分析、排名提升、搜索流量优化时使用”,范围明显大于该技能实际提供的多搜索链接生成与聚合能力。这些表述覆盖大量常见工作场景,但没有限定具体触发短语、上下文约束或负面示例,容易造成非预期调用。
The manifest positions the free edition as supporting 8 major search engines, but the usage example under technical retrieval also includes '代码搜索' and 'Stack Overflow' links beyond the declared eight. That expands the apparent scope of the skill beyond the manifest's stated free-version boundary.
L268-L301 将一个典型使用场景定义为“中英文双语搜索”,并固定中文引擎使用中文关键词、国际引擎使用英文关键词。该描述对语言使用作了预设,但没有说明这是可选模式或允许用户按自身语言偏好配置,存在轻微的语言/locale 策略问题。
The skill includes behavior to automatically open externally constructed URLs in the system browser, which goes beyond passive link generation and can trigger unintended outbound requests. In an agent context, this can leak user queries to third-party search engines and create unsafe side effects without an explicit confirmation step.
Detected: suspicious.generated_source_template_injection