T09 · Insecure Skill Coding Practices
- Location
scripts/fetch_data.py:159- Finding
Authentication Token Can Be Redirected to an Arbitrary Network Host
- Content
View full analysis
", file=sys.stderr) sys.exit(1) set_config("base_url", sys.argv[2]) sys.exit(0) ``` ### Technical Analysis The Skill's declared functionality requires requests to the fixed finance service at `https://repilot.51ifind.com/`. However, the undocumented `--set-url` option accepts an arbitrary URL and persists it as `base_url` without validating the scheme, hostname, port, or destination. Every subsequent finance query retrieves that configurable URL and attaches the stored authentication token to the `Authorization` header. The natural-language finance query is also transmitted to the selected host as a URL query parameter. This exceeds the minimum network privileges needed for the declared functionality. An arbitrary endpoint is not necessary when the Skill is intended to communicate with one defined service. The lack of HTTPS enforcement also permits configuration of a plaintext ...[truncated 1324 chars]- Remediation
View remediation
