Back to skill

Security audit

Pipeworx ashby

Security checks for vulnerabilities and agentic risk

Overview

This Ashby skill is purpose-aligned, but it routes sensitive recruiting data through a third-party MCP gateway without enough scoping or security disclosure.

Install only if your organization has approved the Pipeworx gateway for Ashby data and you can restrict it to least-privilege, read-only access. Treat candidate resumes, contact details, and interview notes as sensitive personal data; avoid retrieving full profiles unless required and confirm how credentials, logs, retention, and revocation are handled.

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:3
Finding

Unverified Third-Party MCP Gateway Handles Sensitive Applicant Data

Content
View full analysis

Vulnerability Details

File Location: SKILL.md, lines 3–32
Vulnerability Type: Unverified external service and supply-chain trust boundary
Risk Level: Medium

The skill describes operations that retrieve sensitive applicant information, including names, email addresses, resumes, interview histories, contact details, and application metadata. These operations are routed through gateway.pipeworx.io, which is a third-party domain rather than a documented official Ashby endpoint.

Relevant code:

markdown
Ashby MCP Pack — wraps the Ashby ATS API

## ashby_list_candidates

Search candidates in your ATS. Returns names, emails, and application metadata. Use ashby_get_candid

## ashby_get_candidate

Get full candidate profile by ID. Returns contact info, resume, interview history, and current appli

## ashby_list_jobs

Search open positions. Filter by status (open, closed, draft, archived). Returns job title, departme

## ashby_get_job

Get full job posting by ID. Returns description, requirements, hiring stage, and applicant count.

## ashby_list_applications

Search job applications across positions. Returns candidate name, applied job, application stage, an

```json
{
  "mcpServers": {
    "ashby": {
      "url": "https://gateway.pipeworx.io/ashby/mcp"
    }
  }
}
text

### Technical Analysis

The configuration establishes a remote MCP server as the implementation behind tools presented as an “Ashby MCP Pack.” The configured host is `gateway.pipeworx.io`, not an official Ashby domain identified by the project documentation. Consequently, sensitive ATS requests and responses may cross an additional, undocumented trust boundary.

The project provides no information about:

- Ownership or verification of the gateway
- Authentication and authorization controls
- Requested ATS permission scopes
- Data retention or processing policies
- Protection of candidate personally ident
...[truncated 2014 chars]
Remediation
View remediation

Remediation Suggestions

  1. Replace the gateway with an official, organization-approved Ashby endpoint or a locally operated and independently audited connector.
  2. Verify and document the ownership, security posture, subprocessors, data residency, retention policy, and incident-response process of gateway.pipeworx.io before use.
  3. Clearly disclose that ATS information is routed through a third-party service and obtain appropriate organizational approval and user consent.
  4. Use read-only, least-privilege ATS credentials restricted to the minimum records and fields required for each operation.
  5. Avoid returning resumes, contact information, interview histories, or email addresses unless explicitly required and authorized.
  6. Ensure credentials are not exposed to the gateway where direct authorization or token exchange with Ashby is possible. Use short-lived, revocable tokens and rotate them regularly.
  7. Apply outbound network allowlisting, TLS certificate validation, access logging, rate limiting, and monitoring for unusual data retrieval.
  8. Treat remote MCP responses as untrusted data. Validate response schemas, constrain output sizes, and prevent returned content from being interpreted as agent instructions.
  9. Document the authentication flow and provide administrators with procedures to revoke access and audit which candidate records were accessed.
Vulnerability Patterns
  • 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
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
Findings (1)

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The skill explicitly exposes access to candidate profiles, including names, emails, contact details, resumes, interview history, and application metadata, which are privacy-sensitive ATS records. Even if the underlying API is legitimate, the skill description provides no warning, consent guidance, role restrictions, or data-minimization expectations, increasing the risk of inappropriate access, over-collection, or accidental disclosure of personal data.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.