SECURITY PoC — NO AUTH
This movie's CDN stream is playing without login or subscription
Good Casting 9 — Episodes (20 of 21)
EP 1Good Casting 1
EP 2Good Casting 2
EP 3Good Casting 3
EP 4Good Casting 4
EP 5Good Casting 5
EP 6Good Casting 6
EP 7Good Casting 7
EP 8Good Casting 8
EP 9Good Casting 9
EP 10Good Casting 10
EP 11Good Casting 11
EP 12Good Casting 12
EP 13Good Casting 13
EP 14Good Casting 14
EP 15Good Casting 15
EP 16Good Casting 16
EP 17Good Casting 17
EP 18Good Casting 18
EP 19Good Casting 19
EP 20Good Casting 20
Per-movie CDN bypass proof
The API returned
playingUrl for Good Casting 9
with issubscriber: false, user_access: deny, and paid_for: true.
The video_name + serverhost from the API response are used to construct
the CDN URL above, confirming that the file for this specific movie is
publicly accessible with no authentication.
Security research evidence Inspect entitlement results, CDN URLs, and the raw API response Access control failed
API response evidence
Endpoint called
GET /api/preview/v2/11564/0
User ID used
0 (no user / not logged in)
JWT used
Expired Feb 2024 (extracted from APK)
issubscriber
false
user_access
allow
paid_for
YES (premium content)
substatus
EXPIRED
serverhost
24
video_name
8b143~24.mp4
playingUrl returned
YES — URL in response
API playingUrl value
https://munowatch.co/clips/ELI.mp4
CDN stream
https://munotek-vault.b-cdn.net/11c97/465/8b143~24.mp4
Finding: The server sets user_access=deny and
issubscriber=false but still returns playingUrl in the
same response. Subscription is enforced client-side only — any caller with
the expired APK JWT can obtain stream URLs without a subscription.
Munowatch CDN (b-cdn.net) serves content with no auth required
(direct HTTP Range requests succeed with HTTP 206).