Back to skill

Security audit

Story Cover

Security checks across malware telemetry and agentic risk

Overview

This is a disclosed novel-cover generator that sends prompts and optional reference images to a configured image API and saves generated covers locally.

Install only if you are comfortable sending the book title, author name, generated prompt details, and any reference image to the configured image API. Use the default OpenAI endpoint or another endpoint you trust, avoid confidential manuscripts or private images unless that endpoint is acceptable, and set BOOK_DIR deliberately so files are saved where you expect.

SkillSpector

By NVIDIA
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
Findings (3)

External Transmission

Medium
Category
Data Exfiltration
Content
--arg s "$SIZE" \
  '{model:$m, prompt:$p, size:$s}')

curl -fsS --max-time 180 --retry 2 --retry-delay 5 \
  "$BASE_URL/images/generations" \
  -H "Authorization: Bearer $GPT_IMAGE_API_KEY" \
  -H "Content-Type: application/json" \
Confidence
94% confidence
Finding
The skill sends user-provided prompt content and the bearer API key to an externally configurable endpoint via curl. Because BASE_URL can be overridden by GPT_IMAGE_BASE_URL, a malicious or misconfigured environment could redirect requests, exposing sensitive prompts and the authorization token to an untrusted service.

External Transmission

Medium
Category
Data Exfiltration
Content
set -euo pipefail
: "${GPT_IMAGE_API_KEY:?请设置 export GPT_IMAGE_API_KEY=你的key}"
: "${PROMPT:?请先 export PROMPT=Step 2 拼好的完整提示词}"
BASE_URL="${GPT_IMAGE_BASE_URL:-https://api.openai.com/v1}"
MODEL="${GPT_IMAGE_MODEL:-gpt-image-2}"
SIZE="${GPT_IMAGE_SIZE:-1024x1536}"
BOOK_DIR="${BOOK_DIR:?请先 export BOOK_DIR=./covers/<书名>}"
Confidence
91% confidence
Finding
The code initializes BASE_URL from GPT_IMAGE_BASE_URL with a default of the OpenAI endpoint, enabling outbound transmission of prompts and the Authorization header to a caller-controlled destination. In a skill context, allowing arbitrary endpoint override expands the trust boundary and can lead to credential exfiltration or data leakage if an attacker can influence environment configuration.

External Transmission

Medium
Category
Data Exfiltration
Content
set -euo pipefail
: "${GPT_IMAGE_API_KEY:?请设置 export GPT_IMAGE_API_KEY=你的key}"
: "${PROMPT:?请先 export PROMPT=Step 2 拼好的完整提示词}"
BASE_URL="${GPT_IMAGE_BASE_URL:-https://api.openai.com/v1}"
MODEL="${GPT_IMAGE_MODEL:-gpt-image-2}"
SIZE="${GPT_IMAGE_SIZE:-1024x1536}"
BOOK_DIR="${BOOK_DIR:?请先 export BOOK_DIR=./covers/<书名>}"
Confidence
93% confidence
Finding
The image-edit flow also accepts a configurable BASE_URL, then uploads prompts and a local or downloaded reference image to that endpoint. This is more sensitive than text-only generation because it can disclose both user content and image material, along with the bearer token, to an untrusted remote service.

VirusTotal

64/64 vendors flagged this skill as clean.

View on VirusTotal

Static analysis

No suspicious patterns detected.