T05 · Unauthorized Access and Privilege Escalation
Warning
- Location
- scripts/crawlora.sh:77
- Finding
- Undeclared Rightmove API Capabilities Exceed the Skill's Documented Scope## Vulnerability Details **File Location**: `scripts/crawlora.sh:77-84` **Related Documentation**: `SKILL.md:2`, `SKILL.md:7-10`, `reference/endpoints.md:141-189` **Vulnerability Type**: Undeclared external API capability and least-privilege scope mismatch **Risk Level**: Medium The skill metadata describes support for five platforms: Zillow, Redfin, CarMax, Autotrader, and Cars.com. However, the executable helper also authorizes eight Rightmove route families that are not disclosed in the skill metadata or primary usage documentation. **Vulnerable code:** ```bash /rightmove/agents) ;; /rightmove/agents/*) ;; /rightmove/autocomplete) ;; /rightmove/commercial/search) ;; /rightmove/new-homes/search) ;; /rightmove/properties/*) ;; /rightmove/search) ;; /rightmove/student/search) ;; ``` The mismatch is visible in the declared scope: ```yaml description: Researches homes and used cars via the Crawlora API — Zillow and Redfin property search/estimates/market trends, plus CarMax, Autotrader, and Cars.com vehicle search and dealer/listing detail — returning clean JSON. ``` ```markdown Search homes and used cars, and pull property/vehicle detail, across five platforms as normalized JSON from the Crawlora API — no scraping listing pages. ``` ### Technical Analysis The shell helper is intended to enforce a restricted catalog of API routes. Its comments explicitly state that unrelated routes and caller-account surfaces must remain unavailable. Nevertheless, the allowlist includes Rightmove operations beyond the five-platform scope represented to users. The endpoint reference confirms that these patterns represent functional capabilities, including property searches, commercial and student-accommodation searches, property details, and estate-agent details containing addresses and telephone numbers. Consequently, this is not merely stale documentation: the executable authorization boundary is broader than the de ...[truncated 1626 chars]
- Remediation
- ## Remediation Suggestions 1. If Rightmove is not an intended capability, remove all eight Rightmove patterns from `scripts/crawlora.sh` and remove the corresponding endpoint documentation from `reference/endpoints.md`. 2. If Rightmove is intended, explicitly disclose it in the skill name, metadata description, supported-platform count, usage guidance, examples, and data/privacy notes. 3. Replace broad wildcard route matching with a strict route-and-method authorization table. Validate dynamic path parameters according to their documented formats, such as numeric identifiers where required. 4. Add automated consistency tests that compare the executable route allowlist with the generated endpoint reference and the platforms declared in `SKILL.md`. 5. Deny undocumented routes by default and require a review whenever a new platform or endpoint is added.
