SECURITY PoC — NO AUTH
This movie's CDN stream is playing without login or subscription
Generation to Generation 15 — Episodes (38 of 38)
EP 1Generation to Generation
EP 2Generation to Generation 2
EP 3Generation to Generation 3
EP 4Generation to Generation 4
EP 5Generation to Generation 5
EP 6Generation to Generation 6
EP 7Generation to Generation 7
EP 8Generation to Generation 8
EP 9Generation to Generation 9
EP 10Generation to Generation 10
EP 11Generation to Generation 11
EP 12Generation to Generation 12
EP 13Generation to Generation 13
EP 14Generation to Generation 14
EP 15Generation to Generation 15
EP 16Generation to Generation 16
EP 17Generation to Generation 17
EP 18Generation to Generation 18
EP 19Generation to Generation 19
EP 20Generation to Generation 20
EP 21Generation to Generation 21
EP 22Generation to Generation 22
EP 23Generation to Generation 23
EP 24Generation to Generation 24
EP 25Generation to Generation 25
EP 26Generation to Generation 26
EP 27Generation to Generation 27
EP 28Generation to Generation 28
EP 29Generation to Generation 29
EP 30Generation to Generation 30
EP 31Generation to Generation 31
EP 32Generation to Generation 32
EP 33Generation to Generation 33
EP 34Generation to Generation 34
EP 35Generation to Generation 35
EP 36Generation to Generation 36
EP 37Generation to Generation 37
EP 38Generation to Generation 38
Per-movie CDN bypass proof
The API returned
playingUrl for Generation to Generation 15
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/63117/0
User ID used
0 (no user / not logged in)
JWT used
Expired Feb 2024 (extracted from APK)
issubscriber
false
user_access
deny
paid_for
YES (premium content)
substatus
EXPIRED
serverhost
62
video_name
EP.15.Generation to Generation.vj banks.mp4
playingUrl returned
YES — URL in response
API playingUrl value
https://munowatch.co/clips/ELI.mp4
CDN stream
https://harvetz.b-cdn.net/hvt43/kai43/EP.15.Generation%20to%20Generation.vj%20banks.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).