Back to skill

Security audit

Neomano Places (Google Places)

Security checks for vulnerabilities and agentic risk

Overview

This skill is a straightforward Google Places lookup helper that uses an API key and sends place-search queries to Google as expected.

Before installing, use a restricted Google Places API key and remember that place queries and any provided coordinates will be sent to Google and may affect API usage or billing. The artifact shows no hidden persistence or unrelated data access.

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
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • 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)

Undeclared Tool Scope

Medium
Category
MCP Least Privilege
Confidence
92% confidence
Finding

The skill declares environment-variable and network capabilities in metadata but does not define an explicit tool scope such as permissions or allowed-tools. This creates an authorization gap where the runtime may permit broader access than reviewers or policy systems can easily verify, increasing the risk of unintended external requests or misuse of the GOOGLE_PLACES_API_KEY. In this skill's context, network access is expected, but the missing scope still weakens least-privilege controls rather than indicating overtly malicious behavior.

Content

No source excerpt is available for this finding.

Missing User Warnings

Low
Category
Not specified by scanner
Confidence
87% confidence
Finding

This code sends the user's search text and, when provided, latitude/longitude to the Google Places API via request_json, but there is no print/log message or inline warning at the call site indicating that user-provided data is being transmitted to a third-party service. The module docstring mentions the API key requirement, but it does not disclose the privacy-relevant network transmission of query and location data.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.