Comment vérifier l’authenticité d’une image ISO : Windows, Office, etc…?
Sommaire
I. Présentation
Cet article a pour but de vous sensibiliser à l'importance de la vérification de l'intégrité des sources d'installation pour vos images ISO. Nous verrons également comment répondre à la question suivante : comment vérifier l'authenticité d'une image ISO ?
Nous allons parler d'un principe fondamental de la cybersécurité qui est la préservation de l'intégrité des sources. Que ce soit dans un contexte professionnel ou personnel, il est fréquent de rencontrer des sources historiques ou des versions obsolètes de logiciels, souvent sans un suivi approprié.
Il n'est pas rare de trouver des fichiers ISO de SQL Server ou de Windows téléchargés ou modifiés sans une référence adéquate au hash ou à la source de téléchargement correspondante.
Nous allons voir comment grâce à l'outil Check-ISO ou PowerShell et des sources fiables, qu'il sera possible de vérifier nos sources pour les images ISO de produits Microsoft.
II. Rappel sur l'intégrité des sources
A. Téléchargement de source Microsoft
Microsoft propose de télécharger les sources pour les particuliers et professionnels n'ayant pas d'abonnement à partir du centre de téléchargement disponible à l'adresse suivante : https://www.microsoft.com/fr-fr/download
Ce centre permet de télécharger les sources pour divers produits comme SQL Server, Windows Server, et Office. Malheureusement, seules les dernières versions mises à jour ou supportées sont disponibles. Pour Windows 11 où Microsoft propose la dernière version en encourageant à vérifier le hash une fois le téléchargement terminé.
Microsoft fourni un tableau des hash correspondant aux différentes langues disponibles.
Pour les entreprises, le même principe est proposé de partir du centre de gestion des licences en volume, le portail professionnel.
B. Problématique
Malgré les consignes de Microsoft, la charge de travail et le temps que cela requiert peuvent être importants et faire que la vérification de l'intégrité des sources n'est pas effectuée. Nous avons remarqué que régulièrement, tant dans les entreprises que chez les particuliers, ces actions ne sont pas respectées.
Peu de personnes téléchargent à partir du portail officiel ou gardent des traces de hash. D'autant plus que les prestataires infogérants n'ont souvent pas accès à ce dernier et utilisent parfois des sources partagées ou provenant d'autres endroits. Passer une après-midi à récupérer ou chercher les hash d'une version qui n'est plus supportée ou absente du portail n'est pas pratique...
Nous verrons ensemble comment apporter une réponse à cette problématique.
Remarque : le hash d'une image ISO sera identique entre deux fichiers, même s'il ne porte le même nom, mais que leur contenu est identique. Ainsi, nous pouvons vérifier l'authenticité d'une image à partir de son hash. Si elle est altérée, son hash sera modifié donc elle n'est plus authentique.
C. Risque de sécurité
Le grand risque réside dans les sources ISO modifiées par un tiers qui pourrait y injecter un malware ou un crack, pouvant endommager le système informatique.
L'image montre comment une source récupérée sur Internet non conforme ou à partir d'un partage manipulé par une personne malveillante, peut contenir un outil espion ou un dispositif capable de contourner la surveillance de sécurité.
Afin de remédier à cela, il est nécessaire de vérifier le hash de la source avant de l'installer. Nous allons voir comment effectuer cette vérification manuellement ou de manière automatisée avec un outil.
III. Vérifier l'intégrité d'une image ISO avec PowerShell
Il est possible d'obtenir le hash d'une image ISO ou d'un quelconque fichier à l'aide de PowerShell en utilisant la commande "Get-FileHash".
Voici un exemple pour vérifier l'intégrité du fichier "J:\ISO\WINDOWS\Windows\win_10.iso" :
Get-FileHash -Path "J:\ISO\WINDOWS\Windows\win_10.iso" -Algorithm SHA256
Vous trouverez plus d'informations sur la commande dans l'article suivant :
Une fois le hash obtenu, vous devriez le comparer avec une base de données fiable. En cas d'absence du hash dans le centre de téléchargement Microsoft, il est possible d'utiliser le site suivant :
C'est un projet initié par des membres du staff de Microsoft et des MVP, intégrant les hash de toutes les distributions Microsoft officielles.
Le site contient une base de données riche, avec 380 téraoctets d'informations et d'images ISO, sous réserve de Microsoft. Il demeure ainsi l'une des sources les plus fiables à ce jour, recommandée sur plusieurs forums et blogs, y compris dans les Q&A de Microsoft.
Il suffit de coller le hash obtenu dans la barre de recherche, numérotée 1, située dans l'onglet "Recherche", puis d'appuyer sur Entrée.
Cette tâche peut s'avérer lente ou contraignante pour un grand nombre d'images ISO à vérifier, surtout pour les utilisateurs non avertis. De plus, le lien du site peut être amené à changer.
Pour répondre à ce besoin, l'outil Check-ISO a été développé.
IV. Le projet Check-ISO
Suite à plusieurs demandes des membres de la communauté IT-Connect et afin d'automatiser et de faciliter les actions précédentes, le projet Check-ISO a vu le jour. Cela permettra de gagner en temps et en maniabilité dans le processus de vérification d'intégrité. L'outil est open source, disponible en français et en anglais, et développé par Dakhama Mehdi.
Cet outil est essentiel pour toute personne effectuant fréquemment des installations, qu'il s'agisse de techniciens, d'administrateurs système ou même de responsables de la sécurité des systèmes d'information (RSSI). Ceci vous permet de vérifier si votre image ISO correspond bien à une image officielle de Microsoft, et à quelle version elle correspond.
A. Utilisation
Il n'y a rien de plus simple pour l'utilisation de l'outil ; il suffit de le lancer sous les différents formats et de sélectionner votre fichier ISO. Il est disponible au format exécutable, PS1 (script PowerShell) et dans le Microsoft Store.
Indiquez ensuite le chemin de la source Microsoft à vérifier.
Vous avez la possibilité de sélectionner l'algorithme de hachage à utiliser pour la vérification.
Cliquez ensuite sur "Vérifier ISO" et patientez jusqu'à ce que la vérification soit complète. Notez que le temps de calcul dépend de l'algorithme utilisé ainsi que de la taille de l'ISO.
Une fois la vérification terminée, le nom de la source sera listé en vert, si cette dernière est authentique. Dans le cas contraire, un message en rouge sera affiché indiquant que la source n'a pas été trouvée, et n'a pas pu être vérifiée.
B. Téléchargement
Check-ISO peut être obtenu de deux manières. Tout d'abord, en passant par le Microsoft Store intégré à Windows.
Entrez le nom "Check ISO" dans la barre de recherche et installez l'outil, cette méthode offre les avantages suivants :
- Ne nécessite pas de droit admin
- La source est vérifiée par l'équipe Microsoft
- Cela garantira une mise à jour automatique des versions (pour régler les éventuels bugs)
La seconde méthode de téléchargement consiste à utiliser GitHub.
Accédez à la page du projet :
Copiez le code PowerShell disponible directement dans votre éditeur PowerShell ISE et enregistrez le projet. Vous avez également la possibilité de télécharger le code source au format ".ps1". La page du projet propose également une version portable de l'outil (.exe) signée pour en simplifier l'utilisation.
V. Conclusion
Désormais, vous êtes capable de vérifier l'authenticité d'une image d'un produit ou système d'exploitation Microsoft ! Vous n'avez plus d'excuses pour ne pas le faire ! La logique est la même pour d'autres images ISO ou fichiers, à condition de connaître le hash du fichier d'origine.
Bonjour,
Merci pour votre outil.
Quelques remarques néanmoins:
– l’icône de disquette correspond à l’enregistrement, pas à la sélection d’un fichier. Il faudrait changer l’icône.
– Le bouton Vérifier devrait être à droite, car c’est la dernière action. La sélection des paramètres de vérification intervient avant. Il faut donc inverser le choix de l’algorithme et le bouton Vérifier.
– Dans le code PowerShell, la fonction devrait s’appeler Check-Iso au lieu de CheckIso.
– Le parcours de l’interface au clavier est-il possible et ergonomique (TAB, entrée, …) et dans le bon ordre ?
– L’outil est-il utilisable en ligne de commande pure, sans lancer l’interface utilisateur ?
Bonjour Romain,
Merci pour ton retour et les remarques pertinentes, franchement j’en ai pas vu sous cet ongle, dans un premier temps on était à fond sur le code, j’ai effectué les changements et modification dans la nouvelle version disponible sur le Store.
Malheureusement victime de son succès 😀 le site retourne maintenant un message encodé en BR ou Zip impossible de le lire nativement par Powershell ce qui a ajouté une couche de difficulté surpasser dans la nouvelle version, par contre il me sera impossible de partager le code source permettant cela en convention avec le site, car ceci empêchera les gens de s’y rendre, en gros la méthode manuelle est valable ainsi que l’applis Store.
Cordialement,