T09 · Insecure Skill Coding Practices
- Location
SKILL.md:23- Finding
Unauthenticated Booking Status Endpoint Exposes Customer Addresses and Schedules
- Content
View full analysis
` if the customer asks whether their booking went through. Returns upcoming bookings for that email. ``` `references/booking-flow.md:98-116`: ```markdown HTTP request: ``` GET https://claw.cleaning/bookings/status?email=jane%40example.com ``` Response (`200 OK`): ```json { "email": "jane@example.com", "bookings": [ { "date": "2026-04-18", "startTime": "10:00", "hours": 3, "address": "456 Castro St, San Francisco, CA 94114", "eventId": "..." } ] } ``` ``` ### Technical Analysis The documentation explicitly states that every API endpoint is public and requires no authentication. The booking-status endpoint uses only an email address supplied in a URL query parameter as the lookup key. An email address is an identifier, not an authentication factor, and possession of it does not prove that the requester owns the corresponding booking. The documented response discloses sensitive, identity-linked information, i ...[truncated 2522 chars]- Remediation
View remediation
