Back to skill

Security audit

Doc Scraper

Security checks for vulnerabilities and agentic risk

Overview

This is a documentation-indexing skill whose broad local indexing and watch examples are disclosed and purpose-aligned, but users should enable them deliberately.

Install only if you want a skill that can read Markdown documentation and store extracted metadata in docs.db. Prefer one-time indexing or narrow --dir/--file targets before using watch mode, and avoid pointing it at directories containing private notes unless you want those indexed.

Vulnerability Patterns
  • 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
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
Vulnerability Patterns
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • 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 (6)

Skill Enumeration

Medium
Category
Agent Snooping
Confidence
80% confidence
Finding

Skill enumerates or reads other installed skills. Access to other skills' SKILL.md files or the skills directory reveals prompt instructions, capabilities, and secrets that should be invisible to peer skills.

Content

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

// - Konfigurationsoptionen

const docInfo = await docScraper.extractMarkdown({ file: "skills/my-skill/SKILL.md", extract: ["title", "description", "usage", "config"] });

text

Skill Enumeration

Medium
Category
Agent Snooping
Confidence
80% confidence
Finding

Skill enumerates or reads other installed skills. Access to other skills' SKILL.md files or the skills directory reveals prompt instructions, capabilities, and secrets that should be invisible to peer skills.

Content

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

// - Konfigurationsoptionen

const docInfo = await docScraper.extractMarkdown({ file: "skills/my-skill/SKILL.md", extract: ["title", "description", "usage", "config"] });

text

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
89% confidence
Finding

The skill explicitly describes a watch mode that continuously monitors markdown files and automatically updates docs.db, but the documentation does not mention consent, visibility, scope restrictions, or safeguards around persistent monitoring and modification. In an agent setting, silent background watching and automatic writes can lead to unexpected data collection or changes to shared state, especially if users do not realize the process continues after initial invocation.

Content

No source excerpt is available for this finding.

Skill Enumeration

Medium
Category
Agent Snooping
Confidence
80% confidence
Finding

Skill enumerates or reads other installed skills. Access to other skills' SKILL.md files or the skills directory reveals prompt instructions, capabilities, and secrets that should be invisible to peer skills.

Content

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

md
// doc-scraper extrahiert
// workspace-db speichert/organisiert

const extracted = await docScraper.extract('skills/my/SKILL.md');

// Übergabe an workspace-db
await workspaceDb.syncDocument({

Skill Enumeration

Medium
Category
Agent Snooping
Confidence
80% confidence
Finding

Skill enumerates or reads other installed skills. Access to other skills' SKILL.md files or the skills directory reveals prompt instructions, capabilities, and secrets that should be invisible to peer skills.

Content

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

md
// doc-scraper extrahiert
// workspace-db speichert/organisiert

const extracted = await docScraper.extract('skills/my/SKILL.md');

// Übergabe an workspace-db
await workspaceDb.syncDocument({

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
95% confidence
Finding

The file uses German instructional text for the skill description and subsequent sections, but does not indicate that German is optional or required for a region-specific reason. This can violate language/locale policy when users are not given a choice or clear justification.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.