web-dev-qa-db-fra.com

Comment puis-je ouvrir les fichiers SDM.pkg et .sdx sur Ubuntu?

J'aimerais télécharger des images de disque Windows 8, mais les fichiers que j'ai pour le téléchargement sont SDM.pkg et 100189659562.sdx. Comment puis-je ouvrir ces fichiers sur mon ordinateur sous Ubuntu?

17
iair linker

J'ai téléchargé une console gratuite XP VM de VirtualBox à partir de ressource VM de Microsoft pour les développeurs Web (modern.ie) , et utilisée SDM à l'intérieur de la VM pour télécharger les images dans un "dossier partagé" de VirtualBox sur le système hôte. (Le vin n'a pas fonctionné pour moi (essayé à la manière de Bernd, Ubuntu 13.10).)

9
Florian Sesser

J'ai eu le même problème et finalement, après quelques semaines d'ingénierie inverse, j'ai écrit un programme capable de décompresser un fichier SDC. Vous pouvez trouver des instructions pas à pas sur ma page à droite ici :

Il y a environ un mois, j'avais un besoin urgent de télécharger une copie de Microsoft Windows de Dreamspark. Malheureusement, je n’ai pas encore installé Windows, donc j’ai dû le faire avec Linux. Après la transaction réussie, on m'a donné un lien vers un fichier SDX et un programme appelé SDM. Il semblait que ce serait facile. Mais ce n’était pas le cas. Le programme que j'ai été invité à télécharger était une archive avec extension .pkg. Comme je l'ai découvert quelques minutes plus tard, il s'agissait d'un package d'application OS X. La prochaine étape consistait donc à télécharger la version Windows et à l'exécuter à l'aide de Wine. Ça a échoué. Ensuite, j'ai essayé de trouver des astuces sur le net. J'ai trouvé quelques autres personnes ayant le même problème. Certains d'entre eux pourraient télécharger à l'aide de Wine et d'autres non. Pour moi, il n'y avait qu'une solution: le faire moi-même. Comme vous l'avez probablement deviné, cette opération a été un succès (presque) total.

Solution

Si vous avez déjà un fichier SDC, veuillez ne pas sauter car vous n’avez probablement toujours pas de clé pour décompresser le fichier. La première étape consiste à ouvrir le fichier SDX dans votre éditeur de texte préféré. Vous verrez un lien. Ouvrez-le dans un navigateur Web. Vous devez maintenant accéder à la source de la page. La façon dont cela peut être fait dépend de votre navigateur Web. Nous devons maintenant trouver quelques valeurs étranges dans le code. Pour ce faire, le moyen le plus simple consiste à rechercher le mot clé "edv *", où * correspond au nombre de fichiers que vous souhaitez télécharger, à compter de 1 (ils figurent dans la liste "Éléments" de la page que vous avez ouverte). Vous devez maintenant copier quelque part les valeurs des variables suivantes: ‘oiopu *’, ‘oiop *’, ‘fileID *’ ( - voir ci-dessus). Le dernier élément dont nous avons besoin est ‘dlSelect ’, mais vous devez effectuer une recherche, car il se trouve à un endroit différent. Vous pouvez maintenant créer une URL qui vous permettra de créer un fichier contenant deux valeurs intéressantes: l'URL du fichier et la chaîne de déchiffrement. Le format de cette URL est:

http://[SDXdomain]/WebStore/Account/SDMAuthorize.ashx?oiopu=[oiopu]&f=[fileID]&oiop=[oiop]&dl=[dlSelect]

Maintenant, vous devriez voir un fichier XML qui ressemble à ceci:

<information>
 <oiopua>01234abcd-0123-4567-890a-0123456789ab</oiopua>
 <edv>0123456789^^0123456789QwErTyUiOpAsDfGhJkLzXc0123456789QwErTyUiOpAsDfGhJkLzXc12345678</edv>
 <linkAvailable>1</linkAvailable>
 <errorTextKey/>
 <invokeExternalDownload>0</invokeExternalDownload>
 <fileUrl><![CDATA[http://software.dreamspark.com/dreamspark/ENGLISH/SDCfileName.sdc]]></fileUrl>
</information>

La dernière étape consiste à télécharger le fichier à partir de fileUrl et à enregistrer la valeur edv dans le fichier. L’important est que le fichier avec une clé soit nommé exactement comme un fichier SDC avec l’ajout du suffixe ".key".

Mettre à jour:

Je viens de découvrir que les choses deviennent un peu différentes lorsque la taille du fichier dépasse 2,0 Go. Dans ce cas, Dreamspark divise un fichier en deux fichiers ou plus. Cette situation pourrait être facilement reconnue, car le suffixe du nom de fichier sdc est le suivant: ".01.sdc". Dans ce cas, vous devez essayer de télécharger un fichier dont l’URL ne diffère que par ce chiffre, c’est-à-dire. ".01.sdc", ".02.sdc", ".03.sdc". Lorsque vous rencontrez le dernier fichier, il devrait avoir une taille inférieure à celle du reste et incrémenter ce nombre de un devrait vous donner une erreur BlobNotFound.

Après avoir téléchargé tous les fichiers, ils doivent simplement être réunis en un. Cela peut être facilement réalisé avec dd, c.-à-d.

 dd if=pl_windows_7_professional_with_sp1_x64_dvd_u_676944.02.sdc >> pl_windows_7_professional_with_sp1_x64_dvd_u_676944.01.sdc

et puis éventuellement

 dd if=pl_windows_7_professional_with_sp1_x64_dvd_u_676944.03.sdc >> pl_windows_7_professional_with_sp1_x64_dvd_u_676944.01.sdc

Après cela, vous obtiendrez le fichier sdc prêt à être décompressé.

Déballer le SDC

Maintenant que vous avez un fichier SDC, vous pouvez commencer à le décompresser. La partie précédente était, du moins pour moi, très facile. Le problème a commencé lorsque j'ai essayé de découvrir comment le fichier était stocké dans ce conteneur. Mais ne vous inquiétez pas, j’ai écrit un programme simple pour le faire à votre place. À ce jour (le 1er juin), il est encore au tout début du stade alpha et a beaucoup de contraintes. Il est capable de décompresser des conteneurs ne contenant qu’un seul fichier compressé, ne crée aucun répertoire, ne peut pas vérifier la somme de contrôle du fichier et probablement quelques autres problèmes dont je ne me souviens pas ou que je ne connais pas.

Si vous cherchiez un peu dans Internet, vous avez probablement découvert que quelqu'un a déjà craqué ce conteneur . Malheureusement, Microsoft a changé de format depuis. Il est également possible qu'en réponse à cet article, il soit à nouveau modifié. Pour rendre un peu plus difficile le blocage de mon logiciel, je publie le code source sur github et, une fois le processus de reverse engineering terminé, rédige un deuxième article décrivant le fonctionnement sous le capot et décrivant le format de fichier sdc.

Mais revenons au déballage. Maintenant, vous devez télécharger xSDM de github . La dernière version peut être téléchargée en tapant

git clone https://github.com/v3l0c1r4pt0r/xSDM.git

dans votre terminal (bien sûr, vous devez avoir installé git). Néanmoins, je vous conseille de télécharger la dernière version étiquetée. Vous pouvez le faire en cliquant sur les versions sur la page du projet, puis en choisissant celle qui se trouve en haut (ou la première version bêta/stable, le cas échéant), puis en cliquant sur "tar.gz". tar.gz peut être décompressé en tapant

tar -zxvf xSDM-[tag-name].tar.gz

dans la console. Puis entrez dans le répertoire xSDM en tapant

cd xSDM

(ou votre répertoire de publication) et compilez le programme en standard

./configure
make
make install

où l'installation est facultative. Maintenant, pour décompresser votre fichier, il vous suffit de taper

 src/xsdm [path-to-your-sdc-file]

Et c’est tout, vous devriez maintenant pouvoir ouvrir le fichier que vous avez téléchargé. Comme mentionné ci-dessus, le programme est en alpha très tôt et je ne peux donc pas garantir qu'il fonctionnera dans tous les cas. Si vous rencontrez des problèmes, n'hésitez pas à ouvrir le numéro sur la page du projet sur github.

Le décompresseur SDC peut être téléchargé de github .

7
v3l0c1r4pt0r

".Pkg" est une extension des fichiers du programme d’installation habituellement utilisés pour l’installation d’un logiciel, principalement pour installer des applications sous Mac OS X. Ces fichiers peuvent être installés individuellement ou être référencés à l’aide d’un fichier. script d'installation qui fait partie du logiciel.1

Le fichier .pkg que vous avez mentionné est le programme d'installation de Secure Download Manager ("SDM"). Ce programme ne fonctionne pas sous Ubuntu et nécessite l’utilisation d’un système d’exploitation Mac pour le faire fonctionner. Il ne peut être ouvert que sur Mac car il n’est pas correctement extrait ou installé sous Ubuntu. 2

Donc, vous aurez d’abord besoin du programme d’installation MSI pour obtenir les packages nécessaires. Pour obtenir cela sur une machine Ubuntu, vous devrez probablement changer votre agent utilisateur pour qu'il soit celui d'une machine Windows afin que le lien vous permettant de télécharger le package MSI soit fourni. Cela peut être fait dans de nombreux navigateurs via une extension - par exemple. pour Firefox . Vous pouvez ensuite le configurer sur l’équivalent Windows de votre navigateur, télécharger les fichiers MSI et SDX et désactiver l’extension si vous le souhaitez.

Vous pouvez maintenant utiliser WINE pour vous permettre d’exécuter ce fichier contenant uniquement des fenêtres. WINE est un progiciel qui permet à certaines applications Windows de s'exécuter sous Linux. Pour installer, appuyez simplement sur Ctrl+Alt+T sur votre clavier pour ouvrir Terminal. Lorsqu'il s'ouvre, exécutez les commandes ci-dessous:

Sudo add-apt-repository ppa:ubuntu-wine/ppa
Sudo apt-get install wine
Sudo apt-get install winetricks

Assurez-vous que vous utilisez IE6 comme navigateur dans WINE - le SDM fonctionne uniquement avec cela et non avec IE9. Alors, pourquoi vous devez vous procurer le paquet winetricks

Ensuite, configurez le vin.

export WINEARCH=win32
export WINEPREFIX=~/.wine32
winetricks ie6

Maintenant, installez le SDM.

cd directory-where-you-saved-SDM.msi
wine msiexec /i SDM.msi    

Cliquez sur l'installateur. Changez le répertoire d'installation en C:\SDM\ou quelque chose de similaire

Maintenant, vous devez obtenir le fichier .sdx. Sauvegarde le. Le fichier s'appelle quelque chose comme 100001234.sdx.

Maintenant, pour tout mettre ensemble:

wine ~/.wine32/drive_c/SDM/e-academy\ Inc/SecureDownloadManager/SecureDownloadManager.exe 100001234.sdx

N'oubliez pas de changer le nom du fichier sdx et le chemin de l'exécutable, si nécessaire.

1 Source: Techyv

2  Source: réponse de Thomas W

Source: Fils de la science

4
Mitch

Je viens de trouver Linux-SDM-Downloader de GitHub

Il télécharge bien les fichiers SDC.

Cependant, il ne peut plus extraire les fichiers de clés.

Je pense que ça vaut le coup d'essayer, cependant :-)

Ce programme doit être suivi et qui sait, un jour, l'extraction de clé fonctionnera.

1
SebMa

Ma solution la plus pratique actuellement avec des fichiers SDM.msi et SDX plus récents:

Utilisez les plus récents winetricks et installez .net 4.5.2

wget https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks
bash winetricks dotnet452 corefonts

Installer le gestionnaire de téléchargement

wine msiexec /i SDM.msi

Prendre plaisir

0
Tom Siwik