
Cadena de exploits de prueba de concepto (CVE-2026-47301) para Microsoft Configuration Manager (SCCM), que combina un control de acceso roto, un path traversal de escritura arbitraria en CAB, una omisión de la verificación de certificados y un secuestro de DLL para lograr la ejecución de código a nivel de SYSTEM.
Cadena de explotación de prueba de concepto que he descubierto y que ha sido asignada como CVE-2026-47301 para Microsoft Configuration Manager (SCCM), combinando control de acceso roto, escritura arbitraria de archivos mediante salto de ruta de extracción de CAB, omisión de verificación de certificados y secuestro de DLL para lograr ejecución de código a nivel SYSTEM.
Este exploit utiliza un cab malicioso creado específicamente para abusar de este CVE; yo proporcioné un cab para la POC.
El exploit secuestrará la ejecución colocando dos DLLs en: ..\..\..\..\ desde la ruta prevista hacia el directorio de instalación \bin\X64 de Configuration Manager. Instalar Microsoft Configuration Manager en una ruta diferente no importará, ya que el exploit es genérico y funciona en cualquier ruta sin saber nada.
Los nombres de las DLLs son: adsource_original.dll y adsource.dll.
La DLL "original" se utiliza para realizar un ataque de DLL Proxy y hacer que el exploit funcione SIN provocar el fallo del servicio SMS_EXECUTIVE.
todo lo que necesitas es la dirección IP/nombre DNS del Primary Site Server; aunque esta información nunca se publica en Active Directory, podemos asumir con seguridad que, al inspeccionar el SDDL sobre el contenedor CN=System Management,CN=System, las cuentas de máquina con control total sobre este contenedor suelen ser los Site Servers.
$root = [ADSI]"LDAP://RootDSE"
$configDN = "CN=System Management,CN=System," + $root.defaultNamingContext
$container = [ADSI]"LDAP://$configDN"
$container.ObjectSecurity.Access |
Where-Object { $_.ActiveDirectoryRights -match "GenericAll|FullControl" } |
Select-Object IdentityReference, ActiveDirectoryRights, AccessControlType |
Format-Table -AutoSize
El resultado te mostrará entidades con GenericAll sobre ese contenedor; toma las entidades que terminen en $ , estas son los primary site servers.
.\C1_AFW.exe write SCCM-CM01.basoss.local 'pwn.cab' .\evil.cab --verbose
El exploit habilita la cuenta de Administrador RID 500 si está deshabilitada, la renombra a omrispy con la contraseña Xm#Poc-2026!Adm1n$Ok. También registra los cambios realizados por el exploit y el nombre anterior que tenía el Administrador RID 500 para que puedas revertir todo a como estaba. Los registros se guardan en la ruta C:\POC.txt en el Primary Site Server víctima.
La carga de la DLL ocurre cada 5 minutos, así que espera un poco de retraso entre el momento en que lanzas el exploit y el momento en que realmente ves los resultados; este comportamiento se observó usando Procmon64.exe.
Después de una explotación exitosa necesitas:
adsource.dll (que es maliciosa) y renombrar adsource_original.dll para que sea adsource.dllPara obtener información más detallada sobre el exploit, puedes leer mi artículo completo al respecto.
Esta prueba de concepto ("PoC") se proporciona únicamente para investigación de seguridad legítima, fines educativos y pruebas de seguridad autorizadas.
Utiliza este software solo en sistemas que poseas o para los que tengas permiso explícito de realizar las pruebas específicas llevadas a cabo. El acceso no autorizado a sistemas informáticos está estrictamente prohibido.
Al utilizar este software, aceptas que:
Asumes toda la responsabilidad por tus acciones y cualquier consecuencia derivada del uso de esta PoC; no soy responsable de tus acciones