Cómo deshabilitar PowerShell con política de grupo
En esta guía, le mostraré cómo deshabilitar PowerShell con la política de grupo. Además, le mostraré cómo habilitarlo para usuarios específicos, como administradores, y dejarlo deshabilitado para todos los demás usuarios.
¿Por qué deshabilitar PowerShell?
Los actores maliciosos suelen utilizar PowerShell para propagar malware por la red. PowerShell está habilitado de forma predeterminada en Windows 10 para todos los usuarios, los atacantes pueden utilizar esta herramienta para ejecutar comandos maliciosos, acceder al sistema de archivos, al registro y más. El ransomware suele distribuirse por la red a través de PowerShell. Para obtener más información, recomiendo leer este documento técnico -> Security Primer - Ryuk
Pasos para deshabilitar PowerShell con política de grupo
Importante:
Este ejemplo bloquea la versión original de 32 bits de PowerShell. Es posible que sus computadoras tengan una versión diferente o varias versiones instaladas (Core y 5.1). Para bloquear todas las versiones de PowerShell, deberá crear varias reglas de ruta.
Paso 1: busque la ruta del archivo PowerShell.exe
De forma predeterminada, PowerShell.exe se encuentra en esta carpeta -> C:\Windows\System32\WindowsPowerShell\v1.0
Para verificar esto en su computadora, abra PowerShell, luego abra el administrador de tareas, vaya a la pestaña de detalles, desplácese hacia abajo hasta powershell.exe, haga clic derecho y seleccione "abrir ubicación del archivo".
El explorador de Windows se abrirá en la ubicación de la carpeta powershell.exe. Tome nota de esta ubicación, ya que la necesitará en un paso posterior.
Paso 2: cree GPO para bloquear PowerShell.exe
1. Abra la Consola de administración de políticas de grupo
Ahora, cree y vincule un nuevo GPO a la unidad organizativa que tiene las cuentas de usuario cuyo acceso desea bloquear. Tengo a todos mis usuarios en una unidad organizativa llamada "Usuarios de ADPRO", así que los vincularé allí.
Asigne un nombre al nuevo GPO. Me gusta ser descriptivo con los nombres para que sea fácil de entender.
Ahora ha creado un nuevo GPO, el siguiente paso será editar la configuración.
2. Edite el GPO y navegue hasta -> Configuración de usuario -> Políticas -> Configuración de Windows -> Configuración de seguridad -> Políticas de restricción de software
Ahora haga clic derecho en "Políticas de restricción de software" y seleccione "Nuevas políticas de restricción de software"
Seleccione "Reglas adicionales", luego haga clic derecho y seleccione "Nueva regla de ruta"
Ahora haga clic en el botón Examinar y seleccione el archivo powershell.exe de la ruta en el paso 1. La ruta más común es -> C:\Windows\System32\WindowsPowerShell\v1.0.
Establezca el nivel de seguridad en "No permitido". Haga clic en Aceptar.
Consejo: Otra opción es utilizar una regla hash. El beneficio de una regla hash es que bloqueará el archivo sin importar su ubicación. Por ejemplo, si PowerShell intentara ejecutarse desde c:\it\, se bloquearía debido a la regla hash, no a la ruta del archivo. El único inconveniente de esto es que necesitaría una regla hash para cada versión de PowerShell.
A continuación, reinicie su computadora para que la política entre en vigencia. Ahora, cuando intente ejecutar PowerShell, debería recibir el siguiente mensaje.
Puede repetir estos pasos para PowerShell ISE o cualquier otra aplicación que desee bloquear.
Esto lo bloquea para cualquier usuario en la unidad organizativa a la que aplicó el GPO. Para habilitarlo para usuarios específicos, siga los pasos a continuación.
Paso 2: Permitir PowerShell para administradores
En esta sección, le mostraré cómo bloquear PowerShell para los usuarios pero mantenerlo habilitado para los administradores.
1. Cree un nuevo grupo de seguridad de Active Directory.
Nómbralo como quieras, me gusta ser descriptivo con los objetos para que otros administradores puedan entender rápidamente para qué se utiliza. Llamé a mi grupo "GPO - Habilitar PowerShell"
Ahora agregue como miembro a este grupo cualquier usuario que desee que tenga derechos para ejecutar PowerShell.
2. Modificar la delegación de GPO
Ahora regrese al GPO que creó en el paso 1 y haga clic en la pestaña de delegación.
Haga clic en "Avanzado"
Haga clic en "Agregar" y luego seleccione el grupo de seguridad que creó y que tiene usuarios para los que desea habilitar PowerShell. Haga clic en Aceptar.
En la sección de permisos, asegúrese de que el grupo esté seleccionado y que solo tenga estos permisos.
- La lectura está configurada en "permitir"
- Aplicar política de grupo está configurado en "Denegar"
Haga clic en Aceptar.
Ahora a cualquier usuario que agregue al grupo de seguridad se le negará esta política y se le permitirá ejecutar PowerShell.
Conclusión
PowerShell es una gran herramienta para los administradores, pero los actores maliciosos abusan cada vez más de ella para propagar ransomware por la red. Recomiendo adherirse al principio de privilegio mínimo y garantizar que los usuarios tengan el nivel mínimo de acceso necesario para realizar sus tareas laborales. La mayoría de los usuarios no necesitan PowerShell, por lo que se recomienda desactivarlo para esos usuarios. Asegúrese de probar este tipo de cambios antes de implementarlos en toda la empresa y obtenga la aprobación con la documentación que lo cubra. La gestión de cambios es excelente para este tipo de cambios en todo el sistema.










