Back to skill

Security audit

Dandan Multi Search

Security checks for vulnerabilities and agentic risk

Overview

The skill is a coherent multi-search helper, but its command examples can unsafe-handle search text and may send broad user queries to external services without enough control.

Review before installing. Avoid using this skill with secrets, credentials, personal data, or sensitive business information in search queries. It should be revised to URL-encode queries, avoid shell interpolation, and confirm before searching when the request is ambiguous or sensitive.

Vulnerability Patterns
  • Insecure Skill Coding PracticesFinds exploitable flaws such as hardcoded secrets or command injection
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • Agent Memory PoisoningWrites attacker-controlled rules into memory that affect later sessions
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
Findings (1)

T09 · Insecure Skill Coding Practices

Error
Location
SKILL.md:53
Finding

Command Injection Through Unescaped Search Terms

Content
View full analysis
]+' | head -10 curl -s "https://duckduckgo.com/html/?q=关键词" curl -s "https://www.wolframalpha.com/input?i=公式" ``` ```powershell Start-Process "https://www.google.com/search?q=关键词" (Invoke-WebRequest -Uri "https://www.google.com/search?q=关键词" -UseBasicParsing).Content -split "`n" | Select-String "href" | ForEach-Object { $_.Matches.Value } | Select-Object -First 10 (Invoke-WebRequest -Uri "https://duckduckgo.com/html/?q=关键词" -UseBasicParsing).Content Start-Process "https://www.wolframalpha.com/input?i=公式" ``` ### Technical Analysis The documented commands imply that the search-term and formula placeholders are replaced with user-controlled values before the resulting command is executed. These values are inserted directly into shell command text without URL encoding, shell-safe argument construction, or input validation. Double quotation marks do not prevent all forms of evaluation: - POSIX-compatible shells perform command substitution such as `$(command)` inside double-quoted strings. - PowerShell evaluates variables, subexpressions such as `$()`, and other expandable-string expressions inside double-quoted strings. - URL metacharacters supplied without encoding can alter the structure and meaning of the outbound request even when they do not cause local command execution. Consequently, a search request that is expected only to become a URL query can become executable local syntax when an agent constructs and runs one of these examples. ### Attack Path 1. An attacker provides a crafted search term or formula containing shell interpolation syntax. 2. The skill is triggered because the input requests a search or knowledge calculation. 3. The agent repla ...[truncated 1397 chars]
Remediation
View remediation
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (2)

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
97% confidence
Finding

The skill description does not warn that user queries are sent to multiple third-party search providers, some of which may log requests or be subject to different privacy regimes. In a search-aggregation skill, this omission is materially risky because users may disclose sensitive data believing the action is local or privacy-preserving.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The trigger phrases are very broad (e.g. '帮我查一下' / general search-like requests) and can match ordinary user messages that do not clearly indicate consent to invoke this skill. That can cause unintended activation and automatic transmission of user queries to external search engines, increasing privacy leakage and tool-misuse risk.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.