Back to skill

Security audit

scavio-indeed

Security checks across malware telemetry and agentic risk

Overview

This skill is a coherent Scavio/Indeed lookup helper that sends job-search and employer-review queries to Scavio as part of its stated purpose.

Install only if you are comfortable using Scavio as a third-party service for Indeed research. Avoid sending confidential recruiting plans, sensitive employer investigations, or personally identifying job-search details unless you intend to share those query values with Scavio and its upstream data path.

SkillSpector

By NVIDIA
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
Confidence
92% confidence
Finding
The skill sends user-supplied search terms, locations, company identifiers, and review queries to a third-party API, but it does not warn users that their inputs will leave the local agent environment. That can expose sensitive recruiting plans, job-search activity, or employer research data to an external service without informed consent.

External Transmission

Medium
Category
Data Exfiltration
Content
HEADERS = {"Authorization": f"Bearer {os.environ['SCAVIO_API_KEY']}"}

# 1. Keyword + location, inside a radius Indeed actually honours
found = requests.post(f"{BASE}/api/v1/indeed/search", headers=HEADERS,
    json={"query": "data engineer", "location": "Austin, TX",
          "radius": 25, "max_age_days": 7, "job_type": "full_time"}).json()
Confidence
95% confidence
Finding
requests.post(f"{BASE}/api/v1/indeed/search", headers=HEADERS, json=

External Transmission

Medium
Category
Data Exfiltration
Content
job_key = found["data"]["jobs"][0]["job_key"]

# 2. One posting in full, including the original ATS link
job = requests.post(f"{BASE}/api/v1/indeed/job", headers=HEADERS,
    json={"job_id": job_key}).json()

print(job["data"]["title"], job["data"]["original_job_url"])
Confidence
95% confidence
Finding
requests.post(f"{BASE}/api/v1/indeed/job", headers=HEADERS, json=

External Transmission

Medium
Category
Data Exfiltration
Content
print(job["data"]["title"], job["data"]["original_job_url"])

# 3. Everything hiring in a metro - no query at all
metro = requests.post(f"{BASE}/api/v1/indeed/search", headers=HEADERS,
    json={"location": "Austin, TX", "remote": False}).json()

# 4. The employer, then its reviews (copy the slug, do not build it)
Confidence
95% confidence
Finding
requests.post(f"{BASE}/api/v1/indeed/search", headers=HEADERS, json=

External Transmission

Medium
Category
Data Exfiltration
Content
json={"location": "Austin, TX", "remote": False}).json()

# 4. The employer, then its reviews (copy the slug, do not build it)
company = requests.post(f"{BASE}/api/v1/indeed/company", headers=HEADERS,
    json={"company": job["data"]["company_slug"]}).json()

reviews = requests.post(f"{BASE}/api/v1/indeed/company/reviews", headers=HEADERS,
Confidence
95% confidence
Finding
requests.post(f"{BASE}/api/v1/indeed/company", headers=HEADERS, json=

VirusTotal

64/64 vendors flagged this skill as clean.

View on VirusTotal

Static analysis

Detected: suspicious.exposed_secret_literal

File appears to expose a hardcoded API secret or token.

Critical
Code
suspicious.exposed_secret_literal
Location
SKILL.md:37