SA-20040802 GnuTLS certificate chain verification bug

From: Patrik Hornik (patrik_at_hornik.sk)
Date: 08/02/04

  • Next message: CoolICE: "DOS@MEHTTPS"
    Date: Mon, 2 Aug 2004 17:18:46 +0200
    To: bugtraq@securityfocus.com
    
    

    -----BEGIN PGP SIGNED MESSAGE-----
    Hash: SHA1

    ======================================================================
    Security advisory 20040802
    - ----------------------------------------------------------------------
      Product: GnuTLS
      Vulnerability type: wrong algorithm
      Impact: DoS
      Severity: low
      Issue date: 2004/08/02
      Last updated: 2004/08/02
    ======================================================================

    Description
    - -----------

    Mr. Hornik has discovered error in X.509 certificate chain
    verification procedure in GnuTLS library. The certificate chain should
    be verified from last root certificate to the first certificate.
    Otherwise a lot of unauthorized CPU processing can be forced to check
    certificate signatures signed with arbitrary RSA/DSA keys chosen by
    attacker.

    In GnuTLS the signatures are checked from first to last certificate,
    there is no limit on size of keys and no limit on length of
    certificate chain.

    Vulnerability
    - -------------

    GnuTLS library checks the signatures from first to last root
    certificate of chain, there is no limit on size of keys and no limit
    on length of certificate chain. So attacker can construct such
    certificate chain that signature signed with chosen RSA key with
    chosen size will be verified. This is not the case when verifying from
    last root certificate to first - there are checked signatures signed
    by trusted certificates and so trusted keys only.

    The main problem is that size of key can be chosen - with RSA keys the
    complexity of verifying signature is dependent on square of key size.
    So for example verifying signature signed with 32768 bit RSA key takes
    approximately 1024 times longer than verifying signature signed with
    1024 bit RSA key (with simillar bit length of e). Because RSA
    verification is not simple operation with longer keys one verification
    takes such significant amount of processing power that you can
    effectively launch DoS on CPU resources of remote machine running
    GnuTLS.

    Who is affected?
    - ----------------

    Affected are all users using GnuTLS library version 1.0.16 and
    below for verifying X.509 certificate chains.

    The version 1.0.17 with this issue fixed by introducing some limits on
    key size and chain length is available from vendor together with this
    announcement.

    Recommendations
    - ---------------

    Upgrade your GnuTLS library to the version 1.0.17 or later with this
    issue fixed and restart all dependant applications if needed.

    References
    - ----------

    This security advisory:
    http://www.hornik.sk/SA/SA-20040802.txt

    GnuTLS:
    http://www.gnu.org/software/gnutls/

    Contact
    - -------

    Patrik Hornik
    - --
    Email: patrik@hornik.sk
    Phone: +421 905 385 666
    PGP KeyID: 940AA357

    -----BEGIN PGP SIGNATURE-----
    Version: PGPfreeware 6.0.2i

    iQA/AwUBQQ5KKp4J6KGUCqNXEQK5tACgo9/t1cSCvaihE1yy/N/wvPXCvowAoOlA
    v0adXHcIJyrMsHlmmwVCC58v
    =c6Re
    -----END PGP SIGNATURE-----


  • Next message: CoolICE: "DOS@MEHTTPS"

    Relevant Pages

    • Re: Vista Certificate Enrollment api
      ... Please follow these instructions to collect a log file. ... I'm using the new Certificate Enrollment API in Vista to enroll certificates ... is not surprising as the root of the certificate chain returned by the CA is ... I have verified that if I separately install the Root CA cert alone then the ...
      (microsoft.public.platformsdk.security)
    • Re: SChannel problems
      ... How to send only arbitrary list of trusted CA's to SSL client. ... How to build client certificate chain from SSL Content where initially ...
      (microsoft.public.platformsdk.security)
    • Re: [Full-Disclosure] PGP vs. certificate from Verisign
      ... DECIDING WHETHER OR NOT TO RELY ON THE INFORMATION IN A CERTIFICATE.? ... well as all the Certificates in its Certificate Chain. ... assurances, it is your responsibility to obtain such assurances for such ... You agree to release, indemnify, defend and hold harmless VeriSign and any ...
      (Full-Disclosure)
    • Outlook S/MIME Vulnerability
      ... Outlook's S/MIME implementation is vulnerable to the certificate chain ... The vulnerability allows anyone to forge the digital ... signature on an email that is to be viewed with Outlook. ...
      (Bugtraq)
    • Re: RSA vs AES
      ... > Verisign, MS took the extra burden of issuing a critical patch to ... > those stolen root CAs. ... if any of these other keys ever got compromised ... ... BBN Certificate Services ...
      (sci.crypt)

  • Quantcast