Back to skill

Security audit

finding-data-scientists-on-twitter

Security checks for vulnerabilities and agentic risk

Overview

The skill matches its stated recruiting purpose, but it sends identifiable recruiting searches and profiles to Apify and documents API-token handling and exports in ways users should review first.

Review before installing or using this skill in a recruiting workflow. Use an approved Apify account and least-privilege token, prefer authorization headers over URL token parameters, avoid collecting more profile data than needed, and define retention, access controls, and compliance rules before exporting candidate CSV or JSON files.

Vulnerability Patterns
  • Insecure DependenciesIntroduces malicious components through unsafe dependency sources
  • Insecure Skill Coding PracticesFinds exploitable flaws such as hardcoded secrets or command injection
  • 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
Findings (2)

T08 · Insecure Dependencies

Warning
Location
SKILL.md:65
Finding

Unpinned Third-Party Apify Actors Create a Mutable Supply-Chain Boundary

Content
View full analysis
Remediation
View remediation

T09 · Insecure Skill Coding Practices

Error
Location
SKILL.md:97
Finding

Apify API Token Is Passed Through URL Query Parameters

Content
View full analysis
Remediation
View remediation
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • 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 (5)

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
88% confidence
Finding

The skill requires an APIFY_TOKEN and routes searches and account identifiers to a third-party service, but does not warn users that their queries, target handles, and derived recruiting activity will be transmitted externally. This creates a transparency and data-governance gap, especially because the skill processes identifiable social-media profiles for hiring purposes.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
91% confidence
Finding

The skill explicitly recommends saving scraped Twitter profile and tweet-derived recruiting data to local CSV/JSON files, but provides no guidance on handling personal data, retention, access controls, or lawful use. Because the workflow is about recruiting identifiable individuals from social media, the exported files can contain personal data that is easy to redistribute, mishandle, or retain indefinitely.

Content

No source excerpt is available for this finding.

External Transmission

Medium
Category
Data Exfiltration
Confidence
85% confidence
Finding

This command sends search queries related to candidate discovery to an external API using a bearer-like token in the request URL. While external transmission is core to the skill's function, it still exposes user activity and recruiting targets to a third party, and placing the token in the URL increases the chance of credential leakage through logs, shell history, or monitoring systems.

Content

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

REST API fallback:

bash
curl -X POST \
  "https://api.apify.com/v2/acts/apidojo~tweet-scraper/runs?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"searchTerms": ["data scientist", "ML engineer", "LLM engineer", "machine learning open to work"], "maxItems": 300}'

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

REST API fallback:

bash
curl -X POST \
  "https://api.apify.com/v2/acts/apidojo~tweet-scraper/runs?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"searchTerms": ["data scientist", "ML engineer", "LLM engineer", "machine learning open to work"], "maxItems": 300}'

External Transmission

Medium
Category
Data Exfiltration
Confidence
86% confidence
Finding

This profile-enrichment API call transmits target usernames to an external provider and again includes the APIFY_TOKEN in the URL, creating both privacy and credential-handling concerns. In recruiting context, enriched profile lookups can reveal sourcing targets and accumulate personal data at a third party without any user-facing warning or minimization guidance.

Content

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

REST API fallback:

bash
curl -X POST \
  "https://api.apify.com/v2/acts/apidojo~twitter-user-scraper/runs?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"usernames": ["handle1", "handle2"]}'

Static analysis

No suspicious patterns detected.