Back to skill

Security audit

are.na claw

Security checks for vulnerabilities and agentic risk

Overview

The skill describes a normal are.na CLI, but its documented install path relies on an unreviewed, missing executable from a mutable placeholder GitHub source that would receive the user's API token.

Review this before installing. Do not provide an are.na API token to this skill until the actual `arena` source is included or the install source is replaced with a verified, pinned release with checksum or signature validation. If used anyway, inspect the downloaded executable first, restrict token-file permissions, and be prepared to revoke the are.na token.

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:8
Finding
Unpinned and Unverified External CLI Installation Source<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md:34-44`; `README.md:8-13` **Vulnerability Type**: Supply-chain risk from a mutable, unverified source **Risk Level**: Medium The installation instructions direct users to clone a placeholder GitHub repository and install an executable from it without pinning an immutable commit, validating a checksum, or verifying a cryptographic signature. The audited artifact does not contain the referenced `arena` executable. Consequently, the externally retrieved implementation cannot be compared with the documented security claims. ### Complete Code Snippets `SKILL.md:34-44`: ```bash # Clone the repository git clone https://github.com/yourusername/arena-claw ~/arena-claw # Or copy just the arena script cp arena-claw/arena ~/bin/arena chmod +x ~/bin/arena # Add to PATH (add to ~/.zshrc or ~/.bashrc) export PATH="$HOME/bin:$PATH" ``` `README.md:8-13`: ```bash git clone https://github.com/yourusername/arena-claw ~/arena-claw cp ~/arena-claw/arena ~/bin/arena chmod +x ~/bin/arena export PATH="$HOME/bin:$PATH" ``` ### Technical Analysis The URL uses the placeholder namespace `yourusername` and does not identify a verified publisher. The `git clone` command retrieves the repository's current default branch, whose contents can change after this skill has been audited. No tag, commit hash, checksum, release signature, or trusted publisher identity is specified. The downloaded `arena` file is copied into `~/bin`, granted executable permissions, and placed on the user's command search path. Subsequent documented commands pass an are.na API token to this unaudited executable: ```bash arena auth YOUR_API_TOKEN ``` Because `arena` is absent from the supplied project, claims that the program only communicates with `api.are.na`, stores tokens securely, and performs no data exfiltration cannot be validated. This finding does not establish that the external repository is currently malicious; it establishes that t ...[truncated 1611 chars]
Remediation
<![CDATA[ ## Remediation Suggestions 1. Include the complete `arena` implementation in the audited project so its behavior can be reviewed together with the installer. 2. Replace the placeholder URL with the canonical repository of a verified publisher. 3. Install from an immutable signed release or pin an exact commit hash rather than cloning a mutable default branch. 4. Publish a SHA-256 or stronger checksum through a trusted channel and verify it before copying or executing the file. 5. Prefer cryptographically signed release artifacts and fail installation if signature verification fails. 6. Update `install.sh` to verify that the expected source file exists and has the approved digest before installation. 7. Avoid automatically placing an unverified executable on `PATH`. 8. Document the expected network destinations and token-storage behavior, and test the included implementation against those claims. 9. Use restrictive permissions for credential files, such as mode `0600`, in the eventual CLI implementation. ]]>
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Tool MisuseTool Parameter Abuse, Chaining Abuse, Unsafe Defaults
  • Rogue AgentSelf-Modification, Session Persistence
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
Findings (10)

Tool Parameter Abuse

High
Category
Tool Misuse
Content
## Uninstall

```bash
rm -rf ~/arena-claw
rm ~/.arena_token ~/.openclaw/.arena_tokens
```
Confidence
90% confidence
Finding
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).

Tool Parameter Abuse

High
Category
Tool Misuse
Content
## Uninstall

```bash
rm -rf ~/arena-claw
rm ~/.arena_token ~/.openclaw/.arena_tokens
```
Confidence
90% confidence
Finding
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).

Tool Parameter Abuse

High
Category
Tool Misuse
Content
## Uninstall

```bash
rm -rf ~/arena-claw
rm ~/.arena_token ~/.openclaw/.arena_tokens
```
Confidence
90% confidence
Finding
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).

Tool Parameter Abuse

High
Category
Tool Misuse
Content
## Uninstall

```bash
rm -rf ~/arena-claw
rm ~/.arena_token ~/.openclaw/.arena_tokens
```
Confidence
90% confidence
Finding
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).

Tool Parameter Abuse

High
Category
Tool Misuse
Content
```bash
rm -rf ~/arena-claw
rm ~/.arena_token ~/.openclaw/.arena_tokens
```
Confidence
85% confidence
Finding
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).

Tool Parameter Abuse

High
Category
Tool Misuse
Content
```bash
rm -rf ~/arena-claw
rm ~/.arena_token ~/.openclaw/.arena_tokens
```
Confidence
85% confidence
Finding
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).

Lp1

High
Category
MCP Least Privilege
Confidence
75% confidence
Finding
The skill uses 'shell' capability that is not listed in its permissions. This may indicate deceptive intent or missing permission declarations.

Missing User Warnings

Medium
Confidence
92% confidence
Finding
The README explicitly states that API tokens are stored in local files, but it does not warn about file permission hygiene, plaintext credential exposure, backups, shell history leakage, or multi-user system risks. While local token storage is common for CLI tools, documenting plaintext credential locations without security guidance can lead users to leave sensitive credentials exposed.

Session Persistence

Medium
Category
Rogue Agent
Content
cp arena-claw/arena ~/bin/arena
chmod +x ~/bin/arena

# Add to PATH (add to ~/.zshrc or ~/.bashrc)
export PATH="$HOME/bin:$PATH"
```
Confidence
90% 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.

Session Persistence

Medium
Category
Rogue Agent
Content
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
BIN_DIR="$HOME/bin"
mkdir -p "$BIN_DIR"

# Copy the arena script
cp "$SCRIPT_DIR/arena" "$BIN_DIR/arena"
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.

Static analysis

No suspicious patterns detected.