Back to skill

Security audit

S2 Atmos Perception

Security checks for vulnerabilities and agentic risk

Overview

This is a coherent weather helper that uses location-based web APIs as expected, with privacy disclosure and packaging issues to fix.

Install only if you are comfortable with entered locations being sent to Open-Meteo and NOAA being queried for space-weather data. The publisher should add explicit privacy disclosure, narrow the execution authority where possible, and repair atmos.py before use because it currently will not run as valid Python.

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
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (5)

Lp1

High
Category
MCP Least Privilege
Confidence
95% confidence
Finding

The code performs outbound network access to multiple third-party services, but the finding indicates this capability is not declared in the skill's permissions. Undeclared network access is a real security issue because it bypasses expected consent and review boundaries, and in this skill it transmits user-supplied location data to external APIs.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

Comments and all human-mode output strings are written in Chinese, and the program provides no option for users to select another language or locale. This is a natural-language policy concern because it imposes a specific language without opt-in or documented regional justification.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

User-provided location text is sent to an external geocoding service without any user-facing disclosure or consent flow. Even if the destination APIs are legitimate, location data is sensitive and silent transmission can violate privacy expectations and platform policy.

Content

No source excerpt is available for this finding.

External Transmission

Medium
Category
Data Exfiltration
Confidence
87% confidence
Finding

This is a true external transmission finding because the skill sends derived user location data (latitude/longitude) to a third-party weather API. In context, the transmission appears necessary for functionality and not malicious, but it still creates privacy and dependency risk if not properly disclosed and governed.

Content

Scanner excerpt · atmos.py (reported line 35)May include surrounding context.

python
lon = geo_data["results"][0]["longitude"]

        # 2. 真实气象接口
        weather_url = f"https://api.open-meteo.com/v1/forecast?latitude={lat}&longitude={lon}&current=temperature_2m,relative_humidity_2m,wind_speed_10m"
        w_data = api_get(weather_url)
        current = w_data.get("current", {})
        result["outdoor_temp"] = current.get("temperature_2m", result["outdoor_temp"])

Intent-Code Divergence

Low
Category
Not specified by scanner
Confidence
79% confidence
Finding

The header describes the skill as a purely perceptive component, implying passive sensing/reporting. However, compute_insights produces actionable recommendations such as turning on AC, heating, closing windows, and using an air purifier, which is advisory/intervention-oriented rather than strictly perception-only.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.