Back to skill

Security audit

agent-email-inbox

Security checks for vulnerabilities and agentic risk

Overview

The skill is a clear Anima email-inbox setup guide with disclosed external API use and normal third-party CLI caution.

Install only if you want an Anima-managed agent inbox. Give explicit approval before sharing your email address, review any outbound email before it is sent, keep the API key in a proper secret store, and run the optional npm CLI with normal supply-chain caution.

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
SKILL.md:44
Finding

Unverifiable Third-Party npm Package Installation and Execution

Content
View full analysis

Vulnerability Details

File Location: SKILL.md, lines 44–48
Vulnerability Type: Third-party dependency and supply-chain risk
Risk Level: Medium

markdown
CLI alternative (pin 0.9.0):

```bash
npm install @anima-labs/cli@0.9.0 --save-exact
npx anima init
text

### Technical Analysis

The skill instructs the agent to download an external npm package and execute its CLI. Although the package version is pinned to `0.9.0`, the project does not include the package source, a dependency lockfile, cryptographic integrity information, or a reproducible build reference. Consequently, the package's npm lifecycle scripts, transitive dependencies, and runtime behavior cannot be verified from the audited artifact.

Exact version pinning reduces unintended version drift, but it does not protect against a compromised npm registry account, a malicious or compromised release at the pinned version, registry infrastructure compromise, or vulnerable transitive dependencies. The `npm install` command can execute package lifecycle scripts, while `npx anima init` explicitly runs package-controlled code.

No evidence establishes that `@anima-labs/cli@0.9.0` is malicious. The vulnerability is the skill's instruction to install and execute unauditable third-party code without integrity verification or execution isolation.

### Attack Path

1. An agent follows the CLI setup instructions in `SKILL.md`.
2. `npm install` retrieves `@anima-labs/cli@0.9.0` and its transitive dependencies from the configured npm registry.
3. npm executes any enabled lifecycle scripts supplied by those packages.
4. The agent runs `npx anima init`, executing code controlled by the downloaded package.
5. If the pinned package, a transitive dependency, the publisher account, or the registry delivery channel has been compromised, attacker-controlled code runs with the permissions of the invoking user.
6. That code could access files and environment variab
...[truncated 828 chars]
Remediation
View remediation

Remediation Suggestions

  • Provide auditable source code for the CLI or link the pinned release to a reviewed source commit and reproducible build.
  • Commit a lockfile that fixes the complete transitive dependency graph.
  • Verify registry-provided integrity hashes against trusted, independently published checksums or signed release attestations.
  • Document the package's lifecycle scripts, required filesystem permissions, expected network destinations, and data-access requirements.
  • Where compatible with the package, install dependencies with lifecycle scripts disabled, such as npm install --ignore-scripts, and invoke only reviewed entry points.
  • Run the CLI in a restricted container or sandbox with least-privilege filesystem access, a minimal environment, no unrelated credentials, and outbound network access limited to documented Anima endpoints.
  • Avoid running the installation or initialization commands as root or through sudo.
  • Perform dependency vulnerability and provenance checks before installation, and repeat those checks when changing the pinned package version or dependency graph.
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 (3)

External Transmission

Medium
Category
Data Exfiltration
Confidence
60% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

Scanner excerpt · SKILL.md (reported line 29)May include surrounding context.

Get an explicit OK from your human before submitting their email. Never spam or phish.

bash
curl -X POST https://api.useanima.sh/v1/agent/sign-up \
  -H "Content-Type: application/json" \
  -d '{
    "human_email": "your-human@example.com",

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

Scanner excerpt · SKILL.md (reported line 29)May include surrounding context.

Get an explicit OK from your human before submitting their email. Never spam or phish.

bash
curl -X POST https://api.useanima.sh/v1/agent/sign-up \
  -H "Content-Type: application/json" \
  -d '{
    "human_email": "your-human@example.com",

Rp1

Medium
Category
MCP Rug Pull
Confidence
70% confidence
Finding

npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.

Content

No source excerpt is available for this finding.