T08 · Insecure Dependencies
- Location
SKILL.md:65- Finding
Unpinned Third-Party Apify Actors Create a Mutable Supply-Chain Boundary
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
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.
SKILL.md:65Unpinned Third-Party Apify Actors Create a Mutable Supply-Chain Boundary
SKILL.md:97Apify API Token Is Passed Through URL Query Parameters
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.
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.
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.
REST API fallback:
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}'
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.
REST API fallback:
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}'
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.
REST API fallback:
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"]}'
No suspicious patterns detected.