Back to skill

Security audit

repository-janitor

Security checks for vulnerabilities and agentic risk

Overview

This skill is a disclosed repository-auditing tool whose filesystem, GitHub, persistence, and watchdog behavior are purpose-aligned and opt-in.

Install only if you are comfortable giving the skill access to the specific repositories and optional scheduler/runtime details you configure. Start without --fetch, --github, or --persist for a local dry run, keep the private config and state directory outside repositories and indexed memory, and enable scheduling or supervised actions only with explicit reviewed authorization.

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
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • 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
Findings (1)

Lp3

Medium
Category
MCP Least Privilege
Confidence
96% confidence
Finding
The skill instructs the operator to run a Python audit tool with filesystem, shell, network, environment, and persistent state access, but the skill file does not declare any permissions. This creates a transparency and policy-enforcement gap: consumers may approve or execute the skill without realizing it can read local state, contact remotes/GitHub, inspect process-related data, and write audit artifacts.

Static analysis

Detected: suspicious.dynamic_code_execution

Dynamic code execution detected.

Critical
Code
suspicious.dynamic_code_execution
Location
scripts/test_audit.py:13