Back to skill

Security audit

Prompt Wizard

Security checks for vulnerabilities and agentic risk

Overview

The skill is mostly a disclosed image-prompt helper, but it can replace its prompt library from an unverified GitHub branch and contains unsafe prompt examples that may influence future outputs.

Install only if you are comfortable with a prompt skill that reads a bundled community case library and, when asked to update, replaces that library from an unpinned third-party GitHub branch. Treat case examples as untrusted inspiration, review updates before use, and avoid using the unsafe examples for fraud, non-consensual imagery, forged authenticity, or deceptive screenshots.

Vulnerability Patterns
  • Insecure DependenciesIntroduces malicious components through unsafe dependency sources
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • Agent Memory PoisoningWrites attacker-controlled rules into memory that affect later sessions
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
Findings (1)

T08 · Insecure Dependencies

Warning
Location
scripts/update-prompts.sh:8
Finding

Unverified Mutable Prompt-Library Update

Content
View full analysis
/dev/null)" ]; then IMAGES_MISSING=true fi TMP_DIR=$(mktemp -d) trap 'rm -rf "$TMP_DIR"' EXIT echo "Fetching latest prompt library..." git clone --depth=1 "$UPSTREAM" "$TMP_DIR" 2>&1 || { echo "Error: failed to fetch from upstream. Check your network connection." exit 1 } NEW_VERSION=$(cd "$TMP_DIR" && git rev-parse --short HEAD) if [ "$OLD_VERSION" = "$NEW_VERSION" ] && [ "$IMAGES_MISSING" = false ]; then echo "Prompt library already up to date ($NEW_VERSION)." exit 0 fi if [ "$OLD_VERSION" = "$NEW_VERSION" ] && [ "$IMAGES_MISSING" = true ]; then echo "Prompt library text is current ($NEW_VERSION), but images are missing (light install)." echo "Downloading full library with images..." fi CHANGES=$(cd "$TMP_DIR" && git log -1 --format='%s' 2>/dev/null || echo "") rm -rf "$TMP_DIR/.git" rm -rf "$LIB_DIR" mv "$TMP_DIR" "$LIB_DIR" ``` ### Technical Analysis The update process clones the current default branch of a third-party GitHub repository without pinning it to an approved commit or release and without verifying a cryptographic checksum or signature. The downloaded repository then replaces the existing trusted prompt library wholesale. The downloaded Markdown is not directly executed as shell code. However, the Skill requires the Agent to search and read this content as mandatory grounding for generated prompts. Consequently, the remote repository is an Agent-visible dependency whose effective content can change after the Skill package has been reviewed. ...[truncated 2272 chars]
Remediation
View remediation
Vulnerability Patterns
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • 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 (264)

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding

The declared description says the skill helps users write GPT-Image-2 prompts and browse prompt cases. However, the actual code chunk does not generate prompts or assist with prompt writing at all. Its primary purpose is maintenance: fetching an upstream repository, updating local prompt-library contents and images, deleting/replacing directories, and editing config.json with version information. Those are materially different behaviors from the declared end-user functionality, and they involve undeclared resource access such as network retrieval and filesystem/config updates. This is a clear description-behavior mismatch.

Content

No source excerpt is available for this finding.

Ae1

High
Category
analysis-evasion
Confidence
100% confidence
Finding

Referenced artifact was not completely inspected

Content

Scanner excerpt · SKILL.md (reported line 180)May include surrounding context.

md
he update script. Please run it manually: `cd ~/.claude/skills/prompt-wizard && ./scripts/update-prompts.sh`". Do NOT make up output or report a fake status.

Ae1

High
Category
analysis-evasion
Confidence
100% confidence
Finding

Referenced artifact was not completely inspected

Content

Scanner excerpt · SKILL.md (reported line 309)May include surrounding context.

md
he update script. Please run it manually: `cd ~/.claude/skills/prompt-wizard && ./scripts/update-prompts.sh`". Do NOT make up output or report a fake status.

Ae1

High
Category
analysis-evasion
Confidence
100% confidence
Finding

Referenced artifact was not completely inspected

Content

Scanner excerpt · SKILL.md (reported line 193)May include surrounding context.

md
Display version information. Read `config.json` for library version and `CHANGELOG.md` for skill version (first `## [X.Y.Z]` heading).

Credential Access

High
Category
Privilege Escalation
Confidence
70% confidence
Finding

Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.

Content

Scanner excerpt · data/awesome-gpt-image-2-prompts/cases/ad-creative.md (reported line 165)May include surrounding context.

md
"type": "merchandise collection",
        "position": "bottom right",
        "count": 9,
        "items": ["1 white t-shirt with logo", "1 white mug with character", "4 round pin badges", "1 acrylic keychain", "2 candy packets"]
      }
    ]
  }

Credential Access

High
Category
Privilege Escalation
Confidence
70% confidence
Finding

Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.

Content

Scanner excerpt · data/awesome-gpt-image-2-prompts/cases/ad-creative_de.md (reported line 165)May include surrounding context.

md
"type": "merchandise collection",
        "position": "bottom right",
        "count": 9,
        "items": ["1 white t-shirt with logo", "1 white mug with character", "4 round pin badges", "1 acrylic keychain", "2 candy packets"]
      }
    ]
  }

Credential Access

High
Category
Privilege Escalation
Confidence
70% confidence
Finding

Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.

Content

Scanner excerpt · data/awesome-gpt-image-2-prompts/cases/ad-creative_es.md (reported line 165)May include surrounding context.

md
"type": "merchandise collection",
        "position": "bottom right",
        "count": 9,
        "items": ["1 white t-shirt with logo", "1 white mug with character", "4 round pin badges", "1 acrylic keychain", "2 candy packets"]
      }
    ]
  }

Credential Access

High
Category
Privilege Escalation
Confidence
70% confidence
Finding

Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.

Content

Scanner excerpt · data/awesome-gpt-image-2-prompts/cases/ad-creative_fr.md (reported line 165)May include surrounding context.

md
"type": "merchandise collection",
        "position": "bottom right",
        "count": 9,
        "items": ["1 white t-shirt with logo", "1 white mug with character", "4 round pin badges", "1 acrylic keychain", "2 candy packets"]
      }
    ]
  }

Credential Access

High
Category
Privilege Escalation
Confidence
70% confidence
Finding

Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.

Content

Scanner excerpt · data/awesome-gpt-image-2-prompts/cases/ad-creative_ja.md (reported line 165)May include surrounding context.

md
"type": "merchandise collection",
        "position": "bottom right",
        "count": 9,
        "items": ["1 white t-shirt with logo", "1 white mug with character", "4 round pin badges", "1 acrylic keychain", "2 candy packets"]
      }
    ]
  }

Credential Access

High
Category
Privilege Escalation
Confidence
70% confidence
Finding

Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.

Content

Scanner excerpt · data/awesome-gpt-image-2-prompts/cases/ad-creative_ko.md (reported line 165)May include surrounding context.

md
"type": "merchandise collection",
        "position": "bottom right",
        "count": 9,
        "items": ["1 white t-shirt with logo", "1 white mug with character", "4 round pin badges", "1 acrylic keychain", "2 candy packets"]
      }
    ]
  }

Credential Access

High
Category
Privilege Escalation
Confidence
70% confidence
Finding

Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.

Content

Scanner excerpt · data/awesome-gpt-image-2-prompts/cases/ad-creative_pt.md (reported line 165)May include surrounding context.

md
"type": "merchandise collection",
        "position": "bottom right",
        "count": 9,
        "items": ["1 white t-shirt with logo", "1 white mug with character", "4 round pin badges", "1 acrylic keychain", "2 candy packets"]
      }
    ]
  }

Credential Access

High
Category
Privilege Escalation
Confidence
70% confidence
Finding

Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.

Content

Scanner excerpt · data/awesome-gpt-image-2-prompts/cases/ad-creative_ru.md (reported line 165)May include surrounding context.

md
"type": "merchandise collection",
        "position": "bottom right",
        "count": 9,
        "items": ["1 white t-shirt with logo", "1 white mug with character", "4 round pin badges", "1 acrylic keychain", "2 candy packets"]
      }
    ]
  }

Credential Access

High
Category
Privilege Escalation
Confidence
70% confidence
Finding

Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.

Content

Scanner excerpt · data/awesome-gpt-image-2-prompts/cases/ad-creative_tr.md (reported line 165)May include surrounding context.

md
"type": "merchandise collection",
        "position": "bottom right",
        "count": 9,
        "items": ["1 white t-shirt with logo", "1 white mug with character", "4 round pin badges", "1 acrylic keychain", "2 candy packets"]
      }
    ]
  }

Credential Access

High
Category
Privilege Escalation
Confidence
70% confidence
Finding

Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.

Content

Scanner excerpt · data/awesome-gpt-image-2-prompts/cases/ad-creative_zh-CN.md (reported line 165)May include surrounding context.

md
"type": "merchandise collection",
        "position": "bottom right",
        "count": 9,
        "items": ["1 white t-shirt with logo", "1 white mug with character", "4 round pin badges", "1 acrylic keychain", "2 candy packets"]
      }
    ]
  }

Credential Access

High
Category
Privilege Escalation
Confidence
70% confidence
Finding

Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.

Content

Scanner excerpt · data/awesome-gpt-image-2-prompts/cases/ad-creative_zh-TW.md (reported line 165)May include surrounding context.

md
"type": "merchandise collection",
        "position": "bottom right",
        "count": 9,
        "items": ["1 white t-shirt with logo", "1 white mug with character", "4 round pin badges", "1 acrylic keychain", "2 candy packets"]
      }
    ]
  }

Missing User Warnings

High
Category
Not specified by scanner
Confidence
95% confidence
Finding

The prompt to change the total amount in an image to '244.5 baht' depicts manipulation of an apparent transactional or financial image. The markdown presents this capability without any warning about fraud, tampering, or misuse, which is a missing user warning for a safety-sensitive behavior.

Content

No source excerpt is available for this finding.

Missing User Warnings

High
Category
Not specified by scanner
Confidence
97% confidence
Finding

The subway example explicitly asks for a '偷拍照片' of a woman looking at her phone, which is a privacy-invasive, non-consensual depiction. The markdown includes this example with promotional framing and no warning about consent or privacy harms.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

High
Category
Not specified by scanner
Confidence
92% confidence
Finding

Line L121 says '帮我生成xxxx真迹图片', which asks for an image of an authentic/original work ('真迹'). In context, this is a natural-language request for forged authenticity and can facilitate deception or fraud by presenting synthetic content as a genuine original artifact.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

High
Category
Not specified by scanner
Confidence
95% confidence
Finding

Lines L391-L393 contain natural-language content asking for a '偷拍照片' of a 'beautiful woman' on the subway, which explicitly frames the generated image as a偷拍/candid-surveillance scenario. This is a clear safety-quality concern in the file’s instructional content because it normalizes invasive, non-consensual imagery generation.

Content

No source excerpt is available for this finding.

Missing User Warnings

High
Category
Not specified by scanner
Confidence
96% confidence
Finding

The file includes a prompt for a偷拍照片 ('candid偷拍' / covert photo) of a woman on the subway, which raises clear privacy and consent concerns. The surrounding markdown provides no warning or limitation about non-consensual or privacy-invasive image generation, which is exactly the sort of omission SQP-2 asks to flag for markdown descriptions.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

High
Category
Not specified by scanner
Confidence
95% confidence
Finding

This case asks to generate a 'genuine original' image of an unspecified work, which is a forgery-oriented use case. A skill whose stated purpose is helping write image prompts does not need to showcase or normalize prompts for counterfeit or fraudulent representations.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

High
Category
Not specified by scanner
Confidence
91% confidence
Finding

This example instructs generation of a fabricated Douyin livestream screenshot featuring a woman selling lingerie and stockings, with engagement metrics and gifts. That is a deceptive social-media fabrication use case, not an obvious or necessary part of generating image prompts for legitimate creative work.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

High
Category
Not specified by scanner
Confidence
94% confidence
Finding

The prompt explicitly requests a偷拍照片, i.e. a偷拍/candid偷拍-style photo of a woman on the subway, normalizing non-consensual voyeuristic image generation. That capability is not justified by a benign image-prompt assistance skill focused on high-quality prompt writing.

Content

No source excerpt is available for this finding.

Missing User Warnings

High
Category
Not specified by scanner
Confidence
97% confidence
Finding

The prompt explicitly asks for a偷拍照片 (candid偷拍/covert photo) of a woman on the subway, which raises clear privacy and non-consensual imagery concerns. The file presents this as a normal example and even promotes trying it for free, but gives no warning about consent, privacy, or misuse.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

High
Category
Not specified by scanner
Confidence
91% confidence
Finding

This second Douyin livestream screenshot example repeats the same deceptive and sexualized fabrication pattern, reinforcing a capability for creating fake platform screenshots. Repetition suggests the repository intentionally supports this use case despite it being outside the skill's stated purpose.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.