Escalado de privilegios local vía CdpSvc
Connected Devices Platform Service (CDPSvc) es un servicio que se ejecuta como NT AUTHORITYLOCAL SERVICE e intenta cargar la DLL cdpsgshims.dll faltante al inicio con una llamada a LoadLibrary(), sin especificar su ruta absoluta. Por lo tanto, se puede secuestrar la dll en la carpeta siguiendo el orden de búsqueda de Dlls (si tenemos permisos de escritura por supuesto) y obtendremos acceso al proceso o shell con NT AUTHORITYLOCAL SERVICE. Luego, simplemente esto se puede combinar con la técnica PrintSpoofer de @itm4n para obtener acceso como NT AUTHORITYSYSTEM.
Uso:
– Encontrar el SYSTEM PATH con permisos de escritura con acltest.ps1 (como C:python27)
C:CdpSvcLPE> powershell -ep bypass ". .acltest.ps1"
– Copiar cdpsgshims.dll en C:python27
– Crear la carpeta C:temp y copiar impersonate.bin dentro
C:CdpSvcLPE> mkdir C:temp
C:CdpSvcLPE> copy impersonate.bin C:temp
– Reiniciar (o detener/iniciar CDPSvc como administrador)
– Un prompt aparecerá con nt Authoritysystem. Después podremos parar el servicio cpdsvc y borrar la dll y el binario.
Repo: https://github.com/sailay1996/CdpSvcLPE
Fuentes:
Powered by WPeMatico