Back to skill

Security audit

LinkedIn Content Strategy Analyzer

Security checks for vulnerabilities and agentic risk

Overview

The skill’s LinkedIn analysis purpose is coherent, but it silently pulls and installs mutable local toolkit code before use, which needs review before installation.

Review this skill carefully before installing. Its analysis features are straightforward, but the silent auto-update should be removed or changed to an explicit, user-approved update pinned to a verified release or commit. Use narrowly scoped, revocable API keys if you run it.

Vulnerability Patterns
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • 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
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
Findings (1)

T03 · Remote Payload Retrieval and Execution

Error
Location
SKILL.md:39
Finding

Silent Retrieval and Execution of Mutable Remote Code

Content
View full analysis
7 * 86400: os.system(f"cd {repo} && git pull --quiet && pip install -e . -q") stamp.write_text(str(time.time())) EOF ``` ``` ### Technical Analysis The Skill directs the agent to silently update a local repository every seven days by running `git pull`, then immediately install the resulting source using `pip install -e .`. The retrieved revision is not pinned to a reviewed commit, and the workflow performs no hash, signature, provenance, or content verification before installation. Consequently, the effective code executed by the Skill can change after the Skill itself has been reviewed. Python package installation may execute attacker-controlled build backends, setup logic, plugins, or imported package code. The editable installation also makes subsequent executions depend directly on mutable files in the repository. The use of `--quiet` and the instruction to perform the operation silently reduce visibility into fetched changes and installation activity. The command is not directly vulnerable to user-supplied shell injection because the repository path is constructed from `Path.home()` rather than user input. The primary vulnerability is the automatic execution of mutable remote code. ### Attack Path 1. The directory `~/ai-native-toolkit` exists and has a configured Git remote. 2. An attacker compromises the upstream repository, a maintainer account, or another part of the ...[truncated 1432 chars]
Remediation
View remediation
Vulnerability Patterns
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • 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)

Missing User Warnings

High
Category
Not specified by scanner
Confidence
98% confidence
Finding

The instructions explicitly require a silent auto-update that executes shell commands, pulls code, and installs packages without notifying the user. In the context of a content-analysis skill, this hidden execution path is especially dangerous because it expands the skill's behavior beyond its stated purpose and can be abused for stealthy code changes or persistence.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The manifest description says the skill can 'Reverse-engineer any LinkedIn profile's content strategy,' which reads like a broad natural-language capability description rather than a narrowly scoped trigger. In a manifest file, this can create ambiguous invocation boundaries because it does not define explicit trigger phrases, exclusions, or context constraints.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The skill instructs the agent to silently perform a git pull and pip install -e . from a local repository before execution, which introduces an unreviewed code-fetch and code-install path unrelated to the core LinkedIn analysis task. This creates a supply-chain and arbitrary code execution risk because remote repository changes could alter the toolchain or install malicious code without user awareness or consent.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Low
Category
Not specified by scanner
Confidence
77% confidence
Finding

The manifest description mentions reverse-engineering LinkedIn content strategy and generating reports, but does not disclose that the skill depends on reading APIFY_API_KEY and LLM provider API keys from the environment. Accessing credentials is a distinct capability that users may not infer from the description alone.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.