SECURITY PoC — NO AUTH
This movie's CDN stream is playing without login or subscription
Breaking Bad Fortune Teller 32 — Episodes (40 of 40)
EP 1Breaking Bad Fortune Teller
EP 2Breaking Bad Fortune Teller 2
EP 3Breaking Bad Fortune Teller 3
EP 4Breaking Bad Fortune Teller 4
EP 5Breaking Bad Fortune Teller 5
EP 6Breaking Bad Fortune Teller 6
EP 7Breaking Bad Fortune Teller 7
EP 8Breaking Bad Fortune Teller 8
EP 9Breaking Bad Fortune Teller 9
EP 10Breaking Bad Fortune Teller 10
EP 11Breaking Bad Fortune Teller 11
EP 12Breaking Bad Fortune Teller 12
EP 13Breaking Bad Fortune Teller 13
EP 14Breaking Bad Fortune Teller 14
EP 15Breaking Bad Fortune Teller 15
EP 16Breaking Bad Fortune Teller 16
EP 17Breaking Bad Fortune Teller 17
EP 18Breaking Bad Fortune Teller 18
EP 19Breaking Bad Fortune Teller 19
EP 20Breaking Bad Fortune Teller 20
EP 21Breaking Bad Fortune Teller 21
EP 22Breaking Bad Fortune Teller 22
EP 23Breaking Bad Fortune Teller 23
EP 24Breaking Bad Fortune Teller 24
EP 25Breaking Bad Fortune Teller 25
EP 26Breaking Bad Fortune Teller 26
EP 27Breaking Bad Fortune Teller 27
EP 28Breaking Bad Fortune Teller 28
EP 29Breaking Bad Fortune Teller 29
EP 30Breaking Bad Fortune Teller 30
EP 31Breaking Bad Fortune Teller 31
EP 32Breaking Bad Fortune Teller 32
EP 33Breaking Bad Fortune Teller 33
EP 34Breaking Bad Fortune Teller 34
EP 35Breaking Bad Fortune Teller 35
EP 36Breaking Bad Fortune Teller 36
EP 37Breaking Bad Fortune Teller 37
EP 38Breaking Bad Fortune Teller 38
EP 39Breaking Bad Fortune Teller 39
EP 40Breaking Bad Fortune Teller 40
Per-movie CDN bypass proof
The API returned
playingUrl for Breaking Bad Fortune Teller 32
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/26017/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
38
video_name
Breaking Bad Fortune Teller Episode 32.mp4
playingUrl returned
YES — URL in response
API playingUrl value
https://munowatch.co/clips/ELI.mp4
CDN stream
https://munotech2.b-cdn.net/rus1/553/Breaking%20Bad%20Fortune%20Teller%20Episode%2032.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).