SUPINFO International University

SUPINFO Institute of Information Technology
Laboratoire Microsoft




Tous les Articles du Laboratoire Microsoft

Slipstreaming des patchs de sécurité
Accueil > Articles > Système
Auteurs 
Guillaume DESFARGES
MGI CONSULTANTS
Architecte Systèmes - MVP


 Tous les articles de cet auteur

4,7/5

Très Bien


56872
134/630

2. Slipstreaming d'Hotfix

2.1 Méthode manuelle (pré-Update.exe)

    Voici déjà quelques liens de références dont cette partie s'inspire:
    http://support.microsoft.com/default.aspx?scid=kb;en-us;814847
    http://support.microsoft.com/default.aspx?scid=kb;en-us;316037
    http://www.microsoft.com/windows2000/downloads/servicepacks/sp3/HFDeploy.htm#update_installation_methods_faaf
    http://www.microsoft.com/technet/security/topics/patchmanagement/hfdeploy.mspx

    Comme vous pourrez le voir cette méthode ressemble fortement à celle du svcpack, en effet, il est toujours nécessaire d'effectuer une manipulation (même si il n'y a aucune post installation effectuée) pour que le patch soit bien indiqué dans l'interface d'ajout/suppression de programmes de Windows ainsi que pour éviter d'avoir une erreur de copie pendant l'installation "écran bleu" indiquant un fichier corrompu.
    La première étape est de copier le contenu de votre répertoire i386 sur un emplacement accessible en écriture.
    Ensuite créez le répertoire \i386\SVCPACK et à l'intérieur de celui ci, copiez les exécutables de vos différents Hotfix

    Pour l'instant c'est la même chose que la méthode svcpack mais c'est à partir de maintenant que cela se complique, il faut modifier directement les sources de i386, pour ce faire vous devez extraire le contenant de la Hotfix, le mieux est d'utiliser la commande:

    Qxxxxxx.exe /X <Répertoire de travail>

    Il est fortement conseillé d'utiliser cette commande plutôt qu'un utilitaire de décompression, car certaines Hotfix n'utilisent pas le même algorithme de compression et les fichiers décompressés avec un utilitaire risquent de ne pas être ceux attendus voir totalement différents.
    Dans les fichiers extraits (ou dans un des sous répertoires) vous devriez avoir les fichiers binaires concernés par la Hotfix (souvent des fichiers .exe, .inf, .dll, .sys etc.), le fichiers de catalogue (QXXXXXX.cat) et des fichiers SP*.*, update.*, updapi.dll (j'espère que vous savez ce que veux dire l'étoile), ces fichiers doivent être copié comme suit:

    - Le fichier .cat au même endroit que le fichier d'hotfix (/i386/SVCPACK dans notre cas)
    - Les fichiers binaires concernéspar la hotfix (.sys, .exe, etc...) directement dans i386
            - Les équivalent des fichiers binaires doivent être effacé du répertoire i386, c'est à dire que si vous avez copié un binaire tcpip.sys, son équivalent (tcpip.sy_, tous les fichiers originaux ont la dernière lettre de leur extension remplacé par un "_" ) doit être effacé.
            - En cas de conflit (demande d'écrasement) seule la version du fichier système la plus haute doit être privilégiée, pour connaître la version, faites un bouton droit->Propriétés sur vos fichiers système et regardez l'onglet "Version"


    - Les autres fichiers ( SP*.*, update.*, updapi.dll ) peuvent être ignorés et effacés.
    - Supprimez le fichier /i386/svcpack.inf ou /i386/svcpack.in_ sauf bien sûr si ce fichier avait été créé précédemment par vos soins pour une autre utilisation ou pour une autre Hotfix.
    - Créez/Modifiez le fichier /i386/svcpack.inf avec ce contenu:

[Version]
Signature="$Windows NT$"

 [SetupData]
CatalogSubDir="\i386\svcpack"

[ProductCatalogsToInstall]
 QXXXXXX.cat
 QXXXXXX.cat

 [SetupHotfixesToRun]
 QXXXXXX.exe /q /n /z
 QXXXXXX.exe /q /n /z

            Où QXXXXX représente le nom des fichiers .exe et .cat de vos hotfix contenus dans le répertoire /i386/svcpack
    -
Editez le fichier \i386\dosnet.inf pour lui indiquer l'existence du répertoire svcpack
        - Ajoutez la mention du répertoire svcpack dans la section [OptionalSrcDirs]

[OptionalSrcDirs]
svcpack

        - Optionnel: Ajoutez le nom de tous les fichiers de pilotes que vous avez insérez dans le répertoire i386 dans la section [ForceCopyDriverCabFiles]

[ForceCopyDriverCabFiles]
xxxxxx.sys

                    Cette partie optionnelle n'est nécessaire que si vous désirez mettre en place des Hotfix qui sont en conflit avec des fichiers de pilotes intégrés dans le driver.cab ainsi que les SP1.cab, SP2.cab.....

    Cette procédure est à répétée pour chacune des Hotfix que vous souhaitez intégrer. Celles ci apparaîtront dans ajout/suppression de programmes sans indication de date d'installation:

    Ce qui vous permettras de repérer les installations à intégrer dans une nouvelle mise à jour de votre master car celles ci seront indiquées avec une date d'installation dans cette même fenêtre.:

 

    Vous pouvez facilement vous rendre compte du travail fastidieux que représente le slipstreaming manuel, surtout vu le nombre de Hotfix devant être installées sur un poste de travail XP. C'est pour cette raison que le moteur update.exe a été intégré dans les dernières versions d'Hotfix.

2.2 Le moteur Update.exe

    Ce moteur existe depuis très longtemps et était intégré aux différents service pack pour permettre la mise à jour de votre Windows mais aussi le slipstreaming automatique du service pack dans vos sources d'installation de Windows. Ce moteur a été dernièrement (contemporain du SP2 de Windows XP) intégré aux hotfix pour permettre un slipstreaming automatique de celles ci.

    Dorénavant pour intégrer vos Hotfix à vos source d'installation il vous suffit d'exécuter la commande:

        Qxxxxxx.exe /integrate:<répertoire source>

    Où <répertoire source> correspond au répertoire contenant le dossier i386 de votre installation, ensuite le moteur update.exe (contenu dans le hotfix) prend la main et réalise toutes les manipulations de la partie précédente, rendant la mise à jour manuelle presque obsolète.


    Pourquoi je dit "presque"?
        Et bien parce qu'un moteur automatique n'est pas exempt de défaut. L'exemple type est celui d'une Hotfix qui a été mise à jour (V2 de la Hotfix) pour satisfaire un problème inhérent au patch, ainsi une Hotfix post SP2 concernant la couche TCP/IP a été mise à jour après qu'une autre Hotfix touchant le même fichier soit sorti. L'effet est que, si vous intégrez une de ces deux Hotfix, l'autre ne voudra pas s'installer (erreur de détection de la version de Windows). La seule solution sera d'intégrer de manière manuelle la seconde Hotfix en faisant très attention à la version du binaire qui est remplacé en suivant la procédure précédente.

    Le moteur update.exe rend l'intégration de vos Hotfix réellement plus simple, le temps de travail est fortement réduit étant donné que toutes les étapes sont réduites à une seule commande, maintenant il n'y a plus d'excuse pour ne plus intégrer vos patchs de sécurité à vos sources d'installation.


1. Contexte
       1.1 Introduction
       1.2 Méthode "svcpack/cmdlines.txt" et ses risques
2. Slipstreaming d'Hotfix
       2.1 Méthode manuelle (pré-Update.exe)
       2.2 Le moteur Update.exe
Conclusion



En Savoir Plus 
Evaluez cet article 


Pour afficher ou poster un commentaire, cliquez sur ce lien : Forum-Microsoft



Retrouvez ci-dessous les autres sections du Laboratoire Microsoft