Back to skill

Security audit

Aoleme UI

Security checks for vulnerabilities and agentic risk

Overview

This is a coherent UI styling skill with a maintainer-only publishing caution, not evidence of harmful runtime behavior.

Safe to install as a UI styling skill. Maintainers should pin and verify the ClawHub CLI instead of running the documented unpinned npx commands with login or publish credentials in scope.

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
PUBLISHING.md:70
Finding
Unpinned npm CLI Execution in Publishing Workflow## Vulnerability Details **File Location**: `PUBLISHING.md`, lines 70-98 **Vulnerability Type**: Unpinned third-party dependency execution **Risk Level**: Medium The publishing instructions direct maintainers to invoke the `clawhub` npm package through `npx` without specifying a reviewed version, using a committed lockfile, or validating package integrity. **Complete vulnerable code segment:** ```markdown ## 4. Publish Prerequisites ClawHub CLI is the recommended publishing path. On this machine, `npx clawhub` failed under Node `v22.22.0` with a module compatibility error from `mime`. Before publishing, switch to an LTS Node version such as Node 20: ```bash node -v nvm use 20 ``` If you do not use `nvm`, use your preferred Node version manager and make sure `node -v` reports an LTS release before continuing. ## 5. Publish To ClawHub Log in: ```bash npx clawhub login ``` Publish from the repository root: ```bash npx clawhub publish ``` If the CLI supports additional options in your installed version, inspect them with: ```bash npx clawhub publish --help ``` ``` ### Technical Analysis When an npm package is not already available locally, `npx` can download the package resolved by the configured npm registry and immediately execute its code. The commands do not pin `clawhub` to a specific reviewed version and are not protected by a project lockfile or an integrity-verification step. Consequently, the effective executable can change after this project has been reviewed. A compromised package release, maintainer account, registry response, or dependency in the package's transitive dependency graph could result in arbitrary code execution. The exposure is particularly relevant because the documented workflow performs authentication and publication operations. This finding does not establish that the current `clawhub` package is malicious. It identifies an unsafe supply-chain execution pa ...[truncated 1581 chars]
Remediation
## Remediation Suggestions 1. Pin the CLI to a reviewed, explicit version rather than resolving the latest available release: ```bash npx --yes clawhub@<reviewed-version> login npx --yes clawhub@<reviewed-version> publish npx --yes clawhub@<reviewed-version> publish --help ``` 2. Prefer installing the reviewed CLI as a project development dependency and commit the generated lockfile: ```bash npm install --save-dev --save-exact clawhub@<reviewed-version> npm exec -- clawhub login npm exec -- clawhub publish ``` 3. Use deterministic installation in automated publishing environments, such as `npm ci`, and reject unexpected lockfile changes. 4. Verify the package name, expected publisher, registry URL, package provenance, and integrity metadata before installation or execution. 5. Review dependency updates before changing the pinned version. Use dependency scanning and provenance or signature verification where supported. 6. Run publication from an isolated, minimally privileged environment with narrowly scoped and short-lived credentials. Do not invoke the publishing CLI with administrator or root privileges. 7. Protect release credentials from unnecessary process access and rotate them immediately if a package compromise is suspected.
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Rogue AgentSelf-Modification, Session Persistence
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
Findings (6)

Rp1

Medium
Category
MCP Rug Pull
Confidence
92% confidence
Finding
Using `npx clawhub` without pinning an exact package version allows execution of whatever version is currently resolved from the registry at runtime. If the package is updated maliciously, compromised, or a dependency chain is poisoned, a publisher following these instructions could run unreviewed code on their machine during login or publish operations.

Rp1

Medium
Category
MCP Rug Pull
Confidence
92% confidence
Finding
This instruction invokes `npx clawhub publish` without a pinned version, which causes arbitrary package resolution at execution time. Because publishing commands typically access repository contents, credentials, and network APIs, a compromised or unexpected package version could exfiltrate tokens or alter published artifacts.

Rp1

Medium
Category
MCP Rug Pull
Confidence
90% confidence
Finding
Although this is only a help command, `npx clawhub publish --help` still requires downloading and executing the package entrypoint if it is not already installed. An attacker controlling the resolved package version could still execute code on the operator's machine even when the user only intends to inspect CLI options.

Rp1

Medium
Category
MCP Rug Pull
Confidence
92% confidence
Finding
Using `npx clawhub` for authentication without version pinning exposes the operator to supply-chain risk at the moment credentials are handled. If a malicious or trojanized version is resolved, it could capture login tokens, browser auth flows, or other secrets during the authentication process.

Session Persistence

Medium
Category
Rogue Agent
Content
- Design a cyber-xianxia dashboard for a habit tracker using React and Tailwind.
- Restyle this page into a dark neon glassmorphism UI with purple glow and liquid progress bars.
- Build a gamified profile screen with merit points, cultivation levels, and mystical status cards.
- Create an immersive mobile event page with dark glass panels and restrained sci-fi motion.
- Turn this plain admin interface into a game-like dashboard without changing its data model.

## Repository Contents
Confidence
60% confidence
Finding
Skill establishes unauthorized persistence across sessions via cron jobs, startup scripts, or state files. Session persistence allows an attacker to maintain access beyond the current interaction.

Autonomous Decision Making

Medium
Category
Excessive Agency
Content
- do not keep `body { overflow: hidden; }` unless the product is intentionally a full-screen experience
- do not disable text selection globally unless the interface truly needs it
- do not add expensive blur and animation effects to large scrolling lists without checking performance

## Visual Language
Confidence
75% confidence
Finding
Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.

Static analysis

No suspicious patterns detected.