
pequeño artículo sobre el error EnterpriseModernAppManager::ProvisionApplication
Este es solo un pequeño informe con la teoría, ya que este fallo fue colisionado y nunca llegué a probarlo adecuadamente.
EnterpriseAppMgmtSvc es un servicio interesante que implementa objetos COM. Parece datar de Windows Phone y, de hecho, la mayoría de las interfaces COM implementadas por esta función son código muerto que solo funciona en Windows Phone, ¡gracias OneCore!
La única coclase que parece funcionar por defecto en sistemas que no son WCOS es EnterpriseModernAppManager. Microsoft originalmente tenía una comprobación de permisos (debe ser administrador) en EnterpriseModernAppManager::InstallApplication(), pero olvidó agregar comprobaciones de permisos en los otros métodos de esta coclase.
(Naturalmente, el parche para CVE-2022-35841 agrega las comprobaciones de permisos para los otros métodos en EnterpriseModernAppManager.)
El método interesante aquí es EnterpriseAppMgmtSvc::ProvisionApplication, que prepara (¿instala parcialmente?) paquetes APPX a partir de una configuración pasada como cadena XML.
Un paquete APPX arbitrario, a través de un par de capacidades restringidas, se puede configurar para instalar un servicio NT ejecutándose como SYSTEM, mediante la extensión desktop6:Service y las capacidades restringidas packagedServices y localSystemServices.
Esto es hasta donde llegué. Naturalmente no esperaba una colisión y un parche hoy, así que nunca probé esto en la práctica y por lo tanto no sé qué tipo de firma requeriría el APPX.