Guide Guide pour obtenir du contenu DRM. (En cours)

yannic0

Lurker
Inscrit
18 Jan 2022
Messages
305
Réactions
0
Ceci est juste un guide qui devrait faciliter l'obtention de contenu DRM.
Oui, il existe déjà quelques guides. Mais je veux en faire un que même une personne non technophile puisse comprendre, suivre et retrouver.
Ce guide va parcourir le processus d'installation de python et des outils nécessaires pour obtenir du contenu protégé par DRM
Le guide sera divisé en plusieurs parties.
Utilisateurs de Mac OS, veuillez consulter ce guide : https://simpcityopen.com/threads/81957/
Installation de Python, PIP et Frida
Tout d'abord.
Télécharge Python depuis ce site : https://www.python.org/downloads/ et prends la dernière version*. (Pas la pre-release)

* La dernière version au moment de l'écriture est 3.11.4
Ouvre l'installeur et assure-toi de cocher "Add python to PATH"

Après avoir sélectionné cette option, appuie sur installer et attends que ce soit fini.
Pour vérifier que c'est bien installé, ouvre Terminal (Windows 11) ou Powershell (Windows 10/11) et tape :
Ça devrait te donner le résultat suivant*

* La version peut varier selon la dernière version disponible avec le temps.
Avec l'installation de Python vient le paquet pip. Pour vérifier s'il est installé, tape dans un Terminal ou Powershell :
Ça devrait aussi te donner le résultat suivant*

* Encore une fois la version peut varier avec le temps.
Si pour une raison quelconque PIP n'est pas encore installé, ouvre un Terminal ou Powershell et tape :
Pour installer frida, va dans un Terminal ou Powershell et tape :
Assure-toi de noter quelque part quelle version a été installée, c'est important pour la suite. * (La version est surlignée en jaune)

* Les versions peuvent différer chez toi donc vérifie bien.
Ensuite tu as besoin de frida-tools qui peut être installé en tapant dans Terminal ou Powershell :

Installation d'Android Studio et création de ton premier téléphone virtuel
Télécharge Android Studio https://developer.android.com/studio

Et suis le processus d'installation.
Après l'installation, ouvre Android Studio.
Tu peux laisser la plupart des paramètres par défaut. Ensuite, pour les licences, clique sur accepter sur toutes jusqu'à ce que le bouton finish soit surligné.

Après l'installation, Android Studio va s'ouvrir et te donner l'option de "créer un nouveau projet" comme montré ci-dessous :

Si tu as une erreur à cette étape, tu devrais vérifier si ton appareil a la virtualisation activée.
Lis ce post : https://simpcityopen.com/threads/81957/
Ensuite sélectionne "phone and tablet" avec une "empty activity" et clique sur next, comme montré dans l'image ci-dessous :

Ensuite sélectionne un SDK minimum d'Android 9.0 (Pie) ou supérieur comme montré ci-dessous :

Pour créer un nouvel appareil, appuie sur le bouton device manager et clique sur "create device" comme montré ci-dessous :

Cherche le Pixel 6, sélectionne-le et appuie sur next.

Tu vas d'abord devoir télécharger l'OS, donc appuie sur l'icône de téléchargement à côté de la version* que tu veux. (*Choisis Android 9.0 ou plus récent.)

Une fois le téléchargement terminé, sélectionne à nouveau la version, appuie sur next et termine la configuration du nouvel appareil.
Installer Frida-server sur ton téléphone virtuel
Ensuite installe frida sur ton téléphone virtuel. Télécharge frida sur ton PC ici : https://github.com/frida/frida/releases et cherche "frida-server" avec la bonne version surlignée en jaune quand tu as installé frida avec pip, et assure-toi de prendre la version android-x86, comme montré ci-dessous :

Extrais le fichier téléchargé à cet emplacement sur ton appareil :
Utilise Winrar ou 7zip. (Ou quelque chose de similaire.)
Et laisse-le comme ça :

--
Choisis une des deux méthodes :
Méthode automatisée : https://simpcityopen.com/threads/81957/
Ouvre un Terminal ou Powershell dans le dossier où tu as extrait l'outil. Il y a plusieurs façons de faire ça.
  • (Windows 10/11) Shift + Clic droit > Ouvrir dans Terminal/Powershell. (Première image)
  • (Windows 11) Clic droit + Afficher plus d'options > Ouvrir dans Terminal. (Première image)
  • (Windows 10/11) Dans la barre de chemin, tape "CMD" et appuie sur ENTER. (Deuxième image)
Option 1 et 2

Option 3

Dans Terminal ou Powershell tape :
Essaie plutôt ça :
(Donc ajoute ".\" devant.)
Tu devrais voir un émulateur.

Assure-toi d'avoir démarré ton téléphone virtuel en allant dans Android Studio > Device Manager puis en appuyant sur le bouton play de ton téléphone virtuel.
(Tu devrais voir le bouton play se transformer en bouton stop et un téléphone apparaître en dessous.)
Si ça ne marche pas, va dans le dossier suivant :
Ouvre Terminal ou Powershell et tape :
Essaie plutôt ça :
(Ajoute ".\" devant.)
Tu devrais voir le nom de ton téléphone virtuel dessus. Pour démarrer ton téléphone, tape ceci :
Exemple :

Ton téléphone virtuel tourne maintenant.
Continue en tapant la commande suivante, assure-toi de vérifier quelle version tu dois utiliser actuellement :

Une fois qu'elle a été "insérée" sur ton téléphone, tape la commande suivante pour accéder au téléphone (regarde les images d'exemple si cette partie te semble difficile) :
Exemple :

GARDE CE TERMINAL OU POWERSHELL OUVERT !
Configurer le script Dumper
Va sur le github suivant sur ton PC (pas ton téléphone virtuel) https://github.com/wvdumper/dumper et appuie sur le bouton vert "Code " puis "Download zip".
image4cd8d25dcc2e386a.png

Extrais le fichier zip où tu veux. (Je le garde dans le dossier téléchargements) va dans le dossier et ouvre le fichier requirements.txt avec le bloc-notes.
image65b962c80078751b.png

Ajoute la ligne suivante au fichier :
Ça devrait ressembler à ça maintenant :
image920bcc60ebad9b1b.png


Sauvegarde le fichier et ouvre un nouveau Terminal ou Powershell. (En gardant le précédent ouvert.)
Tu peux ouvrir un terminal ou powershell soit en faisant clic droit et en sélectionnant terminal/powershell (1) soit en tapant "CMD" dans la barre de chemin (2).
Option 1

Option 2

Dans le deuxième terminal ou powershell tape :
Une fois que les paquets nécessaires sont installés, tape ceci :
GARDE CE TERMINAL OU POWERSHELL OUVERT AUSSI !
Obtenir les clés avec le script Dumper
Enfin utilise ton téléphone virtuel et navigue avec chrome vers le site suivant : https://bitmovin.com/demos/drm
Le site va demander s'il est autorisé à lire des vidéos protégées. Appuie sur AUTORISER.
Défile un peu jusqu'à voir la vidéo et appuie sur play.
Tu devrais voir de l'activité dans ton deuxième terminal ou powershell. Ça veut dire que ça a marché ! 🎉
Pour vérifier ça, va dans le dossier dumper-main et regarde si tu vois le dossier "key_dumps" :

En continuant dans les dossiers tu trouveras "private_keys" continue jusqu'à voir ces deux fichiers :

Renomme ces fichiers ainsi :
Nom originalNouveau nom
client_id.bindevice_client_id_blob
private_key.pemdevice_private_key
Assure-toi de changer l'extension, ça devrait se faire quand tu renommes les fichiers.
Vérifie que le type de fichier soit devenu juste "Fichier" au lieu d'un fichier BIN ou PEM.*

*Note que c'est une comparaison, tu auras seulement les deux fichiers (device_client_id_blob et device_private_key)
Tu es maintenant prêt à utiliser les clés pour les outils de scraping.
(Je ferai un guide pour quelques-uns de ces scrapers plus bas, encore une fois dans le but de rendre ça simple à comprendre et à suivre.)
En attendant tu peux essayer toi-même en suivant les guides déjà existants ici :
https://simpcityopen.com/threads/2257/
 
Nickel, merci :peepolove:
J'ai mis des liens dans les posts concernés de mon guide OF pour renvoyer les gens ici
 
Merci ! Une fois les keys extraites avec succès, y a-t-il une raison de ne pas désinstaller Android Studio, Python, etc ? Ou est-ce que les keys expirent au bout d'un moment et doivent être régénérées ?
 
Je conseillerais de toujours laisser python installé vu qu'il est utilisé dans la plupart des scrapers.
Et pour Android Studio, c'est mieux de le garder installé aussi car les keys générées pourraient ne plus fonctionner après un moment. (Ça te fera gagner du temps pour plus tard)
 
J'ai fait des scripts batch qui accélèrent un peu le processus, ça t'évite d'aller manuellement dans adb.exe etc. https://github.com/sim0n00ps/L3-Dumping. J'ai essayé d'expliquer un maximum quels chemins vont où.
Aussi une astuce, dans Helpers/Scanner.py, change les noms de fichiers à la ligne 44 de "client_id.bin" à "device_client_id_blob" et à la ligne 47 de "private_key.pem" à "device_private_key". Ça t'évite de renommer les fichiers et d'enlever les extensions après.
 
Ça marche super bien ! Je vais l'ajouter au guide comme version "automatisée"
 
Salut, j'aimerais demander un petit coup de main car je suis un tutoriel, mais malheureusement tout ne fonctionne pas pour moi.
Plus précisément, je suis les instructions étape par étape, je choisis la méthode automatique, et quand je termine toutes les étapes, je lance l'appareil puis j'exécute le 'run.bat'.
Effectivement, deux lignes de commande s'ouvrent. Cependant, quand je continue avec les étapes suivantes, les instructions mentionnent que je devrais voir de l'activité dans l'une des lignes de commande. Malheureusement, rien ne se passe chez moi. De plus, aucun nouveau dossier n'apparaît dans le dossier 'dumper-main'. J'ai essayé de tout refaire, mais les mêmes problèmes persistent. Je joins des captures de mes lignes de commande. Peut-être que quelqu'un pourra me donner des conseils. Merci d'avance pour toute aide.
https://i.pixl.li/246574e7dad017050.png
https://i.pixl.li/1e172e8a70f4c7dd0.png
 
Ma faute. (J'ai oublié de mentionner qu'il faut quand même lancer le script requirements.) Je l'ajoute au guide !
 
Hey, j'ai réussi à tout faire marcher avec la méthode automatique seulement après avoir changé le nom des fichiers client et les avoir mis dans le dossier cdm. Sauf que le fichier blob n'est pas trouvé dans le downloader OF. La device key elle est trouvée, après l'avoir renommée elle est passée en fichier "file". Quand j'ai renommé le fichier blob, il n'est pas passé d'un fichier bin à un fichier "file", est-ce que ça pourrait être la raison ?
 
Ouais, très probablement. L'extension doit changer en "file". Regarde l'image suivante :
imageddca91dc6d8f83c8.png
 
Tu sais comment faire pour que le fichier bin se transforme en file ? Ça ne s'est pas fait après l'avoir renommé. Que puis-je faire pour que ça se fasse ?
 
Peux-tu activer ceci :
imagee05d8dc9a426ec06.png

Comme ça tu peux voir si le fichier a encore l'extension derrière. (Si oui, en modifiant le nom tu dois enlever la partie .bin ou .pem, Windows va demander s'il peut changer l'extension, accepte simplement. Voir l'image suivante :)
image58f3368fe0e4ae5d.png
 
Merci mec, j'ai toujours le message comme quoi le fichier blob n'est pas trouvé, je sais pas ce que j'ai fait de travers, je vais tout refaire. La private key elle est reconnue par contre.
 
J'ai tout fait, donc je suis bloqué juste sur la partie des keys. J'ai d'abord cette erreur "Unable to start: Error binding to address 127.0.0.1:27042: Address already in use" puis quand je redémarre j'ai "'adb' is not recognized as an internal or external command"
 
Essaie ceci.
Au lieu d'appeler la commande adb comme ça :
Essaie plutôt ça :
 
Une idée de ce qu'est cette erreur ? Je l'ai avec la méthode manuelle et automatique
 
Je crois que j'ai déjà eu ça avant et j'ai fini par juste supprimer le téléphone et recommencer le processus
 
J'ai essayé ça mais pas de chance
Avec la méthode manuelle, même si les requirements sont satisfaits, j'ai toujours ModuleNotFoundError: No module named 'frida'
 
Retour
Haut