Back to skill

Security audit

Longform Writing by Emberspun

Security checks for vulnerabilities and agentic risk

Overview

The skill is mostly coherent for long-form writing, but its setup runs an unpinned npm MCP server with automatic installation while also saying there is no network use.

Review this skill before installing. It appears intended for legitimate long-form writing memory, but you should pin and verify the MCP package version before running it, avoid `npx -y` auto-install behavior where possible, and only store manuscripts you are comfortable keeping as plaintext local files under `~/.longform-memory/`.

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:139
Finding

Unpinned npm Package Is Automatically Downloaded and Executed

Content
View full analysis
Remediation
View remediation
"], "env": { "LONGFORM_MEMORY_PROJECT": "my-novel" } } } } ``` 2. Install the reviewed version separately through a lockfile-controlled workflow and verify its registry integrity hash. Use `--no-install` at runtime so MCP startup fails rather than downloading unexpected code. 3. Prefer a vendored or locally installed executable whose source, version, and checksum have been reviewed and fixed. 4. Remove `-y` from workflows that may install software automatically, or ensure installation occurs only in an explicit, auditable setup step. 5. Correct the documentation to distinguish runtime behavior from installation behavior. Do not claim “no network” unless package installation and execution are technically prevented from using the network. 6. Run the MCP server with least privilege and restrict its filesystem access to the required memory directory. Avoid exposing unrelated credentials or sensitive environment variables to the process. 7. Establish a dependency update process that reviews release changes and integrity information before changing the pinned version. ]]>
Vulnerability Patterns
  • Rogue AgentSelf-Modification, Session Persistence
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (3)

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
91% confidence
Finding

The manifest description says to use the skill when 'writing or continuing a long document' with more chapters than fit in one context window, but it does not define concrete trigger phrases, boundaries, or negative examples. This broad natural-language activation scope could overlap with many ordinary writing tasks and lead to unintended invocation.

Content

No source excerpt is available for this finding.

Session Persistence

Medium
Category
Rogue Agent
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.

Content

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

md
setups, "we'll cover this later".

The reply numbers them `[T1] [T2] ...`. **That numbering is only valid for the
chapter number you passed.** If you list at chapter 12 and then write chapter 13,
list again before referring to a `[T#]` - otherwise "resolve T2" may land on a
different thread than the one you meant, which is worse than not matching at all.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The skill instructs the user to store full chapter prose locally on disk, but the privacy and retention implications are disclosed only later and not as an upfront warning before encouraging use of text. That can cause users to persist sensitive unpublished manuscripts, personal data, or confidential material without informed consent, increasing exposure through local compromise, backups, or shared machines.

Content

No source excerpt is available for this finding.