Back to skill

Security audit

Mindmatch

Security checks for vulnerabilities and agentic risk

Overview

This skill describes sensitive psychological profiling from conversation history and remote matching, but its privacy claims and controls are inconsistent and under-scoped.

Review before installing. This skill should clearly explain what conversation history it reads, what profile data leaves the device, where it is sent, how long it is kept, and should require opt-in plus profile review before upload. Do not use it with private conversation history unless those controls are added or you are comfortable with the remote disclosure.

Vulnerability Patterns
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
  • 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)

T05 · Unauthorized Access and Privilege Escalation

Error
Location
SKILL.md:25
Finding

Unbounded Psychological Profiling and External Disclosure of Conversation-Derived Data

Content
View full analysis

Vulnerability Details

File Location: SKILL.md, lines 25–28
Vulnerability Type: T05: Unauthorized Access and Privilege Escalation
Risk Level: High

Vulnerable Code Snippet:

markdown
## How it works

1. Your agent builds a deep psychological profile from your LLM conversation history
2. The profile is sent to the MindMatch server for matching
3. Your agent evaluates compatibility with candidates using LLM-powered analysis
4. You chat through agents until you decide to exchange contacts

The external transmission described above also conflicts with the assurance at SKILL.md, line 44:

markdown
Built on OpenClaw. Your data stays local. Always.

Technical Analysis

The skill instructs the agent to access the user's LLM conversation history and derive a deep psychological profile. Conversation history can contain credentials, private communications, health information, business data, identifying information, and other sensitive material unrelated to compatibility matching. No restriction limits access to user-selected messages or to information necessary for the immediate task.

The resulting profile is then sent to an unspecified MindMatch server. The skill provides no server endpoint, operator identity, payload definition, authentication mechanism, transport requirements, retention policy, deletion procedure, or informed-consent workflow. It also does not give the user an opportunity to review or redact the profile before transmission.

This breaks least-privilege principles by requesting broad access to historical conversations rather than narrowly scoped, purpose-specific input. Although the text refers to sending a derived profile rather than necessarily sending raw messages, sensitive attributes and information can still be reproduced or inferred in that profile. The claim that data “stays local” is materially inconsistent with the stated external transmission and can prevent users ...[truncated 1621 chars]

Remediation
View remediation

Remediation Suggestions

  1. Require explicit, informed, purpose-specific opt-in before accessing conversation history or transmitting any derived information.
  2. Replace unrestricted history access with user-selected messages or a dedicated questionnaire containing only data necessary for compatibility matching.
  3. Display the complete outbound payload and destination to the user, and require confirmation before each transmission.
  4. Remove direct identifiers, credentials, unrelated conversation content, and unnecessary sensitive attributes before processing or disclosure.
  5. Document the service operator, exact endpoint, data schema, processing purpose, subprocessors, retention period, deletion mechanism, and incident-response contact.
  6. Require authenticated HTTPS transport and appropriate server-side access controls, encryption at rest, audit logging, retention limits, and verifiable deletion.
  7. Provide a local-only profiling and matching mode where feasible.
  8. Correct the statement “Your data stays local. Always.” If any data leaves the local environment, replace it with an accurate and prominent disclosure describing exactly what is transmitted.
  9. Add controls preventing the profile from including secrets or sensitive data from unrelated historical conversations.
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (4)

Missing User Warnings

High
Category
Not specified by scanner
Confidence
97% confidence
Finding

The skill describes building a deep psychological profile from LLM conversation history and sending that profile to a remote server, but does not present a clear warning or consent flow. This is dangerous because inferred psychological attributes are highly sensitive and users may not realize that past conversations are being mined and exported for matching.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

High
Category
Not specified by scanner
Confidence
98% confidence
Finding

The skill text explicitly says the user's deep psychological profile is sent to a remote MindMatch server, yet later claims 'Your data stays local. Always.' This is a materially misleading privacy statement around highly sensitive inferred mental-profile data, which could cause users to disclose information under false assumptions about where it is processed and stored.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

High
Category
Not specified by scanner
Confidence
99% confidence
Finding

The document contains directly conflicting claims: profiles are sent to a MindMatch server, yet data supposedly 'stays local. Always.' In a skill centered on deep psychological profiling, contradictory privacy statements are especially dangerous because they undermine informed consent and can conceal remote handling of extremely sensitive personal inferences.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
88% confidence
Finding

The trigger phrase 'who am I compatible with?' is broad enough to match ordinary conversation and may invoke the skill unexpectedly. Because this skill handles sensitive psychological profiling and potential data transmission, accidental invocation increases the chance of collecting or sending intimate inferred data without sufficiently deliberate user intent.

Content

No source excerpt is available for this finding.