1 points par GN⁺ 2024-09-08 | 1 commentaires | Partager sur WhatsApp

Introduction

  • Un bug découvert lors du contournement de la vérification des licences Windows a été gardé secret afin de préserver une future méthode d’activation et de servir d’outil de test
  • Une méthode de contournement du DRM appelée "Keyhole" a été découverte, permettant de licencier facilement des applications Microsoft Store ou des éditions récentes de Windows
  • Après la publication de la CVE-2024-38184 par Cisco TALOS, il a été décidé de partager les découvertes sur Keyhole

CLiP

  • CLiP (Client Licensing Platform) est le système DRM introduit dans Windows 10 pour gérer les applications Microsoft Store et l’activation de Windows
  • Principaux binaires :
    • clipup.exe : convertit les licences du Store de Windows 8 en licences numériques
    • clipsvc.dll : service en mode utilisateur qui gère les licences des applications
    • clipc.dll : API permettant aux applications d’interagir avec CLiP
    • clipwinrt.dll : API pour les applications UWP
    • clipsp.sys : pilote en mode noyau qui vérifie les licences
  • Lors de l’installation d’une application sous licence CLiP, un fichier XML signé est transmis à clipsvc.dll, puis après vérification à clipsp.sys, qui l’enregistre dans le magasin de licences

Un peu de bricolage

  • Une clé ECDSA valide est stockée en clair dans clipup.exe, ce qui permet à n’importe qui de signer facilement des licences XML
  • Cette clé permet de contourner la vérification de ClipSvc et d’envoyer directement à ClipSp les blocs de licence souhaités

Désobfuscation de ClipSp

  • ClipSp est un pilote mal conçu, avec beaucoup de code copié-collé
  • Le code est dissimulé à l’aide de l’outil d’obfuscation Warbird de Microsoft
  • La désobfuscation permet d’analyser le code caché et de trouver des bugs

Blocs de licence

  • Les blocs de licence stockent des informations de licence importantes et contiennent plusieurs blocs de données au format TLV (tag-length-value)
  • Le bloc de signature signe toutes les données, mais les données ajoutées après la signature ne sont pas vérifiées
  • Il est possible d’ajouter des données après le bloc de signature afin d’écraser les données existantes

Beaucoup de bricolage

  • En ajoutant des données après le bloc de signature, il est possible de créer des licences pour tous les produits du Microsoft Store
  • En revanche, les licences liées à l’appareil ne peuvent être générées qu’à partir d’une licence d’application elle-même liée à l’appareil

Tutoriel de bricolage

  • Installer une application liée à l’appareil (par exemple Roblox) et intercepter sa licence avec un outil de capture du trafic HTTPS
  • Décoder le bloc de licence, ajouter les données nécessaires, puis le reconditionner dans un nouveau fichier XML
  • Copier le fichier XML dans le dossier C:\ProgramData\Microsoft\Windows\ClipSVC\Install\Migration, puis redémarrer ClipSvc ou l’installer avec la commande clipup -p
  • Windows est activé de manière permanente

Fin de partie

  • Cisco TALOS a signalé le même bug, et Microsoft l’a corrigé
  • Le bug a été corrigé pour empêcher le traitement des données placées après le bloc de signature

Saison des dons

  • Le code générant les licences Keyhole et les binaires CLiP ont été publiés afin d’encourager la découverte d’autres bugs

Et une autre histoire

  • Le code de ClipSp a été copié-collé depuis le système DRM de la Xbox One
  • Xbox SP présente le même bug d’analyse, mais Keyhole ne fonctionne pas sur Xbox

Crédits

  • Personnes ayant contribué à la recherche : May, asdcorp, echnobas, WitherOrNot, emoose, LukeFZ, KiFilterFiberContext, Phillippe Laulheret, Cisco TALOS, Rairii

Résumé de GN⁺

  • Keyhole est une puissante méthode de contournement du DRM permettant de licencier facilement des applications Microsoft Store et des éditions de Windows
  • Il est possible de manipuler les blocs de licence en exploitant une faille de sécurité du système CLiP
  • Microsoft a corrigé le bug à la suite du signalement de Cisco TALOS
  • Le système présente une structure similaire à celle du DRM de la Xbox One
  • Cet article peut aider à comprendre les vulnérabilités des systèmes DRM et à renforcer la sécurité

1 commentaires

 
GN⁺ 2024-09-08
Avis Hacker News
  • Il est désormais possible de télécharger gratuitement des jeux Xbox
    • Comme la PS Vita, c’est désormais complètement hacké
  • Souhaite obtenir une licence d’installation pour l’application Lego Boost sur Windows 10
    • Le téléchargement reste possible avec une licence existante, mais plus pour les nouveaux utilisateurs
  • Microsoft pourrait réduire la portée de la clé de signature de licence temporaire
    • Générer des licences permanentes ne devrait pas durer longtemps
  • Se demande s’il est possible d’activer l’extension HEVC sans compte M$
    • Frustration face à l’impossibilité d’accorder les brevets sous une licence groupée
  • Veut jouer à Guitar Hero sans disque physique
    • Il se peut que les sauvegardes du jeu ne puissent pas être lues
    • La clé publique de la console figure dans la liste de révocation
    • Il est possible de résoudre le problème en re-signant le fichier CON avec la valeur par défaut 0
  • Toute cette situation semble très familière
  • Fournit un lien au cas où l’antivirus censurerait la page
  • Découvert indépendamment, presque au même moment où cela a été signalé à Microsoft
    • Très suspect
  • Clip semble plus ancien que la Xbox One
  • Cela a été pendant des décennies le meilleur canal de distribution et de communication de Windows
  • Un peu mal à l’aise à propos de massgrave.dev