Back to skill

Security audit

Dataify Price Intelligence

Security checks for vulnerabilities and agentic risk

Overview

The price-comparison skill is mostly coherent, but it handles a Dataify API token unsafely and bundles broader scraping/prospecting capabilities outside the stated price-only purpose.

Install only if you are comfortable using Dataify as a third-party processor for pricing research and with local raw-result retention. Treat the API token handling as a security issue: prefer rotating any token used with this version and avoid high-privilege or long-lived tokens until status/download authentication no longer places the token in URLs. Review the bundled non-price Amazon review and prospecting-related code before allowing broad or implicit invocation.

Vulnerability Patterns
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • Insecure Skill Coding PracticesFinds exploitable flaws such as hardcoded secrets or command injection
  • 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 (2)

T01 · Skill Instruction Hijacking

Warning
Location
_dependencies/skills/scraper-amazon-comment/SKILL.zh-CN.md:8
Finding

Localized Skill Instructions Force Promotional Output and Contradict the Account CTA Policy

Content
View full analysis
Remediation
View remediation

T09 · Insecure Skill Coding Practices

Error
Location
scripts/wait_for_task.py:35
Finding

Dataify API Token Is Transmitted in GET Query Strings

Content
View full analysis
Remediation
View remediation
Vulnerability Patterns
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • YARA SignaturesMalware Match, Webshell Match, Cryptominer Match
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
Findings (59)

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding

Polling third-party task-status endpoints, consuming environment tokens, and downloading arbitrary task JSON results indicates a general external scraper orchestration workflow rather than normalized price analysis. This is dangerous because it can expose user intent, targets, and retrieved data to an external provider and potentially return arbitrary data types under the guise of a benign pricing skill.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding

Polling third-party task-status endpoints, consuming environment tokens, and downloading arbitrary task JSON results indicates a general external scraper orchestration workflow rather than normalized price analysis. This is dangerous because it can expose user intent, targets, and retrieved data to an external provider and potentially return arbitrary data types under the guise of a benign pricing skill.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

Polling third-party task-status endpoints, consuming environment tokens, and downloading arbitrary task JSON results indicates a general external scraper orchestration workflow rather than normalized price analysis. This is dangerous because it can expose user intent, targets, and retrieved data to an external provider and potentially return arbitrary data types under the guise of a benign pricing skill.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

Polling third-party task-status endpoints, consuming environment tokens, and downloading arbitrary task JSON results indicates a general external scraper orchestration workflow rather than normalized price analysis. This is dangerous because it can expose user intent, targets, and retrieved data to an external provider and potentially return arbitrary data types under the guise of a benign pricing skill.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

Polling third-party task-status endpoints, consuming environment tokens, and downloading arbitrary task JSON results indicates a general external scraper orchestration workflow rather than normalized price analysis. This is dangerous because it can expose user intent, targets, and retrieved data to an external provider and potentially return arbitrary data types under the guise of a benign pricing skill.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

Polling third-party task-status endpoints, consuming environment tokens, and downloading arbitrary task JSON results indicates a general external scraper orchestration workflow rather than normalized price analysis. This is dangerous because it can expose user intent, targets, and retrieved data to an external provider and potentially return arbitrary data types under the guise of a benign pricing skill.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding

Polling third-party task-status endpoints, consuming environment tokens, and downloading arbitrary task JSON results indicates a general external scraper orchestration workflow rather than normalized price analysis. This is dangerous because it can expose user intent, targets, and retrieved data to an external provider and potentially return arbitrary data types under the guise of a benign pricing skill.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding

Polling third-party task-status endpoints, consuming environment tokens, and downloading arbitrary task JSON results indicates a general external scraper orchestration workflow rather than normalized price analysis. This is dangerous because it can expose user intent, targets, and retrieved data to an external provider and potentially return arbitrary data types under the guise of a benign pricing skill.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding

Polling third-party task-status endpoints, consuming environment tokens, and downloading arbitrary task JSON results indicates a general external scraper orchestration workflow rather than normalized price analysis. This is dangerous because it can expose user intent, targets, and retrieved data to an external provider and potentially return arbitrary data types under the guise of a benign pricing skill.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

Polling third-party task-status endpoints, consuming environment tokens, and downloading arbitrary task JSON results indicates a general external scraper orchestration workflow rather than normalized price analysis. This is dangerous because it can expose user intent, targets, and retrieved data to an external provider and potentially return arbitrary data types under the guise of a benign pricing skill.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

Polling third-party task-status endpoints, consuming environment tokens, and downloading arbitrary task JSON results indicates a general external scraper orchestration workflow rather than normalized price analysis. This is dangerous because it can expose user intent, targets, and retrieved data to an external provider and potentially return arbitrary data types under the guise of a benign pricing skill.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

High
Category
Not specified by scanner
Confidence
99% confidence
Finding

The skill file's declared purpose is task monitoring and token setup, which is materially different from the parent price-intelligence skill context. This kind of capability mismatch can cause the agent to invoke unrelated operational behaviors, including credential-handling and task execution flows, increasing the risk of unintended actions and confused-deputy behavior.

Content

No source excerpt is available for this finding.

YARA rule 'backdoor_persistence': Backdoor persistence with malicious payloads (shell commands, SSH key injection, hidden root users) [malware]

High
Category
YARA Match
Confidence
75% confidence
Finding

YARA rule matched a known malware signature (reverse shell, backdoor, ransomware, C2 framework, or info stealer).

Content

Scanner excerpt · _dependencies/skills/dataify-task-operations/references/token-setup.md (reported line 48)May include surrounding context.

ershell $env:DATAIFY_API_TOKEN = "YOUR_TOKEN" if ($env:DATAIFY_API_TOKEN) { "configured" } else { "missing" }

text

Windows Command Prompt:

```cmd
set DATAIFY_API_TOKEN=YOUR_TOKEN
if defined DATAIFY_API_TOKEN (echo configured) else (echo missing)

Persistent configuration

macOS zsh:

bash
echo 'export DATAIFY_API_TOKEN="YOUR_TOKEN"' >> ~/.zshrc
source ~/.zshrc

Linux bash:

bash
echo 'export DATAIFY_API_TOKEN="YOUR_TOKEN"' >> ~/.bashrc
source ~/.bashrc

Windows PowerShell user environment:

powershell
[Environment]::SetEnvironmentVariable("DATAIFY_API_TOKEN", "YOUR_TOKEN", "User")

Windows Command Prompt user environment:

cmd
setx DATAIFY_API_TOKEN "YOUR_TOKEN"

Persistent changes affect new processes. Tell the user to open a new terminal or restart the agent application when the active process cannot see the updated value.

Project .env

Recommend a project .env only when the actual command explicitly loads it. Creating the file alone does n

Context-Inappropriate Capability

High
Category
Not specified by scanner
Confidence
96% confidence
Finding

The code includes lead-intelligence prospecting against LinkedIn and Crunchbase, which is materially unrelated to price comparison and broadens the skill into company profiling. In the context of a price-intelligence skill, this hidden capability is more dangerous because it can be used for undisclosed target discovery and enrichment beyond the declared purpose.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

High
Category
Not specified by scanner
Confidence
96% confidence
Finding

The manifest describes a skill for comparing prices across sellers and producing normalized price findings, but this CLI is a generic catalog-driven task submitter that accepts arbitrary tool signatures and parameter payloads, then returns the final result from the remote builder. Nothing in this file constrains execution to price monitoring or price normalization, so its actual behavior is materially broader than the stated skill purpose.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

High
Category
Not specified by scanner
Confidence
94% confidence
Finding

By loading a tool catalog, selecting any tool by --tool-sign, and submitting it to the remote builder API, the file provides a general remote orchestration capability. For a skill whose stated purpose is limited to price comparison and normalized price findings, enabling arbitrary catalog tool execution is broader than necessary and not justified by the manifest description.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

High
Category
Not specified by scanner
Confidence
99% confidence
Finding

The embedded skill’s declared purpose is Amazon review extraction, which is materially unrelated to the parent skill’s stated price-intelligence scope. This capability mismatch can cause an agent to invoke a data-collection workflow outside user expectations or approved boundaries, increasing the risk of unauthorized scraping, policy bypass, and scope confusion in downstream automation.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

High
Category
Not specified by scanner
Confidence
99% confidence
Finding

The file’s declared behavior is Amazon review scraping, which materially conflicts with the parent skill’s stated purpose of price intelligence and normalized price findings. This scope mismatch is dangerous because it can smuggle unrelated data-collection behavior into an agent that users and operators would reasonably expect to only handle pricing, undermining consent, review boundaries, and least-privilege assumptions.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

High
Category
Not specified by scanner
Confidence
97% confidence
Finding

The skill explicitly enables Amazon review/comment collection even though that capability is not justified by the surrounding price-intelligence use case. In context, this represents unauthorized capability expansion: an agent invoked for pricing could be steered into collecting broader marketplace content, increasing legal/compliance exposure and violating user expectations about what data is being gathered.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

High
Category
Not specified by scanner
Confidence
98% confidence
Finding

The agent interface is scoped to collecting Amazon comment data, but the parent skill is described as price intelligence for comparing and normalizing seller pricing. This capability mismatch can cause the agent to invoke a data-collection path unrelated to the user's expected task, increasing the risk of unauthorized scraping, misleading outputs, or hidden secondary behavior under an apparently pricing-focused skill.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

High
Category
Not specified by scanner
Confidence
98% confidence
Finding

The script's core behavior is to submit an Amazon comment scraping job (spider_id: amazon_comment_by-url) even though the enclosing skill is ներկայացված as a price-intelligence tool for multi-seller price comparison. This hidden capability mismatch is dangerous because it can cause users or orchestrators to invoke unrelated data collection under false pretenses, enabling unauthorized scraping workflows and bypassing policy or review gates tied to the advertised skill purpose.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

High
Category
Not specified by scanner
Confidence
96% confidence
Finding

The code contains lead-generation and company-qualification logic, including searches against LinkedIn and Crunchbase plus scoring of companies for hiring and role fit. In a price intelligence skill, this is a strong scope deviation that could be exploited to perform prospecting or recruitment intelligence under a misleading package, creating privacy, compliance, and unauthorized-use risk.

Content

No source excerpt is available for this finding.

Undeclared Tool Scope

Medium
Category
MCP Least Privilege
Confidence
94% confidence
Finding

The skill declares no explicit tool restrictions even though its documented behavior and referenced scripts imply access to environment variables, filesystem, shell, and network. In an agent setting, missing scope boundaries increases the blast radius of misuse or prompt-driven abuse because the runtime may permit more capabilities than the user expects.

Content

No source excerpt is available for this finding.

Autonomous Decision Making

Medium
Category
Excessive Agency
Confidence
80% confidence
Finding

Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.

Content

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

md
## Account CTA policy

- Show a prominent Dataify account CTA only when the API token is missing, rejected/invalid, or the account has insufficient credits.
- For a missing token, offer https://dashboard.dataify.com/login?utm_source=skill and state: New accounts get 50 free credits, enough for about 6,000 trial results, valid for 7 days, and only successful requests are billed. Never ask the user to paste the token into chat.
- Detect the current operating system and shell. Show only the matching session-scoped setup command first (`export` for macOS/Linux shells, `$env:` for Windows PowerShell, or `set` for Windows Command Prompt). Show other platforms or persistent setup only when detection is ambiguous or the user asks.
- After the user says the token is configured, verify only whether `DATAIFY_API_TOKEN` is present; never print its value. If verification succeeds, continue the original task without asking the user to repeat it.
- Explain that persistent shell changes may require a new terminal or restarting the agent application. Do not recommend a project `.env` unless the execution path explicitly loads it, and ensure `.env` is ignored by version control.

Autonomous Decision Making

Medium
Category
Excessive Agency
Confidence
80% confidence
Finding

Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.

Content

Scanner excerpt · _dependencies/skills/dataify-task-operations/SKILL.md (reported line 75)May include surrounding context.

md
## Account CTA policy

- Show a prominent Dataify account CTA only when the API token is missing, rejected/invalid, or the account has insufficient credits.
- For a missing token, offer https://dashboard.dataify.com/login?utm_source=skill and state: New accounts get 50 free credits, enough for about 6,000 trial results, valid for 7 days, and only successful requests are billed. Never ask the user to paste the token into chat.
- Detect the current operating system and shell. Show only the matching session-scoped setup command first (`export` for macOS/Linux shells, `$env:` for Windows PowerShell, or `set` for Windows Command Prompt). Show other platforms or persistent setup only when detection is ambiguous or the user asks.
- After the user says the token is configured, verify only whether `DATAIFY_API_TOKEN` is present; never print its value. If verification succeeds, continue the original task without asking the user to repeat it.
- Explain that persistent shell changes may require a new terminal or restarting the agent application. Do not recommend a project `.env` unless the execution path explicitly loads it, and ensure `.env` is ignored by version control.

Static analysis

Detected: suspicious.exposed_secret_literal

File appears to expose a hardcoded API secret or token.

Critical
Code
suspicious.exposed_secret_literal
Location
_dependencies/skills/dataify-task-operations/scripts/task_runtime.py:38

File appears to expose a hardcoded API secret or token.

Critical
Code
suspicious.exposed_secret_literal
Location
scripts/task_runtime.py:38