SECURITY PoC — NO AUTH
This movie's CDN stream is playing without login or subscription
Infernal Affairs 38 — Episodes (20 of 40)
EP 21Infernal Affairs 21
EP 22Infernal Affairs 22
EP 23Infernal Affairs 23
EP 24Infernal Affairs 24
EP 25Infernal Affairs 25
EP 26Infernal Affairs 26
EP 27Infernal Affairs 27
EP 28Infernal Affairs 28
EP 29Infernal Affairs 29
EP 30Infernal Affairs 30
EP 31Infernal Affairs 31
EP 32Infernal Affairs 32
EP 33Infernal Affairs 33
EP 34Infernal Affairs 34
EP 35Infernal Affairs 35
EP 36Infernal Affairs 36
EP 37Infernal Affairs 37
EP 38Infernal Affairs 38
EP 39Infernal Affairs 39
EP 40Infernal Affairs 40
Per-movie CDN bypass proof
The API returned
playingUrl for Infernal Affairs 38
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/45131/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
54
video_name
Watch Infernal Affairs (2023) Episode 38 Online With English sub - Dramacool.mp4
playingUrl returned
YES — URL in response
API playingUrl value
https://munowatch.co/clips/ELI.mp4
CDN stream
https://nkuba.b-cdn.net/cleve48/cfr/Watch%20Infernal%20Affairs%20%282023%29%20Episode%2038%20Online%20With%20English%20sub%20-%20Dramacool.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).