Disclamer: Este texto se hace con propósitos educativos. La responsabilidad de usarlo como guía es de quien lo ejecuta, no del autor de este texto
Regularmente, una forma protegernos contra ataques de actores maliciosos es la de limitar los privilegios de los usuarios como, por ejemplo, no dales el rol de Administrador. Esto es adecuado, pero muchas veces se olvida a los usuarios privilegiados.
Los usuarios privilegiados no son solo los que tienen el rol de administrador en un Endpoint, sino también aquellos que tienen el acceso a una plataforma o servicio. Tal es el caso del uso de servicio de Microsoft Defender for Endpoints Live Response (https://learn.microsoft.com/en-us/defender-endpoint/live-response-comma…)
Una capacidad que tiene este servicio subir scripts para poder ejecutarlos. Cuando se ejecuta un script de PowerShell desde Microsoft Defender Live Response, este se ejecuta con privilegios elevados (administrativos). Aquí es donde tenemos el riesgo si se les proporciona a más usuarios el acceso a este servicio.
Escenario
- Tenemos la necesidad de detener un servicio con protección
- No se puede detener aunque seamos administradores locales en el Endpoint
- El servicio tiene posibilidad de denenerse desde linea de comando (
stagentsvc -stop)
peronecesitamos la contraseña
Script
Creamos un script de poweshell con el siguiente comando:
# Script para detener servicio stagentsvc
Stop-Service -Name stagentsvc -Force
Lo nombraremos como stop-stagent.ps1
Manos a la obra
Con un usuario con el privilegio de ejecución de comandos en Microsoft Defender for Endpoint, iniciamos sesión en https://security.microsoft.com, navegamos en la sección de Endpoints -> Device Inventory y buscaos el dispositivo
En la página del dispositivo iniciamos la sesión de live response seleccionando “Initiate live response session”
Ahora seleccionamos la opción de subir script al cual nombraremos como “stop-stagent”
Con el siguiente comando desde la sesión iniciada, ejecutamos el script
run stop-stagent.ps1
Esto hará que el servicio stagentsvc se detenga porque el script se ejecuta con privilegios de SYSTEM y el servicio se detenga
Recomendaciones
- Limitar el acceso de a Microsoft Defender for Endpoints live response creando el rol adecuado
- Auditar la ejecución de comandos de live response
- Inicie sesión para enviar comentarios