Está en la página 1de 48

Julio Ureña

Instructor

Operaciones Ofensivas en entornos de


Windows & Active Directory
C:\>whoami /all
• Julio Ureña (PlainText)
• Cristiano / Esposo / Padre / Amigo / Gamer / Hacker
• 15 años de experiencia en roles técnicos y ejecutivos:
• Microsoft
• SYNNEX Corporation
• HackTheBox
• Certificaciones: OSWE, OSEP, OSCP, CRTO, PACES, MS-500, etc.
• Líder de la Comunidad de Hacking más grande en República
Dominicana @RedTeamRD
• PoC’s / Code: CVE-2018-13374 / CVE-2019-19470
SharpNoPsExec / BYOPython
• Twitter: @JulioUrena
• Blog: https://plaintext.do
• YouTube: https://www.youtube.com/c/JulioUreña 2
¿Qué queremos lograr? Y ¿Porqué?
Objetivo
Comprender los fundamentos de las operaciones ofensivas en entornos de Windows &
Active Directory, el propósito de estos servicios, su funcionamiento, elementos
importantes, con el fin de aplicar las técnicas y herramientas necesarias para
comprometer cualquier entorno de Windows y Active Directory que nos enfrentemos.
Contenido
1. Windows & Active Directory - Conceptos fundamentales.
2. Escalación de Privilegios.
3. Robo de Credenciales y Manipulación de Accesos.
4. Movimientos Laterales.
5. Enumeración de Active Directory.
6. Ataques de Active Directory parte 1.
7. Ataques de Active Directory parte 2.
8. Comando y Control.
9. Operaciones Ofensivas en Windows con Comando y Control.
10. Simulación de Operación de RedTeam.
Esquema del Curso
1. Exposición Conceptual y Práctica.
2. 2 - Recesos cada 45 min de 7 min y 30 segundos.
3. Preguntas y Respuestas.
4. Ejercicios (Para que el alumno practique lo aprendido).

Nota: Durante la clase, el alumno deberá enfocarse en comprender los conceptos


aprendidos, no en replicarlos.
Evaluaciones
1ra Evaluación

Objetivo: Evaluar la capacidad del alumno de comprender los vectores comunes de


escalación de privilegios en Windows y cómo manipular las e impersonal a los usuarios
de Windows.
Puntuación: 40% de la calificación total
Fecha de asignación: 3ra sesión.
Fecha de Entrega: hasta la 6ta sesión
Método: Completar máquinas de Laboratorio.
Evaluaciones
2da Evaluación

Objetivo: Evaluar la capacidad del alumno de identificar los vectores de ataques


existentes en un Active Directory y su capacidad para explotarlos.
Puntuación: 60% de la calificación total
Fecha de asignación: 7ma sesión.
Fecha de Entrega: hasta la 10ma sesión.
Método: Obtener Accesos de Domain Admin en el Laboratorio
Entregable: Relato técnico de los hallazgos. Debe incluir una guía paso a paso con
imágenes de lo realizado para completar la evaluación.
Puntuaciones Adicionales
1. Ayudar a los compañeros (Ejercicios, clases, preguntas en Discord).
2. Completar ejercicios de la Academia.
3. Completar los cuestionarios.
4. Realizar las asignaciones adicionales.

Las puntuaciones serán otorgadas en 2 ciclos de la 1ra a la 5ta sesión y desde la 6ta a la
10ma sesión.

Valor opcional: 20% de la calificación total.


- Si la suma de la calificación final del alumno es 5 y acumuló todos los puntos, ganará
un 1.4 siendo su calificación final 6.4.

Los 5 alumnos más destacados en estos 4 puntos serán exonerados de la evaluación


final con el 100% (pero podrán optar por realizarla).
Rules of Engagement o Consejos…
Establece un horario: Es fundamental establecer un horario que nos ayude a instaurar
una rutina. Una buena idea podría ser la de fijar nuestro horario al mismo ritmo que
nuestras clases. Se puntual en las clases y dedícale tiempo de calidad. No olvides que
este esfuerzo es una inversión para tu futuro.
Busca un espacio adecuado: Se puede estudiar en cualquier sitio, pero cualquier sitio no
es el lugar idóneo para hacerlo. Escoge un lugar, si es posible siempre el mismo, y
adáptalo según tus preferencias. Eso sí, procura que tenga buenas condiciones de
iluminación, silencio y la temperatura adecuada, todo ello favorecerá tu rendimiento.
Mantenga el micrófono encendido si está en un lugar silencioso, y apagado si hace ruido
(use la barra de espacio en ZOOM).

Ven cómo eres: ¡Todos tenemos perros, niños, pijamas!


Rules of Engagement o Consejos…
Planifica: Sigue las directrices de los profesores y planifica todo con anterioridad. Es
ideal elaborar una planificación que te permita disponer de tiempo tanto para las clases
como para las asignaciones (tareas), repasos, y revisión de ejercicios/laboratorios.
Concéntrate: Uno de los peores enemigos es la falta de atención durante las clases.
Evita distraerte con otras aplicaciones y labores, hacerlo solo hará que pierdas este
tiempo valioso y luego lo debas recuperar en otros instantes.
Participa – Todos tenemos mucho que aportar: pregunta, opina, inquiere, conversa, ya
sea por el CHAT o por audio. No es obligatorio poner la cámara, pero si quieres opinar
por voz o participar de un comentario, es enriquecedor que todo el curso te conozca.
No sean tímidos: responda las preguntas cuando se pregunte y tendrás recompensas
(leer punto 7). Cuenta historias, participa, comparta experiencias, haga preguntas en
cada sección.
Respeto – Debemos ejercitar el respeto entre nosotros, tanto para las opiniones, las
conversaciones, como las interacciones. Todos somos profesionales en esta ruta y es
importante que saquemos lo mejor de nosotros.
Rules of Engagement o Consejos…
Los puntos, los puntos – Tenemos una dinámica entretenida para que ejercites tus
conocimientos y ganes puntos para el examen final: los 5 alumnos con mayor puntaje
serán exonerados de la práctica final (de todas maneras, pueden darlo y conocer su
resultado).
Ganas puntos por responder preguntas, responder los cuestionarios, participar en clase
y realizar las prácticas.
El último consejo es que utilices la tecnología de manera responsable. Accede a aquellas
aplicaciones que te ayuden en tus tareas académicas, pero durante las horas de estudio,
evita la tentación del teléfono móvil y el uso no educativo del resto de dispositivos.
¿Preguntas?

13
Cuestionario
General
14
Julio Ureña
Instructor

Sesión n° 1: Windows & Active Directory -


Conceptos fundamentales
Julio Ureña
Instructor

Windows
Windows
Microsoft introdujo un entorno operativo denominado Windows el 20 de noviembre de
1985 como un complemento para MS-DOS en respuesta al creciente interés en las
interfaces gráficas de usuario (GUI).2​ Microsoft Windows llegó a dominar el mercado
mundial de computadoras personales, con más del 70 % de la cuota de mercado,
superando a Mac OS, que había sido introducido en 1984.
Estadísticas de Sistemas Operativos

https://netmarketshare.com/operating-system-market-share.aspx
Elementos de Windows
Usuarios: le dan a una persona acceso al equipo y a los programas que este contiene.

Privilegio: es el derecho de una cuenta, como una cuenta de usuario o grupo, para
realizar varias operaciones relacionadas con el sistema en el equipo local, como apagar
el sistema, cargar controladores de dispositivo o cambiar la hora del sistema.
Elementos de Windows
Tokens: Cuando un usuario inicia sesión, el sistema genera un token de acceso que
contiene una lista de privilegios del usuario, incluidos los concedidos al usuario o a los
grupos a los que pertenece el usuario. Tenga en cuenta que los privilegios solo se
aplican al equipo local; una cuenta de dominio puede tener privilegios diferentes en
equipos diferentes.
Procesos: Todo sistema operativo basa su funcionamiento en una correcta ejecución de
los procesos que lo componen. Estos procesos corresponden, entre otras cosas, a las
aplicaciones que en cada momento ejecuta el usuario. Sin embargo, además de los
asociados al navegador o al juego de turno, nos encontramos con otros llamados "de
sistema", que sostienen el funcionamiento general de Windows
Elementos de Windows
Servicios: le permiten crear aplicaciones de larga ejecución que se ejecutan en sesiones
propias de Windows. Estos servicios se pueden iniciar automáticamente al arrancar el
equipo, se pueden pausar y reiniciar, y no muestran ninguna interfaz de usuario. Las
aplicaciones de terceros también pueden instalar un servicio de Windows para
administrar cómo y cuándo se ejecutan.
Elementos de Windows
Credenciales: Las credenciales usadas en la autenticación son documentos digitales que
asocian la identidad del usuario a alguna forma de prueba de autenticidad, como un
certificado, una contraseña o un PIN. De forma predeterminada, las credenciales de
Windows se validan en la base de datos administrador de cuentas de seguridad (SAM)
del equipo local, o en Active Directory en un equipo unido a un dominio, a través del
servicio Winlogon.
Las contraseñas de los usuarios se almacenan en un formato hash en una sección de
registro, ya sea como un hash LM o como un hash NTLM. Este archivo se puede
encontrar en %SystemRoot%/system32/config/SAM y está montado en HKLM/SAM y
se requieren privilegios de SISTEMA para verlo.
Elementos de Windows – Usuarios & Grupos
Grupos: Los grupos se usan para recopilar cuentas de usuario, cuentas de equipo y otros
grupos en unidades administrables. Trabajar con grupos en lugar de con usuarios
individuales ayuda a simplificar el mantenimiento y la administración de la red.

Grupos Comunes:
• Users
• Administrators
• Remote Desktop Users
• Backup Operators

Usuarios Comunes:
• Administrator
• LocalSystem: Tiene amplios privilegios en el equipo local y actúa como el equipo de la
red. Su token incluye los SID NT AUTHORITY\SYSTEM y BUILTIN\Administrators;
estas cuentas tienen acceso a la mayoría de los objetos del sistema. Esta cuenta no
tiene una contraseña.
Autenticación en Windows
La autenticación es un proceso para verificar la identidad de un objeto, servicio o
persona. Cuando autentica un objeto, el objetivo es verificar que el objeto es genuino.
Cuando autentica un servicio o una persona, el objetivo es verificar que las credenciales
presentadas sean auténticas.
Windows proporciona muchos métodos diferentes para lograr este objetivo, algunos se
detallan a continuación:
Para… Método
Autenticación dentro de un dominio de Active Kerberos
Directory
Autenticación para una aplicación o un servicio web Autenticación integrada de Windows Autenticación
implícita (Digest Authentication)
Autenticación para aplicaciones heredadas (legacy) NTLM
Proporcionar administración, almacenamiento y Administración de credenciales
reutilización locales de credenciales Autoridad de seguridad local – Contraseñas

Uso de la autenticación multifactorial Autorización mediante tarjeta inteligente


Compatibilidad biométrica
Julio Ureña
Instructor

Active Directory
Active Directory
Active Directory (AD) es un servicio de directorio para entornos de Windows. Es una
estructura jerárquica distribuida que permite la administración centralizada de los
recursos de una organización, incluidos usuarios, computadoras, grupos, dispositivos de
red y recursos compartidos de archivos, políticas de grupo, servidores y estaciones de
trabajo, y fideicomisos. AD proporciona funciones de autenticación y autorización
dentro de un entorno de dominio de Windows.

Diseñado para ser compatible con versiones anteriores, y muchas funciones


posiblemente no sean "seguras de forma predeterminada", y se pueden configurar mal
fácilmente.
Microsoft Active Directory – Market Share
Active Directory - Estructura
Active Directory está organizado en una estructura de árbol jerárquico, con un bosque
(Forest) en la parte superior que contiene uno o más dominios, que a su vez pueden
contener subdominios anidados. Un bosque (Forest) es el límite de seguridad dentro del
cual todos los objetos están bajo control administrativo. Un bosque (Forest) puede
contener varios dominios y un dominio puede contener más dominios secundarios o
subdominios. Forest
Dominio Principal Dominio Secundario

OU OU

OU OU OU OU
Active Directory - Estructura
Un dominio es una estructura dentro de la cual se puede acceder a los objetos
contenidos (usuarios, equipos y grupos). Los objetos son la unidad de datos más básica
en AD.
Las unidades organizativas pueden contener objetos y subunidades organizativas, lo que
permite la asignación de diferentes políticas de grupo.

Dominio Principal Puede Contener Objetos:


• Usuarios
• Grupos
• Equipos
OU • OU

Se le pueden aplicar:
OU • Políticas (GPO)
OU
• Permisos
Active Directory - Estructura
Base de Datos - Active Directory
El archivo NTDS.DIT es una base de datos que almacena datos de Active Directory,
incluida información sobre objetos de usuario, grupos y pertenencia a grupos. Por
defecto está ubicado en la ruta C:\Windows\NTDS\
Es importante destacar que el archivo también almacena los hashes de contraseña para
todos los usuarios del dominio.
Elementos de Active Directory
Windows y Active Directory, usan un "Modelo de control de acceso" para proteger
objetos y atributos. Piense en estos objetos como archivos, carpetas, objetos de Active
Directory, claves de registro, impresoras, dispositivos, puertos, servicios, procesos y
subprocesos.

Al editar los derechos sobre estos objetos, crea entradas de control de acceso (ACE).
Una lista de estas ACE se denomina Lista de control de acceso (ACL), que vienen en dos
tipos:

• Una lista de control de acceso discrecional (DACL), que identifica a los usuarios,
grupos o computadora (Security Principals) a los que se permite o deniega el acceso;
• Una lista de control de acceso al sistema (SACL), que controla cómo se audita el
acceso.
Elementos de Active Directory
Elementos de Active Directory
Service Principal Name (SPN) identificadores únicos para servicios que se ejecutan en
servidores. Cada servicio que utilizará la autenticación Kerberos debe tener un SPN
establecido para que los clientes puedan identificar el servicio en la red. Si no se
establece un SPN para un servicio, los clientes no tendrán forma de localizar ese
servicio. Sin SPN configurados correctamente, la autenticación Kerberos no es posible.
Elementos de Active Directory
Formato - Service Principal Name (SPN)
service_class/hostname_or_FQDN:port

HTTP/www.contoso.com – Cualquier página del sitio web en el puerto TCP


predeterminado 80 para www.contoso.com, es decir, http://www.contoso.com/

TERMSRV/FRONTRM.contoso.com - El servicio de Protocolo de escritorio remoto


(RDP) que se ejecuta en el equipo con el nombre de host FRONTRM.contoso.com

MSSQLSvc/SQLSERVER2.fabrikam.com:1433 – El SQL Server escuchando en


SQLSERVER2.fabrikam.com, puerto 1433.

CIFS/KHWIN7.fabrikam.com: el archivo compartido en la computadora con el nombre


de host KHWIN7.fabrikam.com
Elementos de Active Directory
Para más información de los diferentes SPN revisar:

https://adsecurity.org/?page_id=183
Elementos de Active Directory
Los Objeto de Directiva de Grupo (Group Policy Objects - GPO) son colecciones
virtuales de configuraciones de directiva. Cada GPO tiene un GUID único. Un GPO
puede contener la configuración del sistema de archivos local o la configuración de
Active Directory. La configuración de GPO se puede aplicar tanto a objetos de usuario
como de equipo. Se pueden aplicar a todos los usuarios y equipos dentro del dominio o
se pueden definir de forma más granular a nivel de unidad organizativa.
Kerberos - Autenticación en Active Directory
¿Cómo funciona la autenticación Kerberos?
• Todos los usuarios de la red necesitan un Ticket (Ticket Granting Ticket - TGT) antes
de poder comunicarse/autenticarse con cualquier cosa en Active Directory.
• El TGT solo se usa con el controlador de dominio de Windows KDC (Centro de
distribución de claves).

Soy Julio, y necesito autenticarme Puedo desencriptar tu


con algo. Aquí está mi solicitud solicitud usando tu NTLM
encriptada usando el hash de mi hash. Aquí está el TGT
contraseña. encriptado con tu NTLM
Hash
Kerberos - Autenticación en Active Directory
TGT se utiliza para solicitar un ticket de un servicio.

Necesito autenticarme a un
servicios via Kerberos.
Claro, aquí está. Ojo! Yo No
¿Puedo tener un ticket para
verifico si tienes permisos en
otro servicios?. Aquí está mi
el servicios. Le dejaré eso al
TGT que verifica mi
servicio. Ya tengo mucho
identidad.
trabajo que hacer.
Kerberos - Autenticación en Active Directory

Porción del Servidor


• Detalles del usuario.
• Clave de sesión (igual que la de abajo).
• Cifrado con el hash NTLM de la cuenta de
servicio.

Tu Porción
• Tiempo de validez
• Clave de sesión (igual que la de arriba).
• Cifrado con la clave de sesión TGT
Kerberos - Autenticación en Active Directory
Solicita de TGT

Recibe TGT

Recibe el TGS

Presenta el TGS para acceso


al servicio.

Servidor lo
Autentica
Servicios Comunes en un Dominio
DNS - El sistema de nombres de dominio (DNS) es uno de los conjuntos de protocolos
estándar de la industria que comprende TCP/IP y, juntos, el cliente DNS y el servidor
DNS brindan servicios de resolución de nombres de mapeo de nombre de computadora
a dirección IP para computadoras y usuarios. DNS se instala automáticamente con
Active Directory como servidor de catálogo global para el bosque y el dominio,
Servicios Comunes en un Dominio
Web Servers - El rol de servidor web (IIS) en Windows Server proporciona una
plataforma segura, fácil de administrar, modular y extensible para hospedar sitios web,
servicios y aplicaciones de manera confiable. Con IIS 8 puede compartir información con
usuarios en Internet, una intranet o una extranet. IIS 8 es una plataforma web unificada
que integra IIS, ASP.NET, servicios FTP, PHP y Windows Communication Foundation
(WCF).
Servicios Comunes en un Dominio
Databases – MSSQL (Microsoft SQL Server) es un conjunto de software de base de
datos publicado por Microsoft y utilizado ampliamente en empresas. Por lo general,
incluye un motor de base de datos relacional, que almacena datos en tablas, columnas y
filas.
Servicios Comunes en un Dominio
Certificate Services - Permite que su DC sirva certificados digitales, firmas y criptografía
de clave pública.
¿Preguntas?

48
Cuestionario
Windows & Active Directory

49
Asignaciones (Opcional)
Conectarse a los laboratorios del DediLab.

Un hack para HackTheBox.


- Habilitar RDP para tener acceso a la interface grafica.

Enable RDP

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal


Server" /v fDenyTSConnections /t REG_DWORD /d 0 /f

50

También podría gustarte