Certificados do lado do cliente da lista negra no Apache2?

0

Existe uma maneira de lista negra um certificado do lado do cliente ser emitido para um usuário específico?

Atualmente, tenho um caso em que alguns agentes maliciosos possuem certificados do lado do cliente do meu site e não sei como impedi-los de usá-lo.

No momento, executo Apache2 em uma máquina do CentOS, mas posso migrar para NGINX , se necessário.

    
por David Swan 18.09.2017 / 14:52

2 respostas

0

Peça à CA que emitiu o certificado para revogá-lo. A CA (deveria) emite regularmente uma Lista de Revogação de Certificados (CRL), que é, em essência, uma lista negra de certificados que qualquer parte confiável (seu servidor Apache, neste caso) não deve confiar.

Você pode verificar se sua CA emite CRL procurando pela extensão CRL Distribution Point:

$ openssl x509 -noout -text -in example.crt | grep -A1 "Full Name"

            Full Name:
              URI:http://pki.example.test/cdp/example-CA.crl

O URL é onde a parte confiável pode fazer o download da CRL.

Como alternativa, a CA pode estar usando OCSP para distribuir informações de revogação. Esse é um sistema mais complexo, em que a parte confiável consulta o respondente em busca do status de revogação de um certificado específico. Você pode encontrar isso usando:

$ openssl x509 -noout -text -in example.crt | grep "OCSP"

                OCSP - URI:http://ocsp.example.test

Esta é a URL do respondente do OCSP.

Se você não vir nenhum desses, a CA não está emitindo informações de revogação e provavelmente você está sem sorte.

No entanto, o Apache tem a opção SSLCARevocationFile , que pode apontar para uma CRL baixada através de algum método alternativo. No caso improvável de a CA gerar CRLs, mas não as distribuir pelos métodos acima, mas estiver disposta a enviá-las por e-mail para você, por exemplo; você pode salvar isso no servidor e apontar o Apache para ele com essa opção. Improvável, eu sugiro.

    
por 18.09.2017 / 15:54
0

Após a ajuda de garethTheRed . Eu escrevi um script Python que ajuda você a revogar os certificados do lado do cliente. Como eu era minha própria autoridade de certificação (CA), eu poderia facilmente colocar minhas mãos na chave privada da CA, que é necessária para atualizar minha CRL.

Você se alguém está tendo problemas semelhantes. Você pode encontrar meu código nesta essência

    
por 17.10.2017 / 14:28