Back to skill

Security audit

Geoskill: Cropland Abandonment Detection

Security checks across malware telemetry and agentic risk

Overview

This skill performs the advertised cropland analysis, but its optional download mode is under-documented and can feed non-NDVI imagery into NDVI-based results.

Review this before installing if you expect local-only processing or scientifically reliable auto-download results. Prefer using vetted local NDVI stacks, set an explicit output and cache directory, and avoid sending sensitive AOIs or date ranges through the download mode unless that data disclosure is acceptable.

SkillSpector

By NVIDIA
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • 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
Findings (11)

Lp3

Medium
Category
MCP Least Privilege
Confidence
75% confidence
Finding
The skill documentation describes writing multiple output files, but there is no declared permissions model to make that file-write capability explicit. Undeclared write behavior can surprise users and downstream systems, especially if integrated into agents that assume least privilege and rely on declared capabilities for policy enforcement.

Tp4

High
Category
MCP Tool Poisoning
Confidence
92% confidence
Finding
The documented behavior materially exceeds the stated purpose by adding automatic external data acquisition and synthetic data generation that are not disclosed in the top-level description. This mismatch is dangerous because users or orchestrators may authorize a local analytical skill while it actually performs network access and different processing steps, undermining trust boundaries and security review.

Intent-Code Divergence

Medium
Confidence
89% confidence
Finding
The documentation introduces bbox/date-range-driven automatic downloads, but the main CLI and parameter tables only describe local-file processing. Hidden or inconsistently documented inputs make it easier for agents and users to invoke unintended network behavior, causing unreviewed data transfer and breaking assumptions about how the skill operates.

Description-Behavior Mismatch

Medium
Confidence
86% confidence
Finding
The manifest-level description frames this as NDVI time-series abandonment detection, but the later documentation reveals remote acquisition capabilities that are not disclosed up front. In agentic environments, undisclosed network behavior is security-relevant because routing, approval, and sandboxing decisions are often based on the declared skill purpose.

Description-Behavior Mismatch

High
Confidence
98% confidence
Finding
The auto-download path claims to build an NDVI time series, but it downloads generic assets such as visual previews, thumbnails, and individual bands, then stacks the first raster band from each file as if each layer were annual NDVI. This can silently produce scientifically invalid abandonment outputs while presenting them as legitimate analytical results, which is dangerous in a geospatial decision-support skill because users may act on false field-level conclusions.

Intent-Code Divergence

Medium
Confidence
89% confidence
Finding
This function downloads a single Sentinel-2 scene but then assigns that path to args.ndvi_stack, repurposing a normal image as multi-year NDVI input. Even if not currently used in the main path, this creates a hazardous code path and misleading interface contract that can cause downstream analysis to run on semantically wrong data.

Missing User Warnings

Medium
Confidence
90% confidence
Finding
The skill states that it will automatically download data from a remote service when given bbox/date-range inputs, but provides no warning about network access or what data is transmitted. This can expose sensitive AOIs, temporal interests, or workflow metadata to third parties without clear user awareness, which is especially risky in regulated or privacy-sensitive geospatial contexts.

Unpinned Dependencies

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

# Third-party dependencies used by this skill
numpy
rasterio
shapely
Confidence
94% confidence
Finding
numpy

Unpinned Dependencies

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

Unpinned Dependencies

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

Unpinned Dependencies

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

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

VirusTotal

VirusTotal findings are pending for this skill version.

View on VirusTotal

Static analysis

No suspicious patterns detected.