geomaster
3 findings (1 high, 2 medium), mainly command injection, data exfiltration. Most recent scan 2026-10-21.
Second scanner: NVIDIA SkillSpector
Independent static run, no language model, over the same files as the Cisco scan above. How the two scanners compare across the whole corpus: Two scanners, one corpus.
What this skill does
Supports geospatial research workflows for remote sensing, vector and raster GIS, spatial statistics, terrain and network analysis, and machine learning for Earth observation. Use when processing satellite imagery, aligning coordinate systems and raster grids, accessing STAC catalogs, analyzing geospatial time series, or implementing scientific GIS workflows in Python, R, Julia, JavaScript, C++, Java, Go, or Rust.
- Package
- 18 files, 147 KB
- SKILL.md
- 1212 words, 12+ sections
- Code
- Python (1)
- License
- MIT License
- Compatibility
- Core examples require Python 3.12+ and GeoPandas, Rasterio, NumPy and PyProj. Optional workflows require their named packages, native GIS applications, GPU runtimes, or service credentials and network access.
SKILL.md covers: GeoMaster · Tested scope and installation · In a dedicated environment; install only the workflow's optional dependencies. · For osgeo/native CLI or PDAL, use a separate conda-forge environment: · conda create -n geo-native -c conda-forge python=3.13 gdal pdal python-pdal · Workflow · Local raster recipes · NDVI · This example assumes a VERIFIED four-band B02/B03/B04/B08 stack whose mask · already excludes clouds/shadows, and harmonized DN reflectance = DN * 0.0001. · Terrain · Classification
Findings
HIGH Python code block uses eval/exec Command Injectionbehavioral
Code block in references/machine-learning.md at line 154 contains potentially dangerous Python code.
references/machine-learning.md:154
model.eval()MEDIUM Python code block sends HTTP POST request Data Exfiltrationbehavioral
Code block in references/data-sources.md at line 106 contains potentially dangerous Python code.
references/data-sources.md:106
response = requests.post('https://overpass-api.de/api/interpreter',MEDIUM Python code block executes shell commands Command Injectionbehavioral
Code block in references/gis-software.md at line 262 contains potentially dangerous Python code.
references/gis-software.md:262
subprocess.run(['saga_cmd', 'ta_morphometry', '0',What is in the package
| File | Kind | Size |
|---|---|---|
README.md | doc | 480 B |
SKILL.md | doc | 11 KB |
references/advanced-gis.md | doc | 7.0 KB |
references/big-data.md | doc | 7.6 KB |
references/code-examples.md | doc | 6.9 KB |
references/coordinate-systems.md | doc | 9.3 KB |
references/core-libraries.md | doc | 7.6 KB |
references/data-sources.md | doc | 9.7 KB |
references/gis-software.md | doc | 9.4 KB |
references/industry-applications.md | doc | 6.5 KB |
references/machine-learning.md | doc | 13 KB |
references/programming-languages.md | doc | 12 KB |
references/remote-sensing.md | doc | 9.8 KB |
references/review.md | doc | 6.6 KB |
references/scientific-domains.md | doc | 6.4 KB |
references/specialized-topics.md | doc | 10 KB |
references/troubleshooting.md | doc | 6.4 KB |
scripts/raster_workflows.py | script | 7.8 KB |
External hosts referenced
developers.google.com rasterio.readthedocs.io cds.climate.copernicus.eu gdal.org grass.osgeo.org operations.osmfoundation.org osmnx.readthedocs.io pyproj4.github.io doc.esri.com docs.pytorch.org docs.scipy.org documentation.dataspace.copernicus.eu geostat-framework.readthedocs.io github.com odc-stac.readthedocs.io scikit-learn.org turfjs.org arxiv.org corteva.github.io dask-geopandas.readthedocs.io docs.mapbox.com docs.qgis.org docs.rapids.ai docs.rs docs.xarray.dev earth-search.aws.element84.com element84.com geopandas.org juliaearth.github.io movingpandas.readthedocs.io
Hostnames that appear in the skill's files. Referencing a host is not a finding; compare against the findings above and the skill's stated purpose.
Package contents recorded 2026-10-22 at commit 593377bb0487. The scan above ran against the version current at scan time; the two can differ if the skill has since been updated.
What we checked
- Static analyzer. Pattern rules over SKILL.md and bundled files: known-bad commands, exfiltration URLs, secrets, obfuscation.
- Bytecode analyzer.
- Pipeline analyzer.
- Correlation analyzer.
- Behavioral analyzer. Checks what the skill asks the agent to do against what its description claims it does.
- Trigger analyzer. Looks for instructions that fire on conditions the user did not ask for.
What we did not check
- Runtime behaviour. The skill was not executed; findings come from reading its files.
- Anything fetched at install or run time, including remote scripts, package dependencies, and URLs the skill tells the agent to open.
- Content the analyzers cannot read: images, binaries, and some non-English text.
- Known scanner bypass classes. See the methodology and limitations page.
Sources
- Repository: https://github.com/K-Dense-AI/scientific-agent-skills
- Raw scan result: skills-geomaster-scan.json
- Badge for your README:
 - Request a re-scan