Nano Banana Pro via cheaper grsai.com

PassAudited by VirusTotal on May 12, 2026.

Overview

Type: OpenClaw Skill Name: nano-banana-pro-grsai Version: 1.0.0 The skill is suspicious due to potential arbitrary file read and write vulnerabilities in `scripts/generate_image.py`. The script directly uses user-provided paths for `--input-image` and `--filename` without sanitization. An attacker could exploit this via prompt injection against the agent to read sensitive local files (which would then be base64 encoded and sent to grsaiapi.com as part of an image-to-image request) or write arbitrary files to the filesystem, posing a significant risk for data exfiltration or persistence.

Findings (0)

Artifact-based informational review of SKILL.md, metadata, install specs, static scan signals, and capability signals. ClawScan does not execute the skill or run runtime probes.

What this means

The API key may authorize account usage and consume provider quota or credits; passing it in chat or command text can expose it to logs or transcripts.

Why it was flagged

The skill requires a provider credential for the advertised API use. This is expected, but users should notice that the registry metadata did not declare a primary credential or env var.

Skill content
The script checks for API key in this order:
1. `--api-key` argument (use if user provided key in chat)
2. `GRSAI_API_KEY` environment variable
Recommendation

Prefer a scoped or rotatable key in `GRSAI_API_KEY` rather than pasting long-lived keys in chat, and rotate the key if it is exposed.

What this means

Private prompts or images provided for editing will leave the local machine and be processed by the external API provider.

Why it was flagged

For image editing, the selected local image is base64-encoded and sent with the prompt to the external grsaiapi.com endpoint.

Skill content
GRSAI_API_URL = "https://grsaiapi.com/v1/draw/nano-banana" ... b64 = base64.b64encode(img_data).decode("utf-8") ... payload["urls"] = urls
Recommendation

Only use this skill with prompts and images you are comfortable sending to grsaiapi.com, and verify the provider’s trust and privacy terms before using sensitive content.

What this means

A mistaken or overly broad output filename could create directories or overwrite an existing local file with image data.

Why it was flagged

The script creates directories and writes the downloaded image to the requested filename. This is expected for an image generator, but the path is not constrained by the script.

Skill content
output_path.parent.mkdir(parents=True, exist_ok=True) ... output_path.write_bytes(resp.read())
Recommendation

Use unique `.png` filenames in the current working directory and avoid pointing output filenames at important or protected files.

What this means

The skill will not run unless `uv` is available, and users need to ensure that runtime is installed from a trusted source.

Why it was flagged

The skill requires the `uv` runtime to execute its script even though the registry metadata lists no required binaries or install spec.

Skill content
Preflight:
  - `command -v uv` (must exist)
Recommendation

Install `uv` only from a trusted source, and the skill metadata should declare this runtime requirement.