T08 · Insecure Dependencies
- Location
SKILL.md:218- Finding
Third-Party SDK Installation Without Integrity Verification
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This skill is a straightforward Redfin data helper that clearly uses Scavio's API and an API key to fetch real-estate listings and market data.
Install this if you are comfortable using Scavio as the third-party service for Redfin data. Keep SCAVIO_API_KEY private, expect your property search parameters and listing or region identifiers to be sent to Scavio, and consider using a virtual environment or direct HTTPS examples instead of installing the optional SDKs if you want to reduce dependency risk.
SKILL.md:218Third-Party SDK Installation Without Integrity 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. For-sale search by region URL. A city NAME would not work here.
listings = requests.post(f"{BASE}/api/v1/redfin/search", headers=HEADERS,
json={"location": "https://www.redfin.com/city/30749/TX/Austin",
"listing_status": "for_sale", "min_price": 400000, "max_price": 800000,
"beds_min": 3, "property_type": "house", "sort": "newest", "limit": 350}).json()
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. For-sale search by region URL. A city NAME would not work here.
listings = requests.post(f"{BASE}/api/v1/redfin/search", headers=HEADERS,
json={"location": "https://www.redfin.com/city/30749/TX/Austin",
"listing_status": "for_sale", "min_price": 400000, "max_price": 800000,
"beds_min": 3, "property_type": "house", "sort": "newest", "limit": 350}).json()
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. For-sale search by region URL. A city NAME would not work here.
listings = requests.post(f"{BASE}/api/v1/redfin/search", headers=HEADERS,
json={"location": "https://www.redfin.com/city/30749/TX/Austin",
"listing_status": "for_sale", "min_price": 400000, "max_price": 800000,
"beds_min": 3, "property_type": "house", "sort": "newest", "limit": 350}).json()
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. For-sale search by region URL. A city NAME would not work here.
listings = requests.post(f"{BASE}/api/v1/redfin/search", headers=HEADERS,
json={"location": "https://www.redfin.com/city/30749/TX/Austin",
"listing_status": "for_sale", "min_price": 400000, "max_price": 800000,
"beds_min": 3, "property_type": "house", "sort": "newest", "limit": 350}).json()
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.
json={"location": "78704", "listing_status": "for_rent", "max_price": 3000}).json()
# 5. One listing in full
prop = requests.post(f"{BASE}/api/v1/redfin/property", headers=HEADERS,
json={"property_id": "https://www.redfin.com/TX/Austin/..."}).json()
# 6. Market stats for the same region
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.
json={"property_id": "https://www.redfin.com/TX/Austin/..."}).json()
market = requests.post(f"{BASE}/api/v1/redfin/market", headers=HEADERS, json={"region_id": 30749, "region_type": 6}).json()