Estimados amigos de Inseguros !!!
El tema de hoy es la risa, porque no conozco empresa que lo tenga bien, y mira que doy vueltas por compañías de todo tipo…
Ejecución de scripts en Powershell. Recuerdo cuando se introdujo su uso, o mejor dicho, popularizó, con Server 2012 ejecutabas un script y no tiraba. En internet calculo que hay un millón y medio de post diciendo cómo desactivar la política de ejecución de scripts en Windows. ( 500.000 en castellano).
Hablo del famoso set-execution policy unrestricted
No voy a entrar en todos los modos que hay, ni los ámbitos de aplicación, ni como «hackear» esto. Voy a comenzar por el principio.
Por qué no dejas la configuración de ficheros firmados, e implementas la buena práctica de usar scripts firmados, o auto-firmados… pero desactivarlo la primera vez que usas PS y dejarlo así? así no my friend !!!
Los pasos son sencillos. Debemos instalar una Entidad emisora de Certificados como un role en nuestro server favorito. Siguiendo cualquier documental en video, o en Twich ( algún día opinaré sobre esto xD) o siguiente siguiente, podrás instalar por defecto una CA, que te vendrá bien para firmar tus apps internas, tu EFS, tu IPSEC o cualquier otro servicio que requiera de certificados dentro del dominio. En este caso, solo firmar tus scripts…
Con la CA instalada, el proceso es sencillo. Configuramos en la plantilla de certificados qué usuario o grupo podrá firmar scripts PowerShell.
Con esta modificación, o dejándolo por defecto para los administradores del dominio, habilitamos la plantilla para que esté disponible.
Una vez solicitado, exportamos el certificado que usaremos para cifrar.
Después de una actualización Gpupdate, compruebo que tengo la política habilitada de solo firmados, ejecuto cualquier script chorra ( echo «hola mundo» ) y no lo ejecutará.
Fuente obtenida de: http://kinomakino.blogspot.com/2020/12/firma-de-scripts-powershell-para.html