• GnuTLS: Visão Sobre a Falha no Certificado X.509

    GnuTLS, como muitos sabem, é uma biblioteca de comunicações seguras para a implementação do protocolo SSL, do TLS, e protocolos DTLS. Ela fornece aplicativos como uma forma de usar os protocolos acima, sem ter que criar o seu próprio código de criptografia. Ele é destinado para ser portátil e eficiente, com foco na segurança e interoperabilidade. Em muitos casos, ele é usado ao invés de outras bibliotecas, porque GnuTLS é distribuído sob a GNU Lesser General Public License.


    No entanto, foi detectado que o código de verificação do certificado GnuTLS X.509, não consegue lidar corretamente com determinadas condições de erro que podem ocorrer durante o processo de verificação do certificado. Ao verificar o certificado, GnuTLS iria identificá-lo em relação a ocorrência de verificação, mesmo que esta resulte em um procedimento que não foi bem sucedido. Isto significa que os certificados inválidos podem ser aceitos como válidos.

    O que torna esta falha realmente problemática, é que GnuTLS é utilizado em muitas aplicações e pacotes de software, incluindo o Exim, Weechat, Mutt, Lynx, CUPS, e gnoMint. Além do mais, ele poderia ser usado para aplicações Web, programas de e-mail e outros códigos que usam a biblioteca. Portanto, é muito difícil saber o número de aplicativos afetados. Na sequência, alguns dos poucos sistemas operacionais que suportam GnuTLS:


    • Red Hat Enterprise Linux Desktop (v.6)
    • Red Hat Enterprise Linux HPC Node (v.6)
    • Red Hat Enterprise Linux Server (v.6)
    • Red Hat Enterprise Linux Servidor AUS (v.6.5)
    • Red Hat Enterprise Linux Servidor EUS (v.6.5.z)
    • Red Hat Enterprise Linux Workstation (v.6)
    • Ubuntu 12.10
    • Ubuntu 12.04 LTS
    • Ubuntu 10.04 LTS
    • openSUSE 11.4


    Um atacante pode usar um certificado de segurança inválido especialmente criado, e esse certificado será aceito como válido por um aplicativo (por exemplo, navegador, cliente de e-mail, leitor de feeds, etc) que usa GnuTLS. Isso pode levar à divulgação de informações confidenciais e pode levar a controle completo do sistema da vítima, através de uma combinação com outra vulnerabilidade.


    Uma Rápida Visão Sobre o Protocolo X.509

    Os protocolos X.509 contam com um modelo de confiança hierárquica. Autoridades Certificadoras (CAs), são usadas ​​para certificar entidades. Normalmente, existe mais de uma autoridade de certificação, e essas autoridades podem certificar outras autoridades a emitir certificados também. É preciso confiar em uma ou mais CAs para comunicações seguras. Nesse caso, apenas os certificados emitidos pelas autoridades confiáveis ​​são aceitos.


    Saiba Mais:

    [1] Trend Micro - Security Intelligence http://blog.trendmicro.com/trendlabs...ion-code-flaw/