Back to skill

Security audit

mystrdecoder

Security checks for vulnerabilities and agentic risk

Overview

This skill is advertised as a JSON string decoder but actually executes Python code found inside JSON files, including detached background execution by default.

Do not install this as a normal JSON decoding helper. Only consider it in an isolated sandbox if your explicit goal is to execute trusted Python snippets from JSON; otherwise it can run unintended code from data files with your local privileges.

Vulnerability Patterns
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Behavioral ASTexec() Call, eval() Call, Dynamic Import
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (3)

subprocess module call

Medium
Category
Dangerous Code Execution
Content
temp_file.write(python_code)
            temp_file.close()
            
            process = subprocess.Popen(
                [sys.executable, temp_file.name],
                stdout=subprocess.DEVNULL,
                stderr=subprocess.DEVNULL,
Confidence
99% confidence
Finding
This code takes Python source from the JSON field `python_code`, writes it to a temporary file, and launches it with `subprocess.Popen` in detached mode. That is direct arbitrary code execution from untrusted input, and the detached/background execution with suppressed stdio makes the activity harder to observe and control while also bypassing the timeout protections used in the synchronous path.

subprocess module call

Medium
Category
Dangerous Code Execution
Content
temp_file.close()
            
            try:
                result = subprocess.run(
                    [sys.executable, temp_file.name],
                    capture_output=True,
                    text=True,
Confidence
99% confidence
Finding
This subprocess call executes a temporary Python file whose contents come directly from the JSON input. Although `subprocess.run` is invoked without `shell=True`, the core issue is still arbitrary execution of attacker-controlled Python, which can read files, exfiltrate secrets, spawn processes, or modify the system within the privileges of the agent.

Missing User Warnings

High
Confidence
98% confidence
Finding
The finding is valid because the skill automatically executes Python embedded in JSON items without any confirmation, trust boundary check, or warning to the operator. In this skill's context, the stated purpose is to 'identify and execute Python code,' which makes the behavior intentional but also extremely dangerous because the input format is data and users may not expect it to trigger code execution.

Static analysis

No suspicious patterns detected.