Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
A fixação de certificados é uma técnica de segurança em que apenas certificados autorizados ou fixados são aceitos ao estabelecer uma sessão segura. Qualquer tentativa de estabelecer uma sessão segura usando um certificado diferente é rejeitada.
Histórico de fixação de certificados
A fixação de certificados foi originalmente concebida como uma forma de prevenir ataques Man-in-the-Middle (MITM). A fixação de certificados tornou-se popular pela primeira vez em 2011 como resultado do comprometimento da Autoridade de Certificação (CA) DigiNotar, onde um invasor foi capaz de criar certificados curinga para vários sites de alto perfil, incluindo o Google. O Chrome foi atualizado para "prender" os certificados atuais dos sites do Google e rejeitaria qualquer ligação se fosse apresentado um certificado diferente. Mesmo que um invasor encontrasse uma maneira de convencer uma autoridade de certificação a emitir um certificado fraudulento, ele ainda seria reconhecido pelo Chrome como inválido e a conexão rejeitada.
Embora navegadores como Chrome e Firefox estivessem entre os primeiros aplicativos a implementar essa técnica, a gama de casos de uso se expandiu rapidamente. Dispositivos de Internet das Coisas (IoT), aplicativos móveis iOS e Android e uma coleção díspar de aplicativos de software começaram a usar essa técnica para se defender contra ataques Man-in-the-Middle.
Durante vários anos, a fixação de certificados foi considerada uma boa prática de segurança. A supervisão sobre o cenário da Infraestrutura de Chave Pública (PKI) pública melhorou graças à transparência nas práticas de emissão das autoridades de certificação confiadas publicamente.
Como abordar a fixação de certificados em seu aplicativo
Normalmente, um aplicativo contém uma lista de certificados autorizados ou propriedades de certificados, incluindo Nomes Distintos de Entidade, impressões digitais, números de série e chaves públicas. As aplicações podem fixar-se em certificados de folha individuais ou de entidade final, certificados de CA subordinados ou até mesmo certificados de CA raiz.
Se seu aplicativo especificar explicitamente uma lista de CAs aceitáveis, talvez seja necessário atualizar periodicamente os certificados fixados quando as Autoridades de Certificação forem alteradas ou expirarem. Para detetar a fixação do certificado, recomendamos seguir as seguintes etapas:
Se você for um desenvolvedor de aplicativos, pesquise seu código-fonte para qualquer uma das seguintes referências para a autoridade de certificação que está mudando ou expirando. Se houver uma correspondência, atualize a aplicação para incluir as autoridades de certificação (CAs) ausentes.
- Impressões digitais de certificados
 - Nomes Distintos de Assunto
 - Nomes comuns
 - Números de série
 - Chaves públicas
 - Outras propriedades do certificado
 
Se seu aplicativo cliente personalizado se integrar com APIs do Azure ou outros serviços do Azure e você não tiver certeza se ele usa a fixação de certificado, verifique com o fornecedor do aplicativo.
Limitações de fixação de certificados
A prática da fixação de certificados tornou-se amplamente contestada, uma vez que acarreta custos inaceitáveis de agilidade de certificados. Uma implementação específica, HTTP Public Key Pinning (HPKP), foi completamente preterida
Como não há um padrão único da Web para como a fixação de certificados é executada, não podemos oferecer orientação direta na deteção de seu uso. Embora não desencorajemos a fixação de certificados, os clientes devem estar cientes das limitações que essa prática cria caso optem por fazê-lo.
- Certifique-se de que os certificados fixados podem ser atualizados rapidamente.
 - Os requisitos do setor, como os Requisitos Básicos do CA/Browser Forum para a emissão e gestão dos Certificados Publicly-Trusted, exigem a rotação e revogação de certificados num prazo tão curto quanto 24 horas em determinadas situações.