/CLAPS

Cloud Local Administrator Password Solution

Primary LanguagePowerShellGNU General Public License v3.0GPL-3.0

CLAPS v0.5 (Cloud Local Administrator Password Solution)

Índice

Documentación Técnica

Esta documentación es meramente introductoria para conocer el proyecto, si quieres saber más te aconsejo ir a la documentación técnica.

Introducción

En un entorno empresarial de Windows cuando hablamos de un dominio implicamos la necesidad de un administrador para el mismo, damos por hecho que al ser una cuenta con altos privilegios dentro de la organización debe estar protegida correctamente. Al ser una única cuenta o un número limitado de ellas, no habría gran inconveniente en gestionar credenciales seguras y únicas para cada una de ellas.

Por otro lado también tenemos al administrador local de cada equipo del dominio, y aquí es donde llega el problema: ¿Qué hacemos con las credenciales de estos administradores?

Son cuentas a las cuales en un entorno enlos usuarios no deben tener acceso y para ello deben ser protegidas correctamente, para evitar un ataque con saltos laterales entre equipos descartamos la opción de una contraseña segura pero igual para todos los equipo. Con el mismo objetivo descartamos usar patrones que al ser averiguados por un atacante pueda de igual modo saltar lateralmente. Por ende, ¿cómo lo hacemos?.

Objetivos

Aumentar la seguridad del dominio evitando la reutilización de credenciales para usuarios privilegiados.

¿Qué es CLAPS?

Es mi propuesta para suplir una carencia real y presente en las empresas que hacen uso de servicios actuales como es Azure Active Directory.

¿Cómo funciona?

Es posible principalmente gracias a servicios en la nube como Azure Key Vault y Azure Functions. Está desarrollado en su totalidad con PowerShell y su código está disponible para todos aquí. Para una explicación más extensa y detallada del funcionamiento interno puedes mirar la documentación técnica.

¿Para quién es?

Para aquellas empresas que hacen uso de Azure Active Directory y quieren las ventajas de LAPS en la nube.

Conceptos

Azure Functions

Es un servicio de Azure que nos permite ejecutar código en respuesta a diversos eventos sin necesidad de tener la infraestructura que ello implicaría.

Azure Key Vault

Es un servicio de Azure que proporcina un almacenamiento seguro para claves, secretos de aplicaciones y certificados. Estos pueden ser utilizados de forma segura por otros recursos o aplicaciones de la nube.

SID500

Es la mejor forma de identificar al administrador local de los equipos en sistemas Windows, su homólogo en UNIX es el usuario con UID 0.

Contenido del repositorio

Es el agente instalado en los equipos encargado de generar las nuevas credenciales, enviarlas a Azure Functions y según la respuesta de esta, actualizar las credenciales del administrador local.

Función de Azure encargada de evaluar las llamadas por parte de los equipos y almacenar las credenciales cifradas.

Aplicación que permite a un usuario autorizado solicitar las credenciales del administrador local de un equipo, para ello trabaja con Azure Functions.

Función de Azure que se encarga de descifrar las credenciales del administrador local para el equipo solicitado.

Versiones

Recursos