T09 · Insecure Skill Coding Practices
- Location
SKILL.md:98- Finding
API Credential Exposed Through URL Query Parameters
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
The skill appears purpose-aligned, but its documented curl fallback can expose the user's Apify API token in URLs.
Install only if you are comfortable using Apify for Twitter/X scraping and can handle the token safely. Prefer the MCP/client helper or Authorization headers, use a narrowly scoped Apify token, avoid copying tokens into URLs, and rotate the token if you already ran the documented query-string curl commands in logged environments.
SKILL.md:98API Credential Exposed Through URL Query Parameters
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": ["[COMPETITOR] hiring", "[COMPETITOR] join our team", "[COMPETITOR] job opening"], "maxItems": 100}'
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": ["[COMPETITOR] hiring", "[COMPETITOR] join our team", "[COMPETITOR] job opening"], "maxItems": 100}'
While fetching the dataset from Apify is expected behavior, this specific example again embeds the APIFY token directly in the URL. That creates a credential exposure risk through command history, logs, browser/tooling telemetry, and process inspection, turning an otherwise normal external request into a real security issue.
Wait for SUCCEEDED. Fetch dataset:
curl "https://api.apify.com/v2/actor-runs/$RUN_ID/dataset/items?token=$APIFY_TOKEN"
The skill instructs users to pass the APIFY token in curl command URLs, which can expose the credential via shell history, process listings, terminal logs, proxies, and saved documentation. This is a genuine credential-handling weakness even though the token is intended for legitimate use, because the guidance normalizes an unsafe transmission pattern.
No suspicious patterns detected.