Tainted flow: 'url' from requests.post (line 463, network input) → requests.get (network output)
Medium
- Category
- Data Flow
- Content
def _download_and_save(url: str, filepath: str) -> bool: """Download content from URL and save to filepath.""" try: data = requests.get(url).content with open(filepath, 'wb') as f: f.write(data) return True- Confidence
- 95% confidence
- Finding
- The helper downloads arbitrary URLs returned by the remote API using requests.get(url) with no allowlist, scheme validation, timeout, or size checks, then writes the response directly to disk. If the upstream service, client.base_url, or API responses are malicious or compromised, this can enable SSRF-like outbound access, downloading unexpected content, or disk/resource exhaustion.
