Back to skill

Security audit

OpenAny

Security checks for vulnerabilities and agentic risk

Overview

The verdict is benign with medium confidence: scanners found no AIG issues and judged the reported external-service workflow risks consistent with the skill's purpose, though coverage was partial.

Before installing, consider that using the skill may send your task and API inputs to OpenAny and the selected provider; avoid including sensitive information unless you are comfortable sharing it. The scan covered the listed components but was marked partial because a referenced local path could not be resolved, so the evidence is incomplete.

Vulnerability Patterns
  • 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
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Output HandlingUnvalidated Output Injection, Cross-Context Output, Unbounded Output
  • 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)

Context Leakage

High
Category
Data Exfiltration
Confidence
85% confidence
Finding

Code or instructions that leak agent conversation context to external services, potentially exposing sensitive user interactions.

Content

Scanner excerpt · SKILL.md (reported line 49)May include surrounding context.

md
1. When the user asks what is available, call `openany_overview` first. Present data APIs by category and AI models by modality, with the counts it returns. Do not invent a model count or an API count.
2. Call `search_apis` with the user's task, or with one filter that search returned. Read the summaries. A result with `kind` = `model` is a model; `kind` = `api` is an API. Do not invent an API name or a model id.
3. Call `get_api` with the `api` value from that search. Read `input_schema`, `api_version`, and the public price. For a model, send chat completions input and use only the price fields `get_api` returned.
4. Tell the user the price `get_api` returned and wait for approval.
5. Call `run_api` only after that approval. Pass the same `api`, the `api_version` from `get_api`, and an `input` object that matches `input_schema`.

The workflow sends the user's task and API inputs to external services without a privacy warning.

Medium
Category
Output Handling
Confidence
96% confidence
Finding

The workflow instructs the agent to submit the user's task to OpenAny through search_apis and send execution inputs through run_api. Although it discloses charges and possible side effects, it does not warn that user content will be transmitted to OpenAny and potentially the selected API provider; approval of the price does not disclose that privacy impact.

Content

No source excerpt is available for this finding.