Revocación de certificados OPM
Microsoft puede revocar un certificado de administrador de protección de salida (OPM). La lista de certificados revocados se almacena en una lista de revocación global (GRL). La GRL tiene el formato siguiente:
Sección | Descripción |
---|---|
Encabezado | Estructura GRL_HEADER . |
Core | Contiene las siguientes listas de revocación:
|
Entradas extensibles | Contiene información utilizada por otros componentes. Esta sección no es relevante para OPM. |
Renovaciones: | Contiene GUID que definen identificadores de Windows Update. Esta sección contiene identificadores para las listas siguientes:
|
Firma: sección Principal | Firma el encabezado y las secciones principales. |
Firma: sección extensible | Firma el encabezado y las secciones extensibles. |
El encabezado GRL es una estructura GRL_HEADER . El miembro dwSequenceNumber de la estructura contiene el número de versión grL. Este número se incrementa cada vez que se actualiza la GRL y se coloca una nueva versión en el equipo del usuario.
Los certificados OPM revocados se enumeran en la lista de revocaciones de certificados de la sección Core. Cada entrada Core en la GRL es una matriz de 20 bytes que contiene el hash SHA-1 de la clave pública del certificado revocado.
Las secciones Firma contienen firmas que se pueden usar para comprobar que la GRL no se ha alterado. Cada sección Signature contiene la estructura am MF_SIGNATURE . La primera firma firma el encabezado más la sección Core. La segunda firma firma el encabezado más la sección Extensible; esta firma no es relevante para OPM.
Para asegurarse de que la propia GRL no se ha alterado, compruebe la firma como se indica a continuación:
- Busque el inicio de la estructura MF_SIGNATURE . La ubicación de la estructura MF_SIGNATURE se da en el miembro cbSignatureCoreOffset de la estructura GRL_HEADER . La ubicación se especifica como un desplazamiento en bytes desde el principio de la GRL.
- Analice la estructura de MF_SIGNATURE como una firma PKCS #7 con una cadena de certificados.
- Compruebe la cadena de certificados hasta una raíz de confianza.
- Compruebe que el certificado hoja tiene el siguiente identificador de objeto en la EKU: "1.3.6.1.4.1.311.10.5.4".
- Calcule un hash de los bytes que incluyen el encabezado y las secciones principales de la GRL.
- Compruebe que el hash coincide con la firma en el certificado hoja.
Temas relacionados