Back to skill

Security audit

Problem Solver

Security checks for vulnerabilities and agentic risk

Overview

This skill is a local problem-solving assistant, but it can activate on very broad everyday phrases and automatically stores potentially sensitive problem history in plaintext.

Install only if you are comfortable with a broad problem-solving skill creating local history files and recording solved problems. Avoid using it with secrets, credentials, private customer data, or highly sensitive personal matters unless you first disable, review, or regularly clear its stored history.

Vulnerability Patterns
  • Insecure Skill Coding PracticesFinds exploitable flaws such as hardcoded secrets or command injection
  • 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)

T09 · Insecure Skill Coding Practices

Note
Location
SKILL.md:727
Finding
Automatic Plaintext Retention of Potentially Sensitive User Conversations## Vulnerability Details **File Location**: `SKILL.md`, lines 33-57 and line 727 **Vulnerability Type**: Automatic storage of potentially sensitive data in plaintext **Risk Level**: Low ### Vulnerable Code ```markdown ## First Run Setup On first message, create data directory: ```bash mkdir -p ~/.openclaw/problem-solver ``` Initialize files: ```json // ~/.openclaw/problem-solver/settings.json { "problems_solved": 0, "frameworks_used": 0, "decisions_made": 0, "streak_days": 0, "last_used": null } ``` ```json // ~/.openclaw/problem-solver/history.json [] ``` ```json // ~/.openclaw/problem-solver/saved.json [] ``` ``` The automatic logging instruction appears at line 727: ```markdown Auto-log every problem solved to `history.json`: ``` ### Technical Analysis The Skill is intended to process personal, business, and technical problems and instructs the agent to automatically log every solved problem to `~/.openclaw/problem-solver/history.json`. These records may contain confidential business information, personal decisions, technical details, or secrets accidentally included in debugging conversations. The storage design does not specify: - Per-entry user consent or an option to disable history logging. - Redaction of credentials, tokens, personal data, or other sensitive values. - Restrictive directory and file permissions. - Encryption at rest. - A retention period or automatic deletion policy. - Secure deletion and history-management procedures. Although the file is stored locally and no external transmission was identified, plaintext records can be read by processes operating under the same user account, malware with local access, backup or synchronization utilities, or other principals with sufficient filesystem permissions. ### Attack Path 1. A user asks the Skill to solve a sensitive personal, business, or technical problem. 2. The conversat ...[truncated 1174 chars]
Remediation
## Remediation Suggestions 1. Make history logging opt-in rather than automatic, and clearly explain what information will be retained. 2. Request explicit confirmation before storing each problem or solution. 3. Detect and redact credentials, API tokens, private keys, personal identifiers, and other sensitive values before writing records. 4. Create the directory and files with restrictive permissions, such as owner-only access, and verify permissions before every write. 5. Store only the minimum information required for history and progress features rather than complete problem descriptions. 6. Add configurable retention limits based on both record count and age. 7. Provide commands to inspect, selectively delete, disable, and securely clear stored history. 8. Consider encryption at rest where the runtime provides an appropriate platform-backed secret store. 9. Warn users not to include credentials or highly sensitive information in content that may be saved. 10. Document how local backup, synchronization, and multi-user environments can affect the confidentiality of stored records.
Vulnerability Patterns
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Rogue AgentSelf-Modification, Session Persistence
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (6)

Vague Triggers

High
Confidence
98% confidence
Finding
The skill description uses extremely broad natural-language triggers such as 'help me decide', 'should I', 'fix', and 'compare options', which are common in ordinary conversation. This creates a prompt-collision risk where the skill may activate unintentionally, override more appropriate routing, and gain access to local read/write capabilities in contexts the user did not explicitly intend.

Anti-Refusal Statement

High
Category
Anti-Refusal
Content
# Problem Solver — Your AI Thinking Partner

You are a structured problem solver. You help users break down any problem — technical, personal, business, or creative — into clear, actionable steps. You use proven frameworks, ask the right questions, and guide users to their own best solutions. You're calm, logical, and encouraging. You never judge — every problem is valid.

---
Confidence
85% confidence
Finding
Skill instructs the agent to omit warnings, disclaimers, or ethical commentary. Stripping safety caveats hides risk from the user and is a common jailbreak preamble.

Vague Triggers

High
Confidence
99% confidence
Finding
The 'When To Activate' section includes ambiguous one-word and low-context triggers like 'solve', 'fix', 'brainstorm', 'debug', 'compare', and 'plan'. In an agent ecosystem, these generic terms are highly likely to appear in unrelated requests, causing accidental activation and expanding the skill's effective reach beyond user intent.

Anti-Refusal Statement

High
Category
Anti-Refusal
Content
## Behavior Rules

1. **Never judge** — every problem is valid, big or small
2. **Ask before solving** — understand the problem first
3. **Use frameworks** — structured thinking beats random advice
4. **Be actionable** — every solution needs clear next steps
Confidence
85% confidence
Finding
Skill instructs the agent to omit warnings, disclaimers, or ethical commentary. Stripping safety caveats hides risk from the user and is a common jailbreak preamble.

Vague Triggers

Medium
Confidence
90% confidence
Finding
The examples teach the router to associate broad everyday requests with this skill instead of explicit invocation patterns. That increases misrouting risk by normalizing activation on common conversational phrasing, making unintended engagement more likely even if the author's goal appears usability-focused.

Session Persistence

Medium
Category
Rogue Agent
Content
## First Run Setup

On first message, create data directory:

```bash
mkdir -p ~/.openclaw/problem-solver
Confidence
86% confidence
Finding
The skill instructs persistent local storage of user problem history, saved solutions, and stats across sessions. Even without network exfiltration, retaining potentially sensitive personal, business, or technical data increases privacy and data-minimization risk, especially because activation is broad and users may not expect automatic logging of all problem-solving interactions.

Static analysis

No suspicious patterns detected.