T08 · Insecure Dependencies
- Location
SKILL.md:238- Finding
Third-Party SDK Installation Without Integrity or Provenance Verification
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This skill is a clearly documented Tripadvisor data API helper that sends user-selected place queries to Scavio and has no hidden local execution or persistence behavior.
Before installing, understand that venue queries, Tripadvisor URLs or IDs, and your SCAVIO_API_KEY are sent to Scavio when the skill is used. Prefer the direct HTTPS examples if you do not want to install SDK packages, and install any SDK in an isolated environment if supply-chain risk matters for your workflow.
SKILL.md:238Third-Party SDK Installation Without Integrity or Provenance Verification
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.
HEADERS = {"Authorization": f"Bearer {API_KEY}"}
# 1. ALWAYS START HERE - a name is not an id
places = requests.post(f"{BASE}/api/v1/tripadvisor/locations", headers=HEADERS,
json={"query": "Austin, Texas"}).json()
geo = next(r for r in places["data"]["results"] if r["type"] == "GEO")
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.
geo = next(r for r in places["data"]["results"] if r["type"] == "GEO")
# 2. Ranked restaurants in that geo
listing = requests.post(f"{BASE}/api/v1/tripadvisor/search", headers=HEADERS,
json={"geo_id": geo["geo_id"], "category": "restaurants"}).json()
row = listing["data"]["results"][0]
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.
row = listing["data"]["results"][0]
# 3. One venue in full - page 1 of its reviews comes along for free
venue = requests.post(f"{BASE}/api/v1/tripadvisor/location", headers=HEADERS,
json={"location_id": row["location_id"], "geo_id": row["geo_id"],
"category": "restaurants"}).json()
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.
"category": "restaurants"}).json()
more = requests.post(f"{BASE}/api/v1/tripadvisor/reviews", headers=HEADERS, json={"location_id": row["location_id"], "geo_id": row["geo_id"], "category": "restaurants", "page": 2}).json()
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.
"category": "restaurants"}).json()
more = requests.post(f"{BASE}/api/v1/tripadvisor/reviews", headers=HEADERS, json={"location_id": row["location_id"], "geo_id": row["geo_id"], "category": "restaurants", "page": 2}).json()