Back to skill

Security audit

finding-affiliate-marketers-on-social-media

Security checks across malware telemetry and agentic risk

Overview

The skill is mostly a straightforward Apify Instagram scraping workflow, but it handles an API token in URL query strings and does not clearly warn users about sending search terms and stored results through Apify.

Review this skill before installing if you use Apify for sensitive brand, competitor, or campaign research. Prefer secure token handling over URL query parameters, understand that searches and scraped datasets go through Apify, and note that the documented workflow appears Instagram-only despite the TikTok claim.

Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (6)

Description-Behavior Mismatch

Medium
Confidence
97% confidence
Finding
The manifest description says the skill finds affiliate marketers on both Instagram and TikTok using Apidojo scrapers. However, the actual instructions and examples throughout the file only invoke `apidojo~instagram-scraper`, use Instagram-specific inputs like `startUrls` for Instagram pages, and never show TikTok scraping behavior.

Intent-Code Divergence

Medium
Confidence
90% confidence
Finding
The skill is described as discovering affiliate marketers for niches, products, brands, and competitor campaigns across social media. But the documented inputs are for generic Instagram scraping primitives like `startUrls`, `until`, and `customMapFunction`, which reflect a raw scraper interface rather than the stated affiliate-discovery behavior, and exclude any TikTok-specific inputs.

Missing User Warnings

Medium
Confidence
90% confidence
Finding
The skill instructs users to send search terms and an API token to an external Apify service without an explicit disclosure that user-supplied data will leave the local environment. This creates a privacy and governance risk, especially if prompts, brand intelligence, or sensitive campaign research terms are submitted under the assumption they remain local.

External Transmission

Medium
Category
Data Exfiltration
Content
**REST API fallback:**
```bash
curl -X POST \
  "https://api.apify.com/v2/acts/apidojo~instagram-scraper/runs?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"searchTerms": ["#affiliate[niche]", "#[niche]code", "use code [NICHE]", "#commissioned"], "maxItems": 100}'
Confidence
92% confidence
Finding
This command transmits user-provided search terms and the APIFY_TOKEN to a third-party endpoint. Including the token in the URL is especially risky because URLs may be logged by shells, proxies, browser history, CI systems, or server access logs, increasing the chance of credential leakage.

External Transmission

Medium
Category
Data Exfiltration
Content
Wait for `SUCCEEDED`. Fetch dataset:
```bash
curl "https://api.apify.com/v2/actor-runs/$RUN_ID/dataset/items?token=$APIFY_TOKEN"
```

### Step 3: Classify Results
Confidence
91% confidence
Finding
Fetching the dataset from Apify again places the APIFY_TOKEN in the URL, with the same credential exposure risks through logs and intermediaries. It also retrieves externally stored scraped results without warning that collected data is being accessed from a third-party system, which may matter for compliance-sensitive use cases.

External Transmission

Medium
Category
Data Exfiltration
Content
Wait for `SUCCEEDED`. Fetch dataset:
```bash
curl "https://api.apify.com/v2/actor-runs/$RUN_ID/dataset/items?token=$APIFY_TOKEN"
```

### Step 3: Classify Results
Confidence
91% confidence
Finding
Fetching the dataset from Apify again places the APIFY_TOKEN in the URL, with the same credential exposure risks through logs and intermediaries. It also retrieves externally stored scraped results without warning that collected data is being accessed from a third-party system, which may matter for compliance-sensitive use cases.

VirusTotal

59/59 vendors flagged this skill as clean.

View on VirusTotal

Static analysis

No suspicious patterns detected.