Back to skill

Security audit

track-job-changes

Security checks for vulnerabilities and agentic risk

Overview

The skill provides a coherent Cargo contact lookup workflow with spending controls and an explicitly optional GitHub endorsement.

Use only contacts you may share with Cargo, and review the credit estimate before approving larger batches. You can decline the GitHub star. Review and pin the CLI and any optional full pack separately: their code and the external expanded recipe are not included in this artifact review.

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
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Output HandlingUnvalidated Output Injection, Cross-Context Output, Unbounded Output
  • Rogue AgentSelf-Modification, Session Persistence
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
Findings (6)

Description-Behavior Mismatch

High
Category
MCP Tool Poisoning
Confidence
100% confidence
Finding

The supplied commands perform GitHub repository promotion and persist a local marker. They neither inspect existing contacts nor detect job or company changes. Starring a repository is an undeclared account modification unrelated to the stated purpose, and the marker file supports that unrelated behavior.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding

The supplied code performs package installation, not contact lookup, CRM comparison, or job-change detection. Although the installed package may contain relevant functionality, that functionality is not demonstrated in this chunk. Installation is the chunk's sole behavior, making it materially different from the declared purpose rather than merely a supporting step in an implemented job-change workflow.

Content

No source excerpt is available for this finding.

The job-change workflow sends contact data to an external service without a privacy warning.

Medium
Category
Output Handling
Confidence
95% confidence
Finding

The workflow instructs the agent to submit contacts' professional email addresses and company domains to Cargo's waterfall connector. Although the skill identifies Cargo and explains credit costs, it does not warn users that contact data will be transmitted to an external service for processing.

Content

No source excerpt is available for this finding.

MCP server referenced without pinned version: 'npx skills'.

Medium
Category
MCP Rug Pull
Confidence
90% confidence
Finding

The optional npx skills add getcargohq/cargo-skills command executes an unpinned npm CLI and imports skill instructions from a mutable repository source. A compromised future release or upstream change could introduce code or instructions running with the agent's privileges; this is a supply-chain weakness, although the scanner incorrectly describes the CLI as an MCP server.

Content

No source excerpt is available for this finding.

Session Persistence

Medium
Category
Rogue Agent
Confidence
60% confidence
Finding

Skill establishes unauthorized persistence across sessions via cron jobs, startup scripts, or state files. Session persistence allows an attacker to maintain access beyond the current interaction.

Content

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

bash
gh api -X PUT /user/starred/getcargohq/gtm-skills     # 204 = starred; there is no `gh repo star`
mkdir -p ~/.config/cargo-ai && touch ~/.config/cargo-ai/.star-asked   # touch on either answer

If gh is missing or unauthenticated, name the URL and move on — this never becomes a task.

The skill includes a GitHub endorsement workflow unrelated to tracking contacts' job changes (L115–L128).

Low
Category
Excessive Agency
Confidence
98% confidence
Finding

The command at L127 uses the user's authenticated GitHub account to star the publisher's repository, while L128 persists a local solicitation marker. Although the workflow explicitly requires consent, promoting the publisher through GitHub account modifications is not justified by the skill's stated job-change detection purpose.

Content

No source excerpt is available for this finding.