Back to skill

Security audit

penny-web-search

Security checks across malware telemetry and agentic risk

Overview

This skill is a disclosed paid web-search integration, but it uses broad auto-trigger language and unpinned wallet-capable command examples that users should review carefully before installing.

Install only if you intend agents to make paid external web-search calls. Use a low-balance wallet with spending limits, require confirmation for payments, prefer pinned AgentCash and skill versions, and tighten routing so the skill runs only when you explicitly want live web lookup.

Vulnerability Patterns
  • Insecure DependenciesIntroduces malicious components through unsafe dependency sources
  • 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)

T08 · Insecure Dependencies

Warning
Location
SKILL.md:43
Finding
Execution of Unpinned Third-Party Packages in a Wallet-Enabled Environment## Vulnerability Details **File Location**: `SKILL.md:43-55`; additional occurrences in `SKILL.md:99-105`, `README.md:9`, `README.md:24-31`, and `rules/getting-started.md:8-26` **Vulnerability Type**: Unpinned third-party dependency execution **Risk Level**: Medium ### Vulnerable Code `SKILL.md:43-55`: ```bash npx agentcash@latest check https://pennyregwatch.com/v1/search ``` ```bash npx agentcash@latest fetch https://pennyregwatch.com/v1/search -m POST -b '{"query":"YOUR SEARCH QUERY","limit":5}' ``` ```bash npx agentcash@latest fetch 'https://pennyregwatch.com/v1/search?query=YOUR%20SEARCH%20QUERY&limit=5' ``` `README.md:9`: ```bash npx skills add ayoubsalem-spec/penny-web-search-skill --all --yes ``` `rules/getting-started.md:8-26`: ```bash npx agentcash@latest balance ``` ```bash npx agentcash@latest discover https://pennyregwatch.com ``` ```bash npx agentcash@latest check https://pennyregwatch.com/v1/search ``` ```bash npx agentcash@latest fetch https://pennyregwatch.com/v1/search -m POST -b '{"query":"current AI agent commerce news","limit":5}' ``` ### Technical Analysis The documentation repeatedly instructs users or agents to execute `agentcash@latest` through `npx`. The `latest` tag is mutable and does not identify a specific reviewed release. If the package publisher account, package registry, release process, or a transitive dependency is compromised, these commands can retrieve and execute code that differs from the code reviewed when this skill was published. The installation command also references a repository without an immutable commit identifier and includes `--yes`, which suppresses interactive confirmation. This reduces the opportunity for a user to inspect unexpected installation behavior. The exposure is particularly significant because AgentCash is expected to operate with an x402-capable funded wallet. Although the audited files contain no embedded m ...[truncated 1929 chars]
Remediation
## Remediation Suggestions 1. Replace every `agentcash@latest` reference with a specific, reviewed version, such as `agentcash@X.Y.Z`. 2. Pin the skill installation source to an immutable release, tag with verified provenance, or commit digest rather than a mutable repository reference. 3. Remove `--yes` from security-sensitive installation examples so users can inspect and approve package and permission changes. 4. Verify package provenance, publisher identity, signatures, and registry integrity before execution. 5. Use lockfiles and integrity hashes where the installation mechanism supports them, including pinning relevant transitive dependencies. 6. Run payment tooling in an isolated environment with minimal filesystem access, restricted environment variables, and limited network permissions. 7. Use a dedicated low-balance wallet with explicit per-transaction and cumulative spending limits. 8. Require human confirmation for wallet signatures and payments, especially when package versions or endpoint pricing have changed. 9. Establish a controlled update process in which new package releases are reviewed and tested before the pinned version is changed in the documentation.
Vulnerability Patterns
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (1)

Vague Triggers

Medium
Confidence
92% confidence
Finding
The manifest advertises very broad trigger phrases such as 'research', 'latest', 'recent', and 'current information', which overlap heavily with ordinary user requests. In an agent routing system, this can cause the paid web-search skill to activate too often, leading to unnecessary external data access and unwanted spending; because this skill initiates x402-paid requests, over-triggering is more dangerous than in a purely local skill.

VirusTotal

VirusTotal findings are pending for this skill version.

View on VirusTotal

Static analysis

No suspicious patterns detected.