Back to skill

Security audit

Dx Data Navigator

Security checks for vulnerabilities and agentic risk

Overview

This appears to be a legitimate DX analytics helper, but it can steer agents into broad queries over sensitive employee and survey data without enough privacy or scope guardrails.

Install only if you trust the publisher and the exact source being installed. Use a pinned or internally reviewed install path where possible, and restrict the MCP database credentials to least-privilege read access. Treat employee emails, identity mappings, AI adoption data, and raw survey responses as sensitive; prefer aggregate team-level queries and require a clear business reason before querying individual-level data.

Vulnerability Patterns
  • Insecure DependenciesIntroduces malicious components through unsafe dependency sources
  • 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
Findings (1)

T08 · Insecure Dependencies

Warning
Location
SKILL.md:8
Finding

Unpinned Third-Party Package Execution During Installation

Content
View full analysis

Vulnerability Details

File Location: SKILL.md:8-11
Vulnerability Type: Supply-chain risk caused by mutable, unpinned dependencies
Risk Level: Medium

Vulnerable Code

markdown
## Install

```bash
npx skills add pskoett/pskoett-ai-skills/dx-data-navigator
text

### Technical Analysis

The installation instructions invoke `npx` without pinning the `skills` package to an exact, audited version. Depending on the local environment and package cache, `npx` may download and execute the package currently resolved by the registry.

The referenced Skill source is also identified by a mutable repository path rather than an immutable commit. Consequently, both the installer and the content it retrieves may change after this version of the project has been reviewed. A compromise of the package registry entry, a maintainer account, or the upstream repository could turn the documented installation command into a code-execution or malicious-Skill delivery channel.

No evidence establishes that the current package or repository is malicious. The vulnerability is the absence of version pinning and integrity verification at the trust boundary.

### Attack Path

1. An attacker compromises the registry package, its publisher account, or the mutable upstream Skill repository.
2. The attacker publishes a malicious package version or replaces the upstream Skill content.
3. A user follows the documented installation instructions and runs the unpinned `npx` command.
4. `npx` resolves and downloads the attacker-controlled package version, or the installer retrieves modified upstream content.
5. The package executes with the privileges of the user running the installation.
6. The attacker may execute commands available to that user or install modified Skill instructions that affect later agent sessions.

### Impact Assessment

Successful exploitation may provide arbitrary code execution under the installing user's account. The resulting scope includes files, env
...[truncated 480 chars]
Remediation
View remediation

Remediation Suggestions

  1. Pin the skills CLI to an exact, reviewed version rather than relying on the registry's current resolution:
    bash
    npx --yes skills@<audited-exact-version> add ...
    
  2. Pin the Skill source to an immutable commit digest or signed release instead of a mutable repository path.
  3. Verify package and Skill integrity using trusted checksums, provenance attestations, or cryptographic signatures before execution.
  4. Use a lockfile-backed or internally mirrored installation process with approved package versions.
  5. Run installation with a dedicated, least-privileged account that has no production credentials or unnecessary filesystem access.
  6. In CI environments, disable implicit dependency updates and permit outbound access only to approved registries and repositories.
  7. Re-audit the resolved installer package and exact upstream commit before distributing the installation command.
Vulnerability Patterns
  • 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
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (5)

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The trigger description is very broad and could cause the skill to activate for many generic analytics prompts, increasing the chance that an agent routes unrelated requests into a database-querying workflow. In this skill's context, over-triggering is more dangerous because the skill is designed to query a sensitive DX PostgreSQL data source containing organizational and personnel metrics.

Content

No source excerpt is available for this finding.

Rp1

Medium
Category
MCP Rug Pull
Confidence
70% confidence
Finding

npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
97% confidence
Finding

The documentation includes example queries that retrieve personal data such as user emails and verified_emails, and it does so without any privacy warning, minimization guidance, or access-control caveat. In this skill's context, that is especially risky because the MCP-backed database appears to centralize workforce, GitHub identity, and AI adoption data, enabling straightforward cross-system deanonymization and unnecessary exposure of employee PII.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The documentation includes a sample query that returns user names and email addresses from the dx_users table without any warning about sensitivity, minimization, or access controls. In the context of a DX analytics skill, this is risky because it normalizes retrieval of personally identifiable information and can lead agents or users to expose employee contact data unnecessarily.

Content

No source excerpt is available for this finding.

Missing User Warnings

Low
Category
Not specified by scanner
Confidence
90% confidence
Finding

The documentation exposes schema details for individual survey responses and free-text answers, including user-linked response tables, without warning that this data is likely sensitive and may contain personal, sentiment, or confidential employee information. In the context of a DX data skill, this omission increases the chance that an agent or operator will query raw response-level data instead of aggregated metrics, leading to unnecessary access, over-collection, or privacy violations.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.