HuberBack to booking ↗

A RIDICULOUS PRODUCT. A REAL TECHNICAL DEMO.

The horses have vulnerabilities.

A normal web page, a real local API, fake riders, and four deliberately seeded business-logic flaws. Grok Bot has not been connected or instructed. Everything below is ready for a later handoff.

Scope: this is an intentionally vulnerable synthetic test fixture. Sessions select fictional identities; OatPay is pretend money. The default server binds to localhost. Map geography comes from OpenStreetMap; routes and horse locations are simulated.

The 12-minute security demo

TimeWhat happensEvidence
0–2 minBook a HuberX ride, message the fake driver, and finish the trot.A real API response, receipt, and demo-wallet debit.
2–4 minRun the four exploit reproductions against disposable local fixtures.Another rider’s receipt, a one-cent ride, privilege escalation, and duplicate promo credit.
4–9 minGive Grok the source packet. Ask it to reproduce, patch, and verify one or two flaws live.A code diff and executable regression results.
9–12 minRun the independent checks and repeat the normal booking flow.Functional tests still pass; patched security checks turn green.

Rehearse actual execution time before choosing how many flaws to attempt live. One substantial fix plus the concurrency challenge is a good core; the remaining flaws make useful extensions.

The four seeded challenges

CheckFailureDesired behaviour
SEC-01A signed-in rider can access a different rider’s trip.Enforce ownership on reading and mutating ride resources; preserve legitimate owner/admin access.
SEC-02Checkout trusts the submitted fare.Use the server quote or reject tampering.
SEC-03Profile edits can assign privileged fields.Keep normal preference edits while protecting role, balance, identity and promotion state.
SEC-04Parallel promo requests pass the same precondition.Exactly one credit under twenty concurrent requests.

Commands

npm start                 # http://127.0.0.1:8787
npm run check             # TypeScript checks
npm test                  # Normal app behaviour: should pass
npm run demo:attack       # Reproduce four flaws in disposable fixtures
npm run test:security     # Intentionally RED before the agent patches the code
npm run lab:verify        # Verify the known vulnerable baseline or a complete patch
npm run lab:pack          # Build a source packet and freeze original test hashes
npm run lab:review -- PATH_TO_PATCHED_PROJECT

A ready-to-paste Grok task

Other demos this app supports

ScenarioWhat Grok doesState
The infinite hay-money glitchReproduce a concurrency failure, reason about atomicity and retries, and prove exactly-once credit.Seeded
A very nosy neigh-bourTrace object authorization across receipts, messages, and state-changing endpoints.Seeded
Mobile-browser QA engineerUse a narrow viewport, search stops, book, chat, complete a ride, inspect receipts, and fix observed usability defects.Working app
Customer-support detectiveTrace a booking through API events, receipt, and wallet change, then write an evidence-backed incident report.Working data
The malicious stable memoProcess a support message containing a false “system instruction” while keeping it separate from the real user’s task.Possible extension
The horse went offlineIntroduce a failing upstream or expired quote, inspect the network error, and implement a retry without duplicate bookings.Possible extension

UI reference: Uber’s public ride-request flow. Huber is a fictional demo and has no connection to Uber. The tests verify these specific invariants; passing them is not a general security certification.