[Tuto] Signer des exécutables numériquement

Espace contenant des tutoriels divers concernant AutoIt.
Règles du forum
.

Tutoriel "La programmation avec Autoit" : https://openclassrooms.com/fr/courses/1 ... vec-autoit
Répondre
Avatar du membre
sylvanie
Niveau 11
Niveau 11
Messages : 1550
Enregistré le : jeu. 26 juil. 2007 21:31
Localisation : Paris
Status : Hors ligne

[Tuto] Signer des exécutables numériquement

#1

Message par sylvanie »

Bonjour,
suite à divers posts concernant la signature numérique des exécutables, je me lance dans ce tutoriel expliquant comment faire sans avoir à passer par une AC (Autorité de certification) payante.

Le principe est de générer sa propre AC puis générer un autre certificat qui lui aura pour but de signer les exécutables. (Ne jamais donner à un certificat d'AC un autre rôle qe de signer d'autres certificats).

L'avantage de cette méthode c'est qu'on est autonome et c'est gratuit.
L'inconvénient, comme vous n'êtes pas une AC reconnue par Microsoft il faudra installer une première fois votre certificat AC dans le magasin de certificat d'Internet Explorer (moyen de gérer tous les certificats de windows).
Une fois cette opération faite, tous les exécutable signer par un certificat issu de cette AC seront reconnu par l'OS. (utile pour les admin d'un réseau qui développe eux même leurs scripts!)

prérequis logiciel:
- signtool.exe : utilitaire de Microsoft inclus dans le SDK permettant de signer les exécutables: http://msdn.microsoft.com/en-us/windows ... 80924.aspx (prenez l'archive (image iso, pas l'installeur à 500ko sans l'installer obligatoirement, puis récupérez uniquement l'utilitaire. Attention il porte un nom bizarre contenant la sous chaine "signtool", donc faite une recherche pour le localiser puis renommez le signtool.exe). Je ne peux pas mettre l'exe en ligne à cause des droits de redistribution (même si le download est gratuit >_< ) Mon archive s’appelle GRMSDK_EN_DVD.iso
- Xca : utilitaire faisant sur surcouche graphique à Openssl permettant de générer facilement des certificats (à installer cette fois ci). (http://sourceforge.net/projects/xca/)

[Edit] : Lien de téléchargement de l'iso de Microsoft proposé par Strofe : http://www.microsoft.com/download/en/de ... en&id=8442
Celle - ci est moins lourde que celle que j'avais trouvée, mais vous devez surtout vérifier que l'exécutable extrait marche bien pour votre OS
Fichiers joints
tutocertif.doc
(1.22 Mio) Téléchargé 1241 fois
Toi qui cherche à mettre le doigt sur la solution, appuie sur F1.
Avatar du membre
Strofe
Niveau 5
Niveau 5
Messages : 182
Enregistré le : ven. 26 sept. 2008 23:16
Localisation : Picardie, Oise, Beauvais
Status : Hors ligne

Re: [Tuto] Signer des exécutables numériquement

#2

Message par Strofe »

Bonsoir

Merci, très intéressant... :D

Pour l'ISO

http://www.microsoft.com/download/en/de ... en&id=8442

Je vais mettre en oeuvre.

A+
Y a pas de problème, y a que des solutions. Reste à les trouver.
Avatar du membre
sablier94
Niveau 4
Niveau 4
Messages : 87
Enregistré le : lun. 20 sept. 2010 10:18
Localisation : Suisse
Status : Hors ligne

Re: [Tuto] Signer des exécutables numériquement

#3

Message par sablier94 »

Hello,

J'ai une petite question.
L'inconvénient, comme vous n'êtes pas une AC reconnue par Microsoft il faudra installer une première fois votre certificat AC dans le magasin de certificat d'Internet Explorer (moyen de gérer tous les certificats de windows).
Mais comment faire pour "installer une première fois votre certificat AC dans le magasin de certificat d'Internet Explorer" quand on distribue nos exécutables ? Ce n'est pas possible ?

Merci pour le tuto :D
Avatar du membre
Strofe
Niveau 5
Niveau 5
Messages : 182
Enregistré le : ven. 26 sept. 2008 23:16
Localisation : Picardie, Oise, Beauvais
Status : Hors ligne

Re: [Tuto] Signer des exécutables numériquement

#4

Message par Strofe »

Bonjour

ça marche....
Certificat : AC_RJ.p12
Mot de passe : RJ
Horodateur : http://www.trustcenter.de/codesigning/timestamp
Exe à signer : ac.exe

signtool sign /f AC_RJ.p12 /p RJ /t http://www.trustcenter.de/codesigning/timestamp ac.exe

Merci c'est super.
Y a pas de problème, y a que des solutions. Reste à les trouver.
Avatar du membre
sylvanie
Niveau 11
Niveau 11
Messages : 1550
Enregistré le : jeu. 26 juil. 2007 21:31
Localisation : Paris
Status : Hors ligne

Re: [Tuto] Signer des exécutables numériquement

#5

Message par sylvanie »

Strofe a écrit : ça marche....
Merci c'est super.
Bravo ! Dans le sens où quand j'ai rédigé ce tuto je me disais qu'il y avait tant de choses à faire que personne n'irait au bout. Merci d'avoir été si courageux ! :mrgreen:

@Sablier94 : C'est possible de lancer l'installation, j'avais aidé quelqu'un sur l'ancien forum avec une histoire de pfx (un pkcs12) mais ça lance l'interface graphique puis faut bricoler à coups de controlclick (ce que je n'aime pas vraiment...). Si c'est pour automatiser sur l'installation d'un parc, pourquoi pas. Pour un particulier faut voir ...
Toi qui cherche à mettre le doigt sur la solution, appuie sur F1.
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11773
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [Tuto] Signer des exécutables numériquement

#6

Message par Tlem »

sylvanie a écrit :Bravo ! Dans le sens où quand j'ai rédigé ce tuto je me disais qu'il y avait tant de choses à faire que personne n'irait au bout. Merci d'avoir été si courageux ! :mrgreen:
Comme d'autres, j'ai été curieux, j'ai lu, j'ai essayé, mais j'ai trouvé la mise en pratique laborieuse et pas assez documentée. De ce fait, j'ai cherché et lu pas mal d'autres sujets, pour me donner une idée plus globale des autres méthodes. Il est vrai qu'à partir du moment ou le certificat à été généré, le reste est relativement simple à mettre en place, mais pour un novice la création du certificat et la signature d'un exécutable reste plus ou moins abstrait et assez technique.

C'est pourquoi j'ai écrit un tutoriel plus imagé et plus détaillé.
Je fait appel à des outils différents, tel que les programmes en ligne de commande proposé par Microsoft, ainsi qu'à des outils presque clé en main trouvé sur le Net.

Tout n'est sans doute pas parfait, car je n'ai aucune maitrise sur le sujet, donc il risque fort d'évoluer au cours du temps, car le but serait de le compléter et d'automatiser certaines tâches avec AutoIt. ;)

En espérant que cela aide ceux qui n'aurait pas compris le tutoriel de sylvanie. 8)

Pour accéder au tutoriel, c'est par ici
@sablier94
L'enregistrement d'un certificat dans Windows, est et doit resté manuel, car une fois le certificat mémorisé, chaque programme signé avec celui-ci sera reconnu comme certifié provenant de vous. A vous de donner confiance aux destinataires de vos programmes. ;)
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Répondre