medvm / widevine_keys

This repo created for bypassing Widevine L3 DRM and obtaining keys.
450 stars 186 forks source link

Add [redefine.pl] support #18

Closed jaca233 closed 2 years ago

jaca233 commented 2 years ago

Input MPD URL: https://hls.redefine.pl/6EFF0E23/1712/0/dash_iptv/live.mpd License URL: https://b2c-www.redefine.pl/rpc/drm/

PSSH obtained. AAAAZHBzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAAEQIARIQsckmWr/9a0OY0dX9OfwZCBoNY3lmcm93eXBvbHNhdCIZNkVGRjBFMjMvMTcxMi8wL2Rhc2hfaXB0dkjj3JWbBg==

license response status: <Response [200]> server reports: {"error":{"code":-32600,"message":"Invalid Request"},"id":null,"jsonrpc":"2.0"} server did not issue license, make sure you have correctly pasted all the required headers in the headers.py. Also check json/raw params of POST request.

medvm commented 2 years ago

Show the output of the "copy as curl" command

jaca233 commented 2 years ago

curl 'https://dc2-clww-voddash-dazn.secure.footprint.net/out/u/DC2_1ge8srmr4k6801lojjv5iss3n2_BOX_MRB_MATCH_211211_Benn_Algieri_BennAlgieri_Liverpool_en_1639274211401-encrypted.mpd?p=web' \ -H 'Connection: keep-alive' \ -H 'sec-ch-ua: " Not A;Brand";v="99", "Chromium";v="96", "Google Chrome";v="96"' \ -H 'sec-ch-ua-mobile: ?0' \ -H 'User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.93 Safari/537.36' \ -H 'sec-ch-ua-platform: "Windows"' \ -H 'Accept: /' \ -H 'Origin: https://www.dazn.com' \ -H 'Sec-Fetch-Site: cross-site' \ -H 'Sec-Fetch-Mode: cors' \ -H 'Sec-Fetch-Dest: empty' \ -H 'Referer: https://www.dazn.com/' \ -H 'Accept-Language: en-US,en;q=0.9' \ --compressed

jaca233 commented 2 years ago

curl 'https://drm.gateway.indazn.com/widevine/v1/license?contentId=prod-vod1&releasePid=TzLFda46bkAB&outletId=prod-row&platform=web&manufacturer=Google&model=CHROME&appVersion=9.2.0-hotfix.1.34612&assetId=17vl58vp5mq8l1ayi5sfwrj5uv&aexp=1670372760000&tid=72dc4438-1f57-40a5-9440-e54379311bed&uexp=1639469785611&hash=8ffa7989686c5a1ec79392cc132619a81dedbe7e30a8d7c58f7c1ead9bb9b590' \ -H 'authority: drm.gateway.indazn.com' \ -H 'sec-ch-ua: " Not A;Brand";v="99", "Chromium";v="96", "Google Chrome";v="96"' \ -H 'authorization: Bearer eyJhbGciOiJSUzUxMiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjoiNDhkNjYxMjEtNWI4ZC00MWZmLTgyOWItYzY5OTcxY2ViMWRhIiwiaXNzdWVkIjoxNjM5MzgzMzQ5LCJ1c2Vyc3RhdHVzIjoiQWN0aXZlUGFpZCIsInZpZXdlcklkIjoiYzY5OTcxY2ViMWRhIiwiY291bnRyeSI6InBsIiwiY29udGVudENvdW50cnkiOiJwbCIsInVzZXJUeXBlIjozLCJkZXZpY2VJZCI6IjQ4ZDY2MTIxLTViOGQtNDFmZi04MjliLWM2OTk3MWNlYjFkYS0wMDEyNDBkMjJkIiwiY2FucmVkZWVtZ2MiOiJFbmFibGVkIiwibXB4IjoiZXlKaGJHY2lPaUpTVXpVeE1pSjkuZXlKemRXSWlPaUp3WjJ4ekxYQnljaTEwY25WemRHVmtMelE0WkRZMk1USXhMVFZpT0dRdE5ERm1aaTA0TWpsaUxXTTJPVGszTVdObFlqRmtZU0lzSW1semN5STZJakVpTENKbGVIQWlPakUyTXprek9UQTFORGtzSW1saGRDSTZNVFl6T1RNNE16TTBPVGc1TlN3aWFuUnBJam9pT0dZd05UaGxPRFF0WWpSak1TMDBNVFExTFRobVpqVXRaVFk1T0RKbFlqVXlOVEZqSWl3aVpHbGtJam9pY0dkc2N5MXdjbkl0ZEhKMWMzUmxaQ0lzSW5WdWJTSTZJalE0WkRZMk1USXhMVFZpT0dRdE5ERm1aaTA0TWpsaUxXTTJPVGszTVdObFlqRmtZU0lzSW1OMGVDSTZJbnRjSW5WelpYSk9ZVzFsWENJNlhDSTBPR1EyTmpFeU1TMDFZamhrTFRReFptWXRPREk1WWkxak5qazVOekZqWldJeFpHRmNJaXhjSW1GMGRISnBZblYwWlhOY0lqcDdYQ0p6ZFdKelkzSnBjSFJwYjI1TVpYWmxiRndpT2x3aWMzUmhibVJoY21SY0luMTlYRzRpTENKdmFXUWlPbTUxYkd4OS5QV212aS0xNE80dzVoaVRpUHBYQ1c0TlZiNWtGVDlidU81a0F6by0taW5USktrQlpQNEFIcExsOVpwbGkxM01Jb085SEViN01NWUdqM0l2SmxEQTBfUEljV1RxWFFHM2RyZUxWU0daa3ZmdUVWSWtqWlRsZ2J6cGZ4alVmcjJ6b3NDaTBudXFJU2VVMXA4UF9vY0hZbU9TV0F4ZUdfcS0yZkRNdTFsdGl2MkVfSzQtVjJ0NGh6U0NFaktXMGQySkFnZ042ZmJFY1Zac1JkM1Z4Q3NOR3RYTHlJVVcwbzJfc2lFZmZIM1NSS3Y3ektXaWFkMnp1Q1JqX3lpcjc5b1JlUGNxWC0wSzJMT1BCeVR4R1A3ejRYMGFaLVRRRUZTNC1UMW8xcE0yYzdveml4eFJ1d0ppc09DVnlTck9VeXZSMHI0TnM3R05zY2dBSkhXdVdubF81cmciLCJqdGkiOiI5MDY1YjQ5ZS00ZWI2LTQyMjgtOTlkZC00YmM4ZjdmZmQ0M2YiLCJleHAiOjE2MzkzOTA1NDl9.Q0TEA5_oLyBBaVMPFBQeziJK3PRTgEIbHQ0yXDp5HPaQECSyLFmdo7oAeAzQJ21zEDqxi3XaOdiAZAtS9BUz2NEWgoBJFDVVMmYbofwABGlWhcQyjhUbwuJ3ACkA8Lhto6z11etPROty4tyOXDgakR3cn1efzTjvGUpfbea-ZyEaMVyegD050NpLJ41aS27Kumum5Af1U1xIrmtu6w9d8GCjmYw-5JaaTTm4kJMC4m0_Lluq8v-MMG20UZcjCOMvBybhu6QjeltfQ-dPmkX-0ioIUq0yoMBQC1_MfeTRhP2TG5oNmuec8_drXey5ynFJow7vvo3xk-iTYRxFl8WmOw' \ -H 'content-type: application/octet-stream' \ -H 'x-session-id: b2dcbe71-82db-4928-900c-022b2b5eeeea' \ -H 'sec-ch-ua-mobile: ?0' \ -H 'user-agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.93 Safari/537.36' \ -H 'sec-ch-ua-platform: "Windows"' \ -H 'accept: /' \ -H 'origin: https://www.dazn.com' \ -H 'sec-fetch-site: cross-site' \ -H 'sec-fetch-mode: cors' \ -H 'sec-fetch-dest: empty' \ -H 'referer: https://www.dazn.com/' \ -H 'accept-language: en-US,en;q=0.9' \ --data-raw $'\u0008\u0004' \ --compressed

jaca233 commented 2 years ago

PSSH obtained. AAAARHBzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAACQSEM+14rc77088h48lq4anRR8iEM+14rc77088h48lq4anRR8= Traceback (most recent call last): File "l3.py", line 130, in correct, keys = WV_Function(pssh, lic_url) File "l3.py", line 52, in WV_Function data=f'token={headers.token}&provider={headers.provider}&payload={str(request, "utf-8" )}' AttributeError: module 'headers' has no attribute 'token'

jaca233 commented 2 years ago

import requests

headers = { 'Connection': 'keep-alive', 'sec-ch-ua': '" Not A;Brand";v="99", "Chromium";v="96", "Google Chrome";v="96"', 'Accept': 'application/json', 'Content-Type': 'application/json;charset=UTF-8', 'sec-ch-ua-mobile': '?0', 'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.93 Safari/537.36', 'sec-ch-ua-platform': '"Windows"', 'Origin': 'https://polsatboxgo.pl', 'Sec-Fetch-Site': 'cross-site', 'Sec-Fetch-Mode': 'cors', 'Sec-Fetch-Dest': 'empty', 'Referer': 'https://polsatboxgo.pl/', 'Accept-Language': 'en-US,en;q=0.9', }

data = { '{"id":1,"jsonrpc":"2.0","method":"checkProductAccess","params":{"product":{"id":"3504","type":"media","subType":"tv"},"ua":"pbg_pc_windows_chrome_html/1 (Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.93 Safari/537.36)","deviceId":{"type":"other","value":"089d68eb-cc11-42cf-adb4-925296fa1575"},"userAgentData":{"portal":"pbg","deviceType":"pc","application":"chrome","player":"html","build":1,"os":"windows","osInfo":"Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.93 Safari/537.36"},"authData":{"sessionToken":"f8c135e3-ad9b-42cf-a558-90f2d3e1dc75|1640002313|drm|checkProductAccess|7Mmd_ZWFo9GqgODxr2CS1TJRCim_k0cKpFonqDcYe9I': '"},"clientId":"bb95f6c4-6ee2-46f2-bf37-c61ecb211855"}}' }

response = requests.post('https://b2c-www.redefine.pl/rpc/drm/', headers=headers, data=data)

jaca233 commented 2 years ago

Input MPD URL: https://hls.redefine.pl/101106F4/1503/0/dash_iptv/live.mpd License URL: https://b2c-www.redefine.pl/rpc/drm/

PSSH obtained. AAAAZHBzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAAEQIARIQDYE9RXfLs0Go26NRb+lLCBoNY3lmcm93eXBvbHNhdCIZMTAxMTA2RjQvMTUwMy8wL2Rhc2hfaXB0dkjj3JWbBg== Traceback (most recent call last): File "l3.py", line 130, in correct, keys = WV_Function(pssh, lic_url) File "l3.py", line 52, in WV_Function data=f'token={headers.token}&provider={headers.provider}&payload={str(request, "utf-8" )}' AttributeError: module 'headers' has no attribute 'token'

D:\widevine_keys-main>

medvm commented 2 years ago

understood, clientid and session token id headers. Btw, read readme