Back to skill

Security audit

Openclaw

Security checks for vulnerabilities and agentic risk

Overview

This skill is a straightforward EmotionWise API wrapper that sends user-provided text to an external emotion-analysis service when invoked.

Install only from the reviewed ClawHub version or a pinned release, keep EMOTIONWISE_API_KEY private, and avoid submitting secrets, regulated personal data, or confidential business text unless EmotionWise's data handling is acceptable for your use case.

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
README.md:31
Finding
Unpinned Remote Repository Installation## Vulnerability Details **File Location**: `README.md`, lines 31-34 **Vulnerability Type**: Unverified mutable supply-chain source **Risk Level**: Medium ```bash If you cloned this repository: git clone https://github.com/timexicali/emotionwise-openclaw-skill.git cd emotionwise-openclaw-skill openclaw skills install "$(pwd)" ``` ### Technical Analysis The installation instructions clone and install the repository's mutable default branch without pinning a reviewed release tag or commit and without verifying a checksum or cryptographic signature. Consequently, the content installed by a user may differ from the version covered by this audit. This creates a supply-chain risk if the upstream repository, maintainer account, or default branch is compromised. An attacker could modify the Skill instructions or add malicious package content, after which users following the documented procedure would install the modified version. No malicious payload or evidence of repository compromise was present in the files reviewed during this audit. The vulnerability concerns the unsafe installation process rather than an active malicious implementation. ### Attack Path 1. An attacker compromises the upstream repository, a maintainer account, or another mechanism capable of modifying the default branch. 2. The attacker places malicious Skill instructions or additional executable content on that branch. 3. A user follows the README and clones the repository without specifying a reviewed tag or commit. 4. The user runs `openclaw skills install "$(pwd)"`, installing the attacker-controlled revision. 5. When the Skill is loaded or invoked, the Agent may process the malicious instructions or content with the permissions available to the OpenClaw environment. ### Impact Assessment Successful exploitation could install unaudited Skill content and permit attacker-controlled behavior within the privileges granted to the Skill or hosting A ...[truncated 407 chars]
Remediation
## Remediation Suggestions - Replace default-branch installation instructions with a reviewed, immutable release tag or full commit hash. - Publish a cryptographic checksum or signed release artifact and document how users must verify it before installation. - Prefer installation from a trusted package registry that provides immutable versions and integrity metadata. - Protect the upstream repository with multifactor authentication, branch protection, mandatory review, and signed commits or tags. - Document an explicit version-upgrade process so users do not automatically consume unreviewed upstream changes. - Pin the separately documented global `clawhub` installation to an audited version rather than installing the mutable latest release.
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
Findings (4)

Missing User Warnings

Medium
Confidence
96% confidence
Finding
The README advertises analyzing arbitrary user text and support comments via the EmotionWise API but does not clearly warn that submitted content is transmitted to a third-party service. This can lead users to send sensitive, proprietary, or regulated data off-platform without informed consent, creating privacy, compliance, and data-handling risk.

External Transmission

Medium
Category
Data Exfiltration
Content
- "Summarize emotional tone from these 10 support comments."

## API endpoint used
`POST https://api.emotionwise.ai/api/v1/tools/emotion-detector`

## Notes
- Keep your API key private.
Confidence
84% confidence
Finding
The skill documentation explicitly identifies an external HTTPS API endpoint, confirming that user-provided text leaves the local environment for remote analysis. In the context of emotion and sarcasm analysis, users may submit support tickets, internal communications, or personal messages, so undisclosed or poorly documented transmission increases confidentiality and compliance risk even if the endpoint itself is legitimate.

Missing User Warnings

Medium
Confidence
94% confidence
Finding
The skill sends arbitrary user-provided text to a third-party API for analysis but does not disclose that data leaves the local system or warn about privacy implications. This can expose sensitive prompts, personal data, or proprietary content if users invoke the skill without understanding the external transmission.

External Transmission

Medium
Category
Data Exfiltration
Content
## API

Endpoint:
`POST https://api.emotionwise.ai/api/v1/tools/emotion-detector`

Headers:
- `X-API-Key: $EMOTIONWISE_API_KEY`
Confidence
88% confidence
Finding
The skill is explicitly configured to transmit user input to an external endpoint, which creates a data exposure boundary outside the agent environment. While external API use is expected for this functionality, it becomes dangerous when the skill lacks guardrails, minimization, and transparent notice about what content is sent off-platform.

Static analysis

No suspicious patterns detected.