Back to skill

Security audit

Novel Writer V2

Security checks for vulnerabilities and agentic risk

Overview

This skill is a local novel-writing prompt generator with disclosed file reads and writes, and no evidence of hidden network, credential, or destructive behavior.

Install only in an isolated project environment, pin the Python dependencies before long-term use, and run it against a dedicated novel project folder rather than broad private directories. Be careful with --outline and --output paths because the script relies on user-provided paths and can write wherever the invoking user has permission.

Vulnerability Patterns
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
Findings (3)

Unpinned Dependencies

Low
Category
Supply Chain
Content
rich
PyYAML
Confidence
96% confidence
Finding
The dependency `rich` is unpinned, so future installs may resolve to different versions with changed behavior or newly introduced vulnerabilities. While this is a supply-chain hygiene issue rather than an immediate exploit by itself, it reduces build reproducibility and can expose the skill to unexpected security regressions.

Unpinned Dependencies

Low
Category
Supply Chain
Content
rich
PyYAML
Confidence
99% confidence
Finding
`PyYAML` is unpinned, which is especially risky because this package has a history of security advisories involving unsafe parsing and deserialization behaviors. Leaving it unpinned makes installs non-reproducible and may pull in versions with known or newly introduced vulnerabilities depending on environment and timing.

Known Vulnerable Dependency: PyYAML — 8 advisory(ies): CVE-2019-20477 (Deserialization of Untrusted Data in PyYAML); CVE-2020-1747 (Improper Input Validation in PyYAML); CVE-2020-14343 (Improper Input Validation in PyYAML) +5 more

Critical
Category
Supply Chain
Confidence
98% confidence
Finding
The file declares `PyYAML` without a version constraint, and static analysis indicates multiple known advisories affecting this dependency. In a content-generation skill that likely consumes outlines, profiles, or configuration-like inputs, YAML parsing is plausible; if vulnerable or unsafe loading paths are used, attacker-controlled YAML could trigger deserialization issues, denial of service, or potentially code execution depending on usage.

Static analysis

No suspicious patterns detected.