Création et Mise en Place d`ActiveX pour UltraVNC SC
Transcription
Création et Mise en Place d`ActiveX pour UltraVNC SC
Création et Mise en Place d’ActiveX pour UltraVNC SC Présentation Un ActiveX est un composant logiciel additionnel compilé en module et qui porte généralement l'extension .ocx . Il permet donc en fait d'ajouter les fonctionnalités d'un programme dans un autre, sans pour autant que le programme hôte soit obligé de disposer des sources de l'ActiveX au moment de sa compilation. Cette technologie est la réplique de Microsoft au langage Java et de son système de plug-in. C'est une technologie propriétaire des systèmes Microsoft. Ainsi les ActiveX sont pilotés en général par le langage VBScript ou Jscript et sont exploitables par les navigateurs Internet Explorer. Chaque ActiveX dispose d'un module, d'un nom, d'un identifiant unique (uuid ou clsid), et d'un numéro de version qui lui sont propres. L’intérêt d’un Contrôle ActiveX (lorsqu’il est couplé à un certificat de sécurité valide) réside dans la possibilité d’exécuter directement un programme à partir d’une page HTML sans avoir besoin de solliciter l’utilisateur. Dans le cadre de la mise en place d’un module UltraVNC SC accessible via un Intranet ou Internet, (170 Ko), l’utilisation d’un contrôle ActiveX prend tout son sens. Réalisation La réalisation de notre contrôle ActiveX se fait en 3 temps : la préparation, la création et la mise en production. 1. Préparation Au cours de la phase préparatoire, nous allons commencer par rassembler tout ce dont nous allons avoir besoin pour la réalisation de notre contrôle ActiveX ainsi que pour la création du certificat de sécurité. Il nous faut : AutoLoad Web Builder Lite 1.0, CodeSigningx86.exe, ainsi qu’un certificat de sécurité et, bien sûr, un fichier à exécuter. AutoLoad Web Builder Lite 1.0 est une application permettant de générer notre contrôle ActiveX à partir d’un fichier exécutable ainsi que la page web permettant de le charger. A noter qu’il inclus également l’utilitaire de Microsoft signcode.exe destiné à appliquer le certificat de sécurité sur le fichier CAB généré ; le pack CodeSigningx86.exe est donc optionnel. Guide réalisé par Sparad0x pour www.ultravnc.fr CodeSigningx86.exe est un package d’utilitaires Microsoft permettant de gérer et d’appliquer des certificats ; comme indiqué précédemment, signcode.exe étant inclus dans AutoLoad Web Builder, ce package est optionnel. Pour la génération du certificat, nous avons sollicité les services de Ascertia qui propose de générer gratuitement des certificats de sécurité (cf procédure ci-dessous). Bien sûr, si nous avions pu employer un certificat Verisign, cela aurait été plus simple à mettre en place, mais à 500$ /an pour un certificat, ça fait cher l’application. 2. Création 2.1. Le Certificat Pour créer le certificat, il faut donc se rendre sur le site de Ascertia (en utilisant impérativement Internet Explorer 5.5 +) et choisir de générer un Certificat Gratuit (Free Certificates). Il faut commencer par se créer un compte. Puis dans le type de Certificat, choisir Code Signing Certificate, et cliquer sur "Submit". Une demande d'acceptation pour la clé RSA apparait; il faut l'accepter. Ensuite, dans la fenêtre qui s'ouvre, faites un copier-coller du texte du certificat vers un fichier texte que vous renommerez ensuite certificat_SC.p7b. Puis faites un clic-droit sur le fichier certificat_SC.p7b fraichement créé, et choisissez d'installer le certificat. 2.2. Le Contrôle ActiveX Il faut tout d'abord installer AutoLoad Web Builder, puis l'exécuter. Après une première page d'accord de licence, il vous est demandé de sélectionner le fichier exécutable qui devra être lancé. Une fois que c'est fait, AutoLoad Web Builder vous annonce que tous les fichiers ont été générés dans un dossier nommé AWB créé sur le Bureau. Notre contrôle ActiveX étant maintenant créé, nous allons pouvoir lui appliquer le certificat qui a été généré un peu plus tôt. Guide réalisé par Sparad0x pour www.ultravnc.fr 2.3. Application du Certificat Pour appliquer le certificat au fichier CAB généré par AutoLoad Web Builder, nous allons nous servir de signcode.exe, un petit utilitaire fourni par Microsoft et conçu pour ça. Il est soit disponible dans le répertoire d'installation de AutoLoad Web Builder, soi dans le package CodeSigningx86. Lorsqu'on exécute signcode.exe, il commence par nous demander quel est le fichier à signer. Nous lui indiquons donc le fichier remote.cab généré par AutoLoad Web Builder (en pensant bien à sélectionner Fichiers CAB (*.cab) comme type de fichiers). Puis nous laissons les Options de signature sur le choix Par défaut. Ensuite, dans le choix du Certificat de signature, il nous faut cliquer sur A partir du magasin…, et sélectionner le certificat que nous avons installé un peu plus tôt. Enfin, dans Description des données, nous mettons toutes les informations nécessaires. Il ne reste plus qu'à cliquer sur suivant, puis sur Terminer, et à répondre OK lorsque la fenêtre signalant qu'une application demande l'accès à un élément protégé apparaît. Notre fichier CAB est maintenant signé numériquement. 3. Mise en Production Pour la mise en production du contrôle ActiveX, il y a plusieurs choses à faire. Tout d'abord, il faut mettre les fichiers en ligne. Les fichiers htmllogo.jpg, progress.gif et install.htm peuvent être personnalisés à vos couleurs. Le fichier remote.cab correspond au fichier qui sera exécuté par le Contrôle ActiveX. Enfin, le fichier remote.exe correspond au choix d'exécution manuel laissé à l'utilisateur au cas où le contrôle ActiveX ne fonctionnerait pas (Contrôles ActiveX désactivé, navigateur non-compatible, etc.). Ensuite, pour que l'ActiveX fonctionne (et c'est quand même là le but de l'opération), il faut diffuser le certificat de sécurité à l'ensemble des utilisateurs. Pour cela, sur un domaine, le plus simple est probablement d'utiliser une GPO (à noter qu'avec un certificat déjà inclus dans IE - Verisign, Thawte, etc. - cette phase de diffusion n'est pas nécessaire), ou d'effectuer l'installation du certificat à l'aide d'un Script VB inclus dans une page HTML (cf. Annexe). Conclusion L'intérêt du contrôle ActiveX est donc la simplicité et la transparence d'utilisation pour l'utilisateur final. Il permet d'exécuter une application directement à partir d'une page web, sans nécessiter de téléchargement ni d'installation. Guide réalisé par Sparad0x pour www.ultravnc.fr Annexe Voici comment procéder pour installer un certificat à l'aide d'Internet Explorer et du contrôle ActiveX CEnroll. Ca permet d'éviter l'apparition de l'assistant d'installation de Certificat Microsoft et les nombreuses demandes complexes faites à l'utilisateur. Il faut toutefois que les scripts soient autorisés. Il faut disposer du texte du certificat (cf 2.1 Le Certificat), ainsi que d'un éditeur HTML (ou, à défaut, du WordPad). On crée une page HTML avec le contenu suivant: <html> <head> <title>Installation du Certificat UltraVNC SC réalisée par Sparad0x</title> </head> <body language="VBScript" onload="InstallCert"> <script language="VBSCRIPT"> Sub InstallCert credentials = "MIIJqwYJKoZIhvcNAQcCoIIJnDCCCZgCAQExADALBgkqhkiG9w0BBwGgggmAMIIC7TCCAdWg" & _ "AwIBAgIBDTANBgkqhkiG9w0BAQUFADA7MQswCQYDVQQGEwJHQjERMA8GA1UEChMIQXNjZXJ0" & _ "aWExGTAXBgNVBAMTEEFzY2VydGlhIFJvb3QgQ0EwHhcNMDMwMzEwMDc1NjA3WhcNMTIwNzMw" & _ "FcVbDiqKhcg/zCVVR+W1wL3F74n649pAq268kS3e6gDMevGzxf0S5hPOY9MtE6wxAA==" On Error Resume Next Dim Enroll Set Enroll = CreateObject("CEnroll.CEnroll.2") if ( (Err.Number = 438) OR (Err.Number = 429) ) Then Err.Clear Set Enroll = CreateObject("CEnroll.CEnroll.1") End If if Err.Number <> 0 then document.write("<h2 align=center>Impossible de démarrer l'instance de contrôle CEnroll: " & Hex(err) ) Else Call Enroll.InstallPKCS7(credentials) If err.Number <> 0 then document.write("<h2 align=center>Problèmes détectés pendant le téléchargement du Certificat UltraVNC SC" & " error: " & Hex(err) ) Else document.write("<h3 align=center>Le Certificat UltraVNC SC a été installé correctement</h3><p><a href=install.htm>Démarrer l'installation</a>") End if End If End sub </script> <br clear="all"> <p> <!-- Installation d'un certificat à l'aide de Internet Explorer et du controle ActiveX CEnroll ActiveX. Ca permet d'éviter l'apparition de l'assistant d'installation de Certificat Microsoft et les nombreuses demandes complexes faites à l'utilisateur. --><!-- Sources: http://pkidev.internet2.edu/rootcerts/ --></p> </body> </html> Les points importants: - credentials : c'est là qu'on met le contenu du certificat; les lignes doivent avoir ce nombre de caractères, commencer par ", et terminer par " & _ - <a href=install.htm>Démarrer l'installation</a> : page vers laquelle l'utilisateur sera invité à poursuivre après l'installation du certificat - L'utilisateur doit répondre Oui à la demande d'installation Guide réalisé par Sparad0x pour www.ultravnc.fr
Documents pareils
Tutorial UltraVNC 1.0.2 (ed2)
On peut connaitre son adresse IP internet en se connectant sur des sites tel que
http://www.adresseip.com/ (pour ne citer que lui…)
On doit donc faire parvenir son adresse IP à la personne qui so...