Directrices para proteger acciones personalizadas

El cumplimiento de las siguientes directrices al crear un paquete de Windows Installer con acciones personalizadas ayuda a mantener un entorno seguro durante la instalación:

  • Proteja los archivos adicionales escritos por la acción personalizada.
  • Compruebe las longitudes del búfer y la validez de todos los datos leídos por la acción personalizada. Esto incluye propiedades que pueden proporcionar datos a la acción personalizada, especialmente aquellas que usan propiedades públicas proporcionadas por un usuario.
  • No confíe en archivos DLL externos que no sean de confianza para el sistema en todas las plataformas en las que vaya a ejecutarse el paquete de instalación.
  • Considere detenidamente si se van a usar acciones personalizadas que usen privilegios elevados o suplantación. Las acciones personalizadas, como "abrir una dirección URL una vez completada la instalación", "iniciar el software una vez completada la instalación", o "iniciar ReadMe una vez completada la instalación", normalmente no requieren privilegios elevados para funcionar. Si la acción personalizada debe ejecutarse con privilegios elevados, asegúrese de que el código de la acción personalizada protege contra saturaciones de búfer y carga involuntaria de código no seguro. Tenga en cuenta que durante la fase de ejecución de la instalación, el instalador pasa información a un proceso con privilegios elevados y ejecuta el script. Cualquier acción personalizada que se ejecute durante la fase de ejecución puede ejecutarse con privilegios elevados.
  • Recopile toda la información proporcionada por el usuario durante la secuencia de la interfaz de usuario. No solicite al usuario ninguna información que no pueda establecerse mediante una propiedad pública.
  • Si la acción personalizada del script expande las propiedades, tome precauciones para que la acción personalizada esté protegida frente a la posibilidad de inyección de script. El script puede registrarse en texto no cifrado.

Consulte también Seguridad de acciones personalizadas.