Instructions pour la sécurisation des actions personnalisées

Le respect des instructions suivantes lors de la création d’un package Windows Installer avec des actions personnalisées permet de maintenir un environnement sécurisé pendant l’installation :

  • Sécurisez tous les fichiers supplémentaires écrits par votre action personnalisée.
  • Vérifiez la longueur de la mémoire tampon et la validité de toutes les données lues par votre action personnalisée. Cela inclut les propriétés qui peuvent fournir des données à votre action personnalisée, en particulier celles qui utilisent des propriétés publiques fournies par un utilisateur.
  • Ne vous appuyez pas sur des DLL externes qui ne sont pas approuvées par le système sur toutes les plateformes sur lesquelles votre package d’installation est destiné à s’exécuter.
  • Réfléchissez soigneusement à l’utilisation d’actions personnalisées qui utilisent des privilèges élevés ou l’emprunt d’identité. Les actions personnalisées telles que « ouvrir une URL une fois l’installation terminée », « lancer le logiciel une fois l’installation terminée » ou « lancer ReadMe une fois l’installation terminée » ne nécessitent généralement pas de privilèges élevés pour fonctionner. Si votre action personnalisée doit s’exécuter avec des privilèges élevés, assurez-vous que le code d’action personnalisé protège contre les dépassements de mémoire tampon et le chargement par inadvertance de code non sécurisé. Notez que pendant la phase d’exécution de l’installation, le programme d’installation transmet des informations à un processus avec des privilèges élevés et exécute le script. Toutes les actions personnalisées qui s’exécutent pendant la phase d’exécution peuvent s’exécuter avec des privilèges élevés.
  • Rassemblez toutes les informations fournies par l’utilisateur pendant la séquence d’interface utilisateur. N’invitez pas l’utilisateur à entrer des informations qui ne peuvent pas être définies à l’aide d’une propriété publique.
  • Si votre action personnalisée de script développe des propriétés, prenez des précautions pour que l’action personnalisée soit sécurisée contre la possibilité d’injection de script. Le script peut être enregistré en texte clair.

Consultez également Sécurité des actions personnalisées.