Back to skill

Security audit

position-size-calculator

Security checks for vulnerabilities and agentic risk

Overview

One documented way of building the calculator can turn crafted market-data text into executable browser code.

Use the bundled --out command, which safely escapes API text, and avoid the documented manual JSON insertion method until it provides equivalent escaping. The injection requires crafted API content; no evidence shows the provider is serving it intentionally. Treat daily-range context cautiously when history is sparse. The review inspected all bundled files and used mocked responses; live API behavior and the separate onboarding skill were not tested.

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
  • 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
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (4)

Incomplete referenced artifact analysis

High
Category
analysis-evasion
Confidence
100% confidence
Finding

Referenced artifact was not completely inspected

Content

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

md
node scripts/prepare_data.mjs NVDA > /tmp/nvda.json

Incomplete referenced artifact analysis

High
Category
analysis-evasion
Confidence
100% confidence
Finding

Referenced artifact was not completely inspected

Content

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

md
node scripts/prepare_data.mjs NVDA --out size_NVDA.html

Skill declares no tool scope ('permissions' or 'allowed-tools') but code capabilities were detected: env, network.

Medium
Category
MCP Least Privilege
Confidence
70% confidence
Finding

Without declared permissions the skill's intent is opaque and cannot be validated.

Content

No source excerpt is available for this finding.

ATR calculation can include an unfinished session despite documentation promising completed sessions only.

Medium
Category
Excessive Agency
Confidence
99% confidence
Finding

When exactly six valid bars remain after filtering, the function retains the newest bar and produces an ATR even if that bar represents an unfinished session. This violates the completed-session guarantee and can distort the daily-range comparison used to contextualize a stop; it does not directly change the calculated share count, but misleading risk context can influence financial decisions.

Content

No source excerpt is available for this finding.