Back to skill

Security audit

Sardis Cards

Security checks for vulnerabilities and agentic risk

Overview

This skill is a legitimate-looking virtual-card integration, but it gives agents broad payment-card powers without enough explicit safeguards.

Install only if you intend to let an agent manage real payment cards through Sardis. Configure a tightly scoped API key, require explicit human confirmation before card creation, reveal, unfreeze, limit increases, bulk freezes, or termination, and ensure full card numbers and CVVs are never printed, logged, stored, or returned to the model.

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
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (25)

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
85% confidence
Finding

This is a user-invocable skill that can issue cards, reveal card data, freeze/unfreeze cards, and terminate cards, but it lacks clear activation boundaries or narrow trigger conditions. In an agent setting, ambiguous invocation criteria increase the chance of accidental or prompt-induced use of high-risk financial operations.

Content

No source excerpt is available for this finding.

External Transmission

Medium
Category
Data Exfiltration
Confidence
60% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

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

md
env:
        - SARDIS_API_KEY
      bins:
        - curl
        - jq
    primaryEnv: SARDIS_API_KEY
    emoji: "💳"

Intent-Code Divergence

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The skill explicitly documents a reveal endpoint that returns full PAN and CVV, which are highly sensitive payment credentials. Even though the text warns not to log or display them, normal agent/tooling behavior may capture command output, traces, or model-visible responses, creating a real risk of credential exposure and unauthorized card use.

Content

No source excerpt is available for this finding.

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

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

md
## API Endpoint Patterns

Base URL: `https://api.sardis.sh/v2`

### Issue Virtual Card

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

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

md
## API Endpoint Patterns

Base URL: `https://api.sardis.sh/v2`

### Issue Virtual Card

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

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

md
## API Endpoint Patterns

Base URL: `https://api.sardis.sh/v2`

### Issue Virtual Card

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

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

md
## API Endpoint Patterns

Base URL: `https://api.sardis.sh/v2`

### Issue Virtual Card

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

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

md
## API Endpoint Patterns

Base URL: `https://api.sardis.sh/v2`

### Issue Virtual Card

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

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

md
## API Endpoint Patterns

Base URL: `https://api.sardis.sh/v2`

### Issue Virtual Card

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

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

md
## API Endpoint Patterns

Base URL: `https://api.sardis.sh/v2`

### Issue Virtual Card

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

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

md
## API Endpoint Patterns

Base URL: `https://api.sardis.sh/v2`

### Issue Virtual Card

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

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

md
## API Endpoint Patterns

Base URL: `https://api.sardis.sh/v2`

### Issue Virtual Card

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

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

md
## API Endpoint Patterns

Base URL: `https://api.sardis.sh/v2`

### Issue Virtual Card

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

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

md
## API Endpoint Patterns

Base URL: `https://api.sardis.sh/v2`

### Issue Virtual Card

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

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

md
## API Endpoint Patterns

Base URL: `https://api.sardis.sh/v2`

### Issue Virtual Card

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

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

md
## API Endpoint Patterns

Base URL: `https://api.sardis.sh/v2`

### Issue Virtual Card

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

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

md
## API Endpoint Patterns

Base URL: `https://api.sardis.sh/v2`

### Issue Virtual Card

External Transmission

Medium
Category
Data Exfiltration
Confidence
91% confidence
Finding

The reveal endpoint transmits full payment credentials from the external service into the local execution and likely agent context. In agent environments, stdout capture, traces, retries, tool logs, or model reflection can expose the returned PAN/CVV, turning this external transmission into a meaningful sensitive-data handling vulnerability.

Content

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

bash
# Get full card details for use (SENSITIVE - log carefully)
curl -X GET https://api.sardis.sh/v2/cards/{card_id}/reveal \
  -H "Authorization: Bearer $SARDIS_API_KEY"

# Response:

External Transmission

Medium
Category
Data Exfiltration
Confidence
76% confidence
Finding

Unfreeze resumes spending capability, but the skill documents the action with no warning, confirmation, or authorization boundaries. In a user-invocable agent context, that makes an external action that restores financial access susceptible to accidental or manipulated execution.

Content

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

bash
# Unfreeze card (resume normal operation)
curl -X POST https://api.sardis.sh/v2/cards/{card_id}/unfreeze \
  -H "Authorization: Bearer $SARDIS_API_KEY"

External Transmission

Medium
Category
Data Exfiltration
Confidence
78% confidence
Finding

Updating spending limits is an external action that can materially increase the card's risk profile, yet the skill provides no confirmation or policy constraints around limit changes. In an agent setting, a prompt injection or mistaken invocation could silently expand purchasing authority.

Content

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

bash
# Modify card spending limits
curl -X PATCH https://api.sardis.sh/v2/cards/{card_id}/limits \
  -H "Authorization: Bearer $SARDIS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

The skill documents irreversible card termination but does not require a user warning, confirmation step, or safety gate. In a user-invocable agent workflow, a mistaken or manipulated invocation could permanently disrupt payments and operational continuity.

Content

No source excerpt is available for this finding.

External Transmission

Medium
Category
Data Exfiltration
Confidence
90% confidence
Finding

This external DELETE operation permanently terminates a card and is explicitly irreversible, but the skill presents it as a straightforward command without mandatory confirmation or safety controls. In a user-invocable financial skill, that creates real risk of destructive misuse or prompt-induced denial of service.

Content

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

bash
# Permanently close card (cannot be reversed)
curl -X DELETE https://api.sardis.sh/v2/cards/{card_id} \
  -H "Authorization: Bearer $SARDIS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{

External Transmission

Medium
Category
Data Exfiltration
Confidence
60% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

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

md
echo "ALERT: Multiple rapid transactions detected"

  # Freeze card immediately
  curl -X POST https://api.sardis.sh/v2/cards/$CARD_ID/freeze \
    -H "Authorization: Bearer $SARDIS_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{

External Transmission

Medium
Category
Data Exfiltration
Confidence
60% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

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

md
echo "ALERT: Multiple rapid transactions detected"

  # Freeze card immediately
  curl -X POST https://api.sardis.sh/v2/cards/$CARD_ID/freeze \
    -H "Authorization: Bearer $SARDIS_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{

Intent-Code Divergence

Low
Category
Not specified by scanner
Confidence
84% confidence
Finding

The skill instructs operators to always log card creation and transactions while also warning never to log full card numbers or CVVs and documenting a sensitive reveal flow. This inconsistency can lead implementers to over-log API responses or transaction data, especially in automated agent environments where raw outputs are commonly captured.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.