Data/Locales/checks/pt/ADCertificateServicesChecks.json
|
{ "_family": "ADCertificateServicesChecks.json", "ADCS-001": { "name": { "value": "Inventário de servidores CA", "status": "machine-draft" }, "description": { "value": "Um inventário de todos os servidores de Autoridade de Certificação do ambiente constitui a base para a avaliação de segurança do AD CS. Inclui as CA Empresariais, as CA Autónomas, as respetivas funções (Raiz vs Subordinada), as versões do sistema operativo e os modelos de certificado publicados. Compreender a hierarquia de PKI é essencial para identificar a superfície de ataque", "status": "machine-draft" }, "recommendedValue": { "value": "Inventário completo de CA documentado com o tipo de CA, função, versão de SO e modelos publicados para cada servidor de CA", "status": "machine-draft" }, "remediationSteps": { "value": "Enumere todos os servidores de CA consultando o contentor PKI Enrollment Services no AD (CN=Enrollment Services,CN=Public Key Services,CN=Services,CN=Configuration). Documente para cada CA o tipo (Empresarial/Autónoma), a função (Raiz/Subordinada), o nome de anfitrião, a versão do sistema operativo e os modelos de certificado publicados. Verifique se todos os servidores de CA executam versões de SO suportadas e têm as correções atuais.", "status": "machine-draft" } }, "ADCS-002": { "name": { "value": "ESC1 - O requerente fornece o Nome Alternativo do Requerente", "status": "machine-draft" }, "description": { "value": "O ESC1 ocorre quando um modelo de certificado permite que o requerente especifique um Nome Alternativo do Requerente (SAN) no pedido de certificado, tem Autenticação de Cliente ou qualquer EKU que permita a autenticação e permite a inscrição por utilizadores com poucos privilégios. Um atacante pode solicitar um certificado com um SAN para qualquer utilizador do domínio, incluindo os Domain Admins, e depois utilizar o certificado para se autenticar como esse utilizador", "status": "machine-draft" }, "recommendedValue": { "value": "Nenhum modelo de certificado com CT_FLAG_ENROLLEE_SUPPLIES_SUBJECT que permita a inscrição por utilizadores com poucos privilégios e que tenha EKU de autenticação", "status": "machine-draft" }, "remediationSteps": { "value": "Identifique os modelos em que msPKI-Certificate-Name-Flag inclui CT_FLAG_ENROLLEE_SUPPLIES_SUBJECT (0x1), o modelo tem EKU de Autenticação de Cliente ou de Início de Sessão com Smart Card e a inscrição é permitida a utilizadores não administradores. Remova o indicador CT_FLAG_ENROLLEE_SUPPLIES_SUBJECT, restrinja as permissões de inscrição a grupos privilegiados ou remova a EKU de autenticação. Se a especificação de SAN for operacionalmente necessária, implemente a aprovação do Gestor de CA.", "status": "machine-draft" } }, "ADCS-003": { "name": { "value": "ESC2 - EKU de Qualquer Finalidade", "status": "machine-draft" }, "description": { "value": "O ESC2 ocorre quando um modelo de certificado especifica a EKU de Qualquer Finalidade (OID 2.5.29.37.0) ou nenhuma EKU (equivalente ao modelo SubCA). Os certificados com a EKU de Qualquer Finalidade podem ser utilizados para qualquer fim, incluindo autenticação de cliente, autenticação de servidor e assinatura de código. Combinado com SAN controlados pelo requerente ou requisitos de inscrição reduzidos, isto viabiliza o comprometimento do domínio", "status": "machine-draft" }, "recommendedValue": { "value": "Nenhum modelo de certificado com EKU de Qualquer Finalidade ou EKU vazia que permita a inscrição por utilizadores com poucos privilégios", "status": "machine-draft" }, "remediationSteps": { "value": "Identifique os modelos em que pKIExtendedKeyUsage contém o OID de Qualquer Finalidade (2.5.29.37.0) ou está vazio e a inscrição é permitida a utilizadores não administradores. Substitua a EKU de Qualquer Finalidade por EKU específicas e necessárias (por exemplo, apenas Autenticação de Cliente). Se for um modelo SubCA, restrinja a inscrição apenas a Enterprise Admins. Implemente a aprovação do Gestor de CA para quaisquer modelos restantes com EKU amplas.", "status": "machine-draft" } }, "ADCS-004": { "name": { "value": "ESC3 - Abuso do modelo de Agente de Inscrição, condição 1", "status": "machine-draft" }, "description": { "value": "A condição 1 do ESC3 identifica modelos de certificado que têm a EKU de Agente de Pedido de Certificado (OID 1.3.6.1.4.1.311.20.2.1) e permitem a inscrição por utilizadores com poucos privilégios. Um certificado de Agente de Inscrição permite ao respetivo detentor inscrever-se noutros modelos em nome de qualquer utilizador, potencialmente incluindo modelos com EKU de autenticação que normalmente exigem a aprovação do Gestor de CA", "status": "machine-draft" }, "recommendedValue": { "value": "Modelos de Agente de Pedido de Certificado restringidos apenas a agentes de inscrição autorizados; não passíveis de inscrição por utilizadores com poucos privilégios", "status": "machine-draft" }, "remediationSteps": { "value": "Identifique os modelos com a EKU de Agente de Pedido de Certificado que permitem a inscrição por utilizadores não administrativos. Restrinja as permissões de inscrição nestes modelos a um grupo de segurança dedicado de Agente de Inscrição. Configure restrições de Agente de Inscrição na CA para limitar em que modelos e para que utilizadores os agentes de inscrição se podem inscrever. Monitorize a emissão de certificados de Agente de Pedido de Certificado.", "status": "machine-draft" } }, "ADCS-005": { "name": { "value": "ESC3 - Abuso do modelo de Agente de Inscrição, condição 2", "status": "machine-draft" }, "description": { "value": "A condição 2 do ESC3 identifica modelos de certificado que aceitam a inscrição em nome de outros utilizadores (exigem uma assinatura de agente de inscrição) e têm uma EKU de autenticação. Quando combinada com a condição 1 do ESC3, um atacante que obtenha um certificado de Agente de Inscrição pode inscrever-se para obter certificados de autenticação em nome de qualquer utilizador, incluindo os Domain Admins", "status": "machine-draft" }, "recommendedValue": { "value": "Modelos que exigem assinaturas de agente de inscrição restringidos a utilizadores de destino específicos através de restrições de agente de inscrição na CA", "status": "machine-draft" }, "remediationSteps": { "value": "Identifique os modelos que exigem uma assinatura autorizada com a política de aplicação de Agente de Pedido de Certificado e que têm EKU de Autenticação de Cliente ou de Início de Sessão com Smart Card. Configure restrições de Agente de Inscrição na CA para limitar em que modelos estes agentes de inscrição se podem inscrever e em nome de que utilizadores. Isto configura-se nas propriedades da CA em restrições de Agentes de Inscrição.", "status": "machine-draft" } }, "ADCS-006": { "name": { "value": "ESC4 - ACL de modelo de certificado vulneráveis", "status": "machine-draft" }, "description": { "value": "O ESC4 ocorre quando utilizadores com poucos privilégios têm permissões de escrita nos objetos de modelo de certificado no AD, permitindo-lhes modificar os atributos do modelo para criar uma condição ESC1, ESC2 ou ESC3. Um atacante com acesso de escrita pode adicionar CT_FLAG_ENROLLEE_SUPPLIES_SUBJECT, alterar a EKU, modificar as permissões de inscrição ou alterar outros atributos relevantes para a segurança de modo a viabilizar a elevação de privilégios baseada em certificados", "status": "machine-draft" }, "recommendedValue": { "value": "Nenhuma permissão de escrita nos objetos de modelo de certificado para principais não administrativos", "status": "machine-draft" }, "remediationSteps": { "value": "Enumere as ACL em todos os objetos de modelo de certificado em CN=Certificate Templates,CN=Public Key Services,CN=Services,CN=Configuration. Remova as ACE WriteDACL, WriteOwner, WriteProperty e GenericAll/GenericWrite dos principais não administrativos. Apenas os Enterprise Admins e os administradores de PKI designados devem ter acesso de escrita aos objetos de modelo. Monitorize as alterações de ACL nos objetos de modelo de certificado.", "status": "machine-draft" } }, "ADCS-007": { "name": { "value": "ESC4 - Propriedade de modelo de certificado vulnerável", "status": "machine-draft" }, "description": { "value": "Se um objeto de modelo de certificado for propriedade de um principal não administrativo, esse principal pode modificar a DACL do modelo para conceder a si próprio acesso de escrita e, em seguida, modificar o modelo para criar condições exploráveis. A propriedade do modelo deve ser restringida a Enterprise Admins ou ao grupo de administração de PKI do domínio", "status": "machine-draft" }, "recommendedValue": { "value": "Todos os objetos de modelo de certificado cuja propriedade pertence a Enterprise Admins ou a administradores de PKI designados", "status": "machine-draft" }, "remediationSteps": { "value": "Verifique o campo Proprietário em cada objeto de modelo de certificado em CN=Certificate Templates,CN=Public Key Services,CN=Services,CN=Configuration. Transfira a propriedade de quaisquer modelos com propriedade incorreta para Enterprise Admins com Set-Acl ou o separador Segurança no adsiedit.msc. Investigue como as contas não administrativas se tornaram proprietárias para evitar a recorrência.", "status": "machine-draft" } }, "ADCS-008": { "name": { "value": "ESC5 - ACL de objetos de PKI vulneráveis", "status": "machine-draft" }, "description": { "value": "O ESC5 abrange as permissões de escrita noutros objetos do AD relacionados com PKI para além dos modelos de certificado, incluindo o objeto do AD do servidor de CA, o objeto NTAuthCertificates, o contentor Enrollment Services e o contentor Certificate Templates. O acesso de escrita a estes objetos pode permitir que um atacante adicione CA não autorizadas, modifique definições de inscrição ou publique modelos maliciosos", "status": "machine-draft" }, "recommendedValue": { "value": "Nenhuma permissão de escrita nos objetos de contentor de PKI para principais não administrativos; acesso de escrita limitado a Enterprise Admins", "status": "machine-draft" }, "remediationSteps": { "value": "Audite as ACL em todos os objetos sob CN=Public Key Services,CN=Services,CN=Configuration, incluindo o contentor Enrollment Services, o contentor AIA, o objeto NTAuthCertificates e o contentor Certificate Templates. Remova as permissões de escrita dos principais não administrativos. Garanta que o objeto de computador da CA no AD não tem permissões de escrita para grupos amplos. Monitorize estes objetos quanto a alterações não autorizadas.", "status": "machine-draft" } }, "ADCS-009": { "name": { "value": "ESC6 - Indicador EDITF_ATTRIBUTESUBJECTALTNAME2", "status": "machine-draft" }, "description": { "value": "Quando o indicador EDITF_ATTRIBUTESUBJECTALTNAME2 está ativado numa CA, qualquer pedido de certificado pode incluir um Nome Alternativo do Requerente definido pelo utilizador, independentemente da configuração do modelo. Isto torna, na prática, todos os modelos da CA vulneráveis a ataques do tipo ESC1, em que um atacante especifica um SAN para um utilizador privilegiado", "status": "machine-draft" }, "recommendedValue": { "value": "Indicador EDITF_ATTRIBUTESUBJECTALTNAME2 desativado em todos os servidores de CA", "status": "machine-draft" }, "remediationSteps": { "value": "Verifique a configuração da CA com certutil -getreg policy\\EditFlags em cada servidor de CA. Se o indicador EDITF_ATTRIBUTESUBJECTALTNAME2 (0x00040000) estiver definido, remova-o com certutil -setreg policy\\EditFlags -EDITF_ATTRIBUTESUBJECTALTNAME2. Reinicie o serviço CertSvc após a alteração. Reveja todos os certificados emitidos recentemente quanto a SAN inesperados que possam indicar exploração anterior.", "status": "machine-draft" } }, "ADCS-010": { "name": { "value": "ESC7 - ACL de CA vulneráveis", "status": "machine-draft" }, "description": { "value": "O ESC7 ocorre quando um principal não administrativo tem permissões ManageCA ou ManageCertificates na CA. O ManageCA permite modificar a configuração da CA, incluindo ativar EDITF_ATTRIBUTESUBJECTALTNAME2 (criando uma condição ESC6). O ManageCertificates permite aprovar pedidos de certificado pendentes, contornando os requisitos de aprovação do Gestor de CA em modelos sensíveis", "status": "machine-draft" }, "recommendedValue": { "value": "Permissões ManageCA e ManageCertificates restringidas apenas a administradores de CA designados", "status": "machine-draft" }, "remediationSteps": { "value": "Reveja as permissões de segurança da CA com certsrv.msc > Propriedades > separador Segurança ou certutil -getacl. Remova as permissões ManageCA dos principais não administrativos. Remova o ManageCertificates de qualquer principal que não seja um gestor de certificados autorizado. Documente todos os principais com permissões de gestão da CA. Implemente a separação de funções entre os administradores de CA e os gestores de certificados.", "status": "machine-draft" } }, "ADCS-011": { "name": { "value": "ESC8 - Relay NTLM para endpoints HTTP do AD CS", "status": "machine-draft" }, "description": { "value": "O ESC8 explora os endpoints HTTP de inscrição via Web do AD CS (certsrv) e do Serviço de Inscrição de Certificados (CES) que aceitam autenticação NTLM. Um atacante pode coagir a autenticação a partir de um controlador de domínio ou de uma conta privilegiada e retransmitir a autenticação NTLM para o endpoint HTTP da CA de modo a solicitar um certificado com a identidade retransmitida, conduzindo ao comprometimento do domínio", "status": "machine-draft" }, "recommendedValue": { "value": "Nenhum endpoint de inscrição baseado em HTTP; se necessário, imponha HTTPS com a Proteção Estendida para Autenticação (EPA) ativada", "status": "machine-draft" }, "remediationSteps": { "value": "Identifique todos os endpoints de inscrição via Web da CA com Get-CertificateEnrollmentService e verificando os enlaces do IIS. Desative os endpoints de inscrição baseados em HTTP e exija HTTPS. Ative a Proteção Estendida para Autenticação no IIS para evitar o relay NTLM. Em alternativa, desative por completo a função de inscrição via Web e utilize apenas a interface de inscrição baseada em DCOM. Desative a autenticação NTLM nos servidores de CA sempre que possível.", "status": "machine-draft" } }, "ADCS-012": { "name": { "value": "ESC9 - Sem extensão de segurança", "status": "machine-draft" }, "description": { "value": "O ESC9 explora a ausência da extensão de segurança szOID_NTDS_CA_SECURITY_EXT nos certificados emitidos. Sem esta extensão e quando StrongCertificateBindingEnforcement não está definido como 2, um atacante que consiga modificar o atributo UPN de um utilizador (através de GenericWrite no objeto do utilizador) pode solicitar um certificado, repor o UPN e utilizar o certificado para se autenticar com a identidade modificada", "status": "machine-draft" }, "recommendedValue": { "value": "StrongCertificateBindingEnforcement definido como 2 em todos os controladores de domínio; CT_FLAG_NO_SECURITY_EXTENSION não definido nos modelos de autenticação", "status": "machine-draft" }, "remediationSteps": { "value": "Verifique se existem modelos com CT_FLAG_NO_SECURITY_EXTENSION (0x80000) em msPKI-Enrollment-Flag. Remova este indicador de todos os modelos com capacidade de autenticação. Defina o valor de registo StrongCertificateBindingEnforcement como 2 em HKLM\\SYSTEM\\CurrentControlSet\\Services\\Kdc em todos os controladores de domínio para impor o mapeamento forte de certificados. Teste a autenticação baseada em certificados após ativar a imposição.", "status": "machine-draft" } }, "ADCS-013": { "name": { "value": "ESC11 - Relay RPC sem encriptação", "status": "machine-draft" }, "description": { "value": "O ESC11 visa a interface de inscrição RPC do AD CS (ICertPassage) quando a CA não impõe encriptação na ligação RPC. À semelhança do ESC8 para HTTP, um atacante pode retransmitir a autenticação NTLM para o endpoint RPC não encriptado de modo a solicitar certificados com a identidade retransmitida. Isto afeta a interface de inscrição baseada em DCOM predefinida", "status": "machine-draft" }, "recommendedValue": { "value": "Indicador IF_ENFORCEENCRYPTICERTREQUEST ativado em todos os servidores de CA para exigir encriptação RPC", "status": "machine-draft" }, "remediationSteps": { "value": "Verifique os indicadores de interface da CA com certutil -getreg CA\\InterfaceFlags. Ative o indicador IF_ENFORCEENCRYPTICERTREQUEST com certutil -setreg CA\\InterfaceFlags +IF_ENFORCEENCRYPTICERTREQUEST. Reinicie o serviço CertSvc. Verifique se a inscrição de certificados continua a funcionar corretamente a partir de clientes associados ao domínio após ativar a imposição de encriptação.", "status": "machine-draft" } }, "ADCS-014": { "name": { "value": "ESC13 - Ligação de OID de política de emissão a grupo", "status": "machine-draft" }, "description": { "value": "O ESC13 explora a ligação entre os OID de política de emissão de certificados e os grupos de segurança do AD através do atributo msDS-OIDToGroupLink. Quando um modelo de certificado tem uma política de emissão que mapeia para um grupo de segurança, qualquer pessoa que se inscreva nesse modelo obtém, na prática, a pertença ao grupo ligado durante a autenticação baseada em certificados", "status": "machine-draft" }, "recommendedValue": { "value": "Nenhum OID de política de emissão ligado a grupos de segurança privilegiados; msDS-OIDToGroupLink apenas em grupos não sensíveis", "status": "machine-draft" }, "remediationSteps": { "value": "Consulte todos os objetos OID em CN=OID,CN=Public Key Services,CN=Services,CN=Configuration quanto ao atributo msDS-OIDToGroupLink. Identifique quaisquer OID ligados a grupos privilegiados (Domain Admins, Enterprise Admins, etc.). Remova o atributo msDS-OIDToGroupLink dos OID ligados a grupos sensíveis. Se a ligação for operacionalmente necessária, restrinja a inscrição nos modelos que usam a política de emissão apenas a principais autorizados.", "status": "machine-draft" } }, "ADCS-015": { "name": { "value": "ESC15 - Políticas de aplicação em modelos de Schema v1", "status": "machine-draft" }, "description": { "value": "O ESC15 (também conhecido como EKUwu) explora modelos de certificado da Versão de Schema 1 em que a extensão de Políticas de Aplicação pode ser especificada pelo requerente no pedido de certificado. Como os modelos de Schema v1 não impõem as Políticas de Aplicação do modelo, um atacante pode adicionar Autenticação de Cliente ou qualquer outra EKU ao certificado emitido, independentemente da configuração do modelo", "status": "machine-draft" }, "recommendedValue": { "value": "Nenhum modelo de Schema v1 publicado que permita a inscrição por utilizadores com poucos privilégios; migre todos os modelos necessários para Schema v2 ou posterior", "status": "machine-draft" }, "remediationSteps": { "value": "Identifique todos os modelos de Schema v1 (msPKI-Template-Schema-Version = 1) publicados em CA Empresariais. Migre os modelos de Schema v1 para Schema v2 ou posterior, criando novos modelos baseados no modelo v1 com imposição explícita de EKU. Restrinja a inscrição em quaisquer modelos v1 restantes apenas a contas administrativas. Retire da publicação os modelos v1 que já não sejam necessários.", "status": "machine-draft" } }, "ADCS-016": { "name": { "value": "ESC16 - Configuração incorreta de UPN no SAN", "status": "machine-draft" }, "description": { "value": "O ESC16 explora uma configuração incorreta em que StrongCertificateBindingEnforcement está definido como 1 (modo de compatibilidade) e os modelos de certificado com CT_FLAG_ENROLLEE_SUPPLIES_SUBJECT ou CT_FLAG_SUBJECT_ALT_REQUIRE_UPN permitem que o requerente defina o UPN no SAN. A ligação fraca permite que os certificados sejam mapeados para utilizadores apenas com base no UPN, sem a extensão de segurança OID, viabilizando a representação", "status": "machine-draft" }, "recommendedValue": { "value": "StrongCertificateBindingEnforcement definido como 2; nenhum modelo que permita UPN no SAN especificado pelo requerente com inscrição por utilizadores com poucos privilégios", "status": "machine-draft" }, "remediationSteps": { "value": "Defina StrongCertificateBindingEnforcement como 2 em todos os controladores de domínio, em HKLM\\SYSTEM\\CurrentControlSet\\Services\\Kdc. Reveja todos os modelos que permitem requerentes especificados pelo inscrito ou exigem UPN no SAN. Restrinja a inscrição nestes modelos a principais autorizados. Teste a autenticação baseada em certificados após impor a ligação forte para identificar eventuais incompatibilidades antes da implementação completa.", "status": "machine-draft" } }, "ADCS-017": { "name": { "value": "EKEUwu - Abuso da Utilização de Chave Estendida", "status": "machine-draft" }, "description": { "value": "O ataque EKEUwu visa modelos de certificado em que o campo de Utilização de Chave Estendida pode ser influenciado pelo requerente através do pedido de certificado. Isto ocorre com certas configurações de modelo em que a EKU não é rigorosamente imposta pelo modelo, permitindo que um atacante adicione EKU de autenticação a certificados que não se destinavam a fins de autenticação", "status": "machine-draft" }, "recommendedValue": { "value": "Todos os modelos de certificado impõem rigorosamente a EKU a partir da definição do modelo; nenhuma EKU controlável pelo requerente", "status": "machine-draft" }, "remediationSteps": { "value": "Reveja todos os modelos de certificado quanto à imposição de EKU. Garanta que os modelos são de Schema v2 ou posterior, onde a imposição de EKU é mais robusta. Remova os modelos desnecessários que não definem e impõem rigorosamente as EKU. Teste os pedidos de certificado para verificar se a EKU do certificado emitido corresponde à definição do modelo. Implemente módulos de política de emissão da CA que validem a EKU nos pedidos.", "status": "machine-draft" } }, "ADCS-018": { "name": { "value": "Configuração de auditoria da CA", "status": "machine-draft" }, "description": { "value": "A auditoria da Autoridade de Certificação do AD CS controla que eventos relacionados com certificados são registados, incluindo pedidos de certificado, emissão, revogação e alterações de configuração da CA. Sem uma auditoria adequada da CA, a exploração de vetores de ataque baseados em certificados (ESC1-ESC16) não pode ser detetada nem investigada, e a emissão não autorizada de certificados passa despercebida", "status": "machine-draft" }, "recommendedValue": { "value": "Todas as categorias de auditoria da CA ativadas: Iniciar/Parar, Cópia de Segurança/Restauro, Certificado Emitido, Certificado Revogado, Pedido de Certificado, Segurança da CA, Alteração de Configuração da CA", "status": "machine-draft" }, "remediationSteps": { "value": "Configure a auditoria da CA com certsrv.msc > Propriedades da CA > separador Auditoria. Ative todas as categorias de auditoria: Efetuar cópia de segurança e restaurar a base de dados da CA, Alterar a configuração da CA, Alterar as definições de segurança da CA, Emitir e gerir pedidos de certificado, Revogar certificados e publicar CRL, Armazenar e obter chaves arquivadas, Iniciar e parar o AD CS. Verifique se o registo de eventos de Segurança do Windows tem tamanho e definições de retenção suficientes.", "status": "machine-draft" } }, "ADCS-019": { "name": { "value": "Enumeração de modelos de certificado", "status": "machine-draft" }, "description": { "value": "Uma enumeração abrangente de todos os modelos de certificado com os respetivos atributos relevantes para a segurança fornece a base para a avaliação de vulnerabilidades ESC. Inclui a versão de schema do modelo, as permissões de inscrição, a configuração de EKU, os indicadores de nome, os indicadores de inscrição, o requisito de assinaturas autorizadas e o período de validade. Esta informação alimenta todas as verificações específicas de ESC", "status": "machine-draft" }, "recommendedValue": { "value": "Inventário completo de modelos com atributos de segurança documentados; todos os modelos revistos quanto a inscrição de privilégio mínimo e EKU adequada", "status": "machine-draft" }, "remediationSteps": { "value": "Enumere todos os modelos de certificado a partir de CN=Certificate Templates,CN=Public Key Services,CN=Services,CN=Configuration com certutil -template ou PowerShell. Documente para cada modelo: nome a apresentar, versão de schema, permissões de inscrição, EKU, indicadores de nome (ENROLLEE_SUPPLIES_SUBJECT), indicadores de inscrição, requisito de assinaturas autorizadas, período de validade e período de renovação. Faça a correspondência cruzada dos modelos publicados em cada CA.", "status": "machine-draft" } } } |