Back to skill

Security audit

Dollar General API - Store Prices, Stock, Deals, Coupons

Security checks for vulnerabilities and agentic risk

Overview

The skill provides disclosed shopping lookups through Scavio, with ordinary privacy, API-credit, and optional software-install considerations.

Scavio receives your searches and supplied location; prefer a ZIP over precise coordinates when sufficient. Protect your API key and account for per-request credit usage. If using MCP, limit enabled platforms to those needed. Optional SDK/MCP package code and the service's data-retention practices were not verified by 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
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Output HandlingUnvalidated Output Injection, Cross-Context Output, Unbounded Output
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (4)

The workflow sends user location and search terms to Scavio without a privacy warning.

Medium
Category
Output Handling
Confidence
92% confidence
Finding

The workflow instructs the agent to submit the user's ZIP code or latitude/longitude and product queries to Scavio's API. Although the service and endpoints are documented, there is no user-facing privacy notice explaining that location and shopping queries are transmitted to a third-party provider.

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 126)May include surrounding context.

Examples

bash
curl -X POST https://api.scavio.dev/api/v1/dollargeneral/stores \
  -H "Authorization: Bearer $SCAVIO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"zip": "75203", "upc": "030772156629"}'

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 126)May include surrounding context.

Examples

bash
curl -X POST https://api.scavio.dev/api/v1/dollargeneral/stores \
  -H "Authorization: Bearer $SCAVIO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"zip": "75203", "upc": "030772156629"}'

External Transmission

Medium
Category
Data Exfiltration
Confidence
70% 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 224)May include surrounding context.

md
HEADERS = {"Authorization": f"Bearer {API_KEY}"}

def dg(endpoint, body):
    r = requests.post(f"{BASE}/api/v1/dollargeneral/{endpoint}", headers=HEADERS, json=body, timeout=120)
    r.raise_for_status()
    return r.json()["data"]