Back to skill

Security audit

Ecm Perchance Image

Security checks for vulnerabilities and agentic risk

Overview

This skill is a disclosed, user-driven Perchance image generator, with the main consideration being that prompts are sent to a third-party website.

Install only if you are comfortable sending image prompts to Perchance.org. Do not enter secrets, private business information, regulated data, or personal details in prompts unless you have reviewed and accepted that third-party processing risk.

Vulnerability Patterns
  • 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
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (5)

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The skill explicitly sends user-supplied prompts to Perchance.org, an external third-party service, but the description and usage text do not clearly warn users that their input leaves the local environment. This can expose sensitive prompts or embedded personal/business data to an external service without informed user consent, making the omission a real privacy and transparency issue.

Content

No source excerpt is available for this finding.

External Transmission

Medium
Category
Data Exfiltration
Confidence
95% confidence
Finding

This duplicate finding points to the same outbound transmission behavior: prompt content is sent to perchance.org over the network. Within a skill ecosystem, such hidden external transmission increases risk because users may unintentionally disclose secrets, personal data, or internal project information.

Content

Scanner excerpt · ecm-perchance-image.py (reported line 111)May include surrounding context.

python
# Send to Perchance
                    try:
                        response = requests.post('https://perchance.org/new-image-gen-by-rs118',
                                                json={'prompt': prompt, 'orientation': orientation})
                        
                        if response.status_code == 200:

External Transmission

Medium
Category
Data Exfiltration
Confidence
95% confidence
Finding

This duplicate finding points to the same outbound transmission behavior: prompt content is sent to perchance.org over the network. Within a skill ecosystem, such hidden external transmission increases risk because users may unintentionally disclose secrets, personal data, or internal project information.

Content

Scanner excerpt · ecm-perchance-image.py (reported line 111)May include surrounding context.

python
# Send to Perchance
                    try:
                        response = requests.post('https://perchance.org/new-image-gen-by-rs118',
                                                json={'prompt': prompt, 'orientation': orientation})
                        
                        if response.status_code == 200:

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

User-supplied prompt text is sent to a third-party service without any explicit disclosure, consent flow, or privacy notice. In a skill context, users may enter sensitive or proprietary text, and silent transmission to an external endpoint can expose confidential data to an untrusted processor.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

Medium
Category
Not specified by scanner
Confidence
97% confidence
Finding

The docstring at L182 describes openclaw_run as opening a terminal-based web browser, which implies a terminal or text-mode interface. In reality, the function creates a QApplication, constructs Qt widgets, shows GUI windows, and runs app.exec_(), so the documented intent directly contradicts the implemented behavior.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.