Back to skill

Security audit

Phy Api Changelog Gen

Security checks for vulnerabilities and agentic risk

Overview

This is a local OpenAPI changelog helper with no evidence of hidden execution, exfiltration, persistence, or destructive behavior.

Install only if you want an agent to read specified local OpenAPI or Swagger files and generate changelog text. Prefer explicit prompts like /api-changelog, and verify JSON, git comparison, and deprecation features before relying on them in CI.

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
  • Tool MisuseTool Parameter Abuse, Chaining Abuse, Unsafe Defaults
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
Findings (7)

Tool Parameter Abuse

High
Category
Tool Misuse
Confidence
80% confidence
Finding

Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).

Content

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

md
## 🔴 Breaking Changes

### `DELETE /users/{id}` — REMOVED
The endpoint for deleting users has been removed.

**Migration:** Use `PATCH /users/{id}` with `{ "status": "deactivated" }` instead.

Tool Parameter Abuse

High
Category
Tool Misuse
Confidence
80% confidence
Finding

Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).

Content

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

md
## 🔴 Breaking Changes

### `DELETE /users/{id}` — REMOVED
The endpoint for deleting users has been removed.

**Migration:** Use `PATCH /users/{id}` with `{ "status": "deactivated" }` instead.

Tool Parameter Abuse

High
Category
Tool Misuse
Confidence
80% confidence
Finding

Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).

Content

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

md
API Changelog: openapi-v1.yaml → openapi-v2.yaml

🔴 4 BREAKING CHANGES:
  - DELETE /users/{id} removed → use PATCH with status: deactivated
  - GET /orders response: removed field order_total
  - POST /checkout: new required param idempotency_key
  - GET /products/{id}: price type changed number → string

Intent-Code Divergence

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

The manifest explicitly says the skill outputs JSON for CI pipelines, and the usage examples include a --json mode. Yet the code shown stops at building ApiChange objects and includes only a Markdown report example; there is no serializer, CLI flag handling, or JSON emission implementation, creating a clear documentation-to-code contradiction.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The trigger list includes broad phrases like 'breaking changes' and 'what changed in the API', which can cause accidental invocation outside the intended context. In agent environments, over-broad triggers can route unrelated prompts into this skill, increasing the chance of unintended file handling, incorrect outputs, or misuse of local repository content.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The usage documentation advertises inputs like --vs HEAD~1, --vs main, and v2.0.0:openapi.yaml, implying the skill can resolve specs from git history or tagged revisions. However, the only implemented loader reads Path(path).read_text(...) from a filesystem path and there is no code to parse --vs, invoke git, or resolve revision-qualified spec paths, so the documented behavior contradicts the actual implementation shown.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The sample outputs include a deprecations section and counts, suggesting the skill detects deprecated endpoints or fields as part of its changelog generation. In the actual diff code, only endpoint, parameter, response-schema, and security changes are analyzed; there is no inspection of OpenAPI deprecated flags or sunset metadata, so the documentation overstates what the code does.

Content

No source excerpt is available for this finding.