Back to skill

Security audit

Geoskill: Grassland Degradation Monitor

Security checks across malware telemetry and agentic risk

Overview

The skill is mostly a grassland-analysis tool, but its advertised download mode can produce results that appear based on downloaded imagery even though the analysis uses local NDVI input or synthetic data instead.

Review this skill before installing. Use it only if you are comfortable with external geospatial downloads and local caching, and do not rely on bbox/date download results for real management decisions unless the code is fixed to analyze the downloaded imagery or clearly labels synthetic/demo outputs.

SkillSpector

By NVIDIA
Vulnerability Patterns
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • 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
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
Findings (11)

Lp3

Medium
Category
MCP Least Privilege
Confidence
92% confidence
Finding
The skill documentation describes capabilities that read from and write to the local filesystem, but it does not declare those permissions explicitly. Undeclared file access weakens user consent and policy enforcement because an execution environment may permit operations the manifest does not clearly advertise, increasing the risk of unintended data exposure or overwriting local files.

Tp4

High
Category
MCP Tool Poisoning
Confidence
95% confidence
Finding
The documented purpose and the described behavior diverge in several important ways, including remote data downloads, synthetic data generation, and unsupported or unused analytical claims. This mismatch is security-relevant because operators may trust the skill for bounded offline analysis while it actually performs network-dependent actions and potentially produces misleading outputs, undermining both trust and control.

Description-Behavior Mismatch

Medium
Confidence
90% confidence
Finding
The later documentation introduces automatic downloading from Microsoft Planetary Computer, which materially expands the skill's behavior from local analysis to external network interaction. Hidden or poorly disclosed network access can expose user-supplied AOIs, create compliance issues in restricted environments, and invalidate assumptions that the tool only processes local data.

Intent-Code Divergence

Medium
Confidence
88% confidence
Finding
The file presents conflicting interfaces: the main CLI section documents one set of arguments, while the later section describes additional parameters and automatic download behavior. Inconsistent interface documentation can cause users or orchestrators to invoke unintended code paths, including network retrieval and alternate input handling that were not reviewed under the primary interface contract.

Description-Behavior Mismatch

High
Confidence
88% confidence
Finding
The skill advertises and performs Sentinel-2 auto-download, but the fetched image is never consumed by the analysis path, which instead uses `--input-ndvi` or synthetic data. This creates a deceptive workflow where users may trust results as being based on remotely fetched imagery when they are not, enabling silent data-integrity failures and potentially causing incorrect operational decisions.

Unpinned Dependencies

Low
Category
Supply Chain
Content
geoskill-data-fetcher>=0.2.0

# Third-party dependencies used by this skill
numpy
rasterio
scipy
Confidence
97% confidence
Finding
numpy

Unpinned Dependencies

Low
Category
Supply Chain
Content
# Third-party dependencies used by this skill
numpy
rasterio
scipy
Confidence
97% confidence
Finding
rasterio

Unpinned Dependencies

Low
Category
Supply Chain
Content
# Third-party dependencies used by this skill
numpy
rasterio
scipy
Confidence
97% confidence
Finding
scipy

Unpinned Dependencies

Low
Category
Supply Chain
Content
# Requirements for grassland-degradation-monitor
# Shared data-download library (Planetary Computer / NASA POWER / OSM)
geoskill-data-fetcher>=0.2.0

# Third-party dependencies used by this skill
numpy
Confidence
94% confidence
Finding
geoskill-data-fetcher>=0.2.0

Known Vulnerable Dependency: numpy — 10 advisory(ies): CVE-2014-1859 (Numpy arbitrary file write via symlink attack); CVE-2021-41495 (NumPy NULL Pointer Dereference); CVE-2021-33430 (NumPy Buffer Overflow (Disputed)) +7 more

Critical
Category
Supply Chain
Confidence
72% confidence
Finding
numpy

Known Vulnerable Dependency: scipy — 4 advisory(ies): CVE-2013-4251 (SciPy creates insecure temporary directories); CVE-2013-4251 (The scipy.weave component in SciPy before 0.12.1 creates insecure temporary dire); CVE-2023-25399 (A refcounting issue which leads to potential memory leak was discovered in scipy) +1 more

High
Category
Supply Chain
Confidence
80% confidence
Finding
scipy

VirusTotal

VirusTotal findings are pending for this skill version.

View on VirusTotal

Static analysis

No suspicious patterns detected.