1. 22 1月, 2015 2 次提交
  2. 08 1月, 2015 1 次提交
    • D
      Unauthenticated DH client certificate fix. · 1421e0c5
      Dr. Stephen Henson 提交于
      Fix to prevent use of DH client certificates without sending
      certificate verify message.
      
      If we've used a client certificate to generate the premaster secret
      ssl3_get_client_key_exchange returns 2 and ssl3_get_cert_verify is
      never called.
      
      We can only skip the certificate verify message in
      ssl3_get_cert_verify if the client didn't send a certificate.
      
      Thanks to Karthikeyan Bhargavan for reporting this issue.
      CVE-2015-0205
      Reviewed-by: NMatt Caswell <matt@openssl.org>
      1421e0c5
  3. 06 1月, 2015 2 次提交
  4. 03 1月, 2015 1 次提交
  5. 31 12月, 2014 1 次提交
  6. 17 12月, 2014 3 次提交
  7. 09 12月, 2014 1 次提交
  8. 20 11月, 2014 3 次提交
  9. 19 11月, 2014 1 次提交
  10. 24 9月, 2014 1 次提交
  11. 09 8月, 2014 1 次提交
    • D
      Fix SRP authentication ciphersuites. · 9e72d496
      Dr. Stephen Henson 提交于
      The addition of SRP authentication needs to be checked in various places
      to work properly. Specifically:
      
      A certificate is not sent.
      A certificate request must not be sent.
      Server key exchange message must not contain a signature.
      If appropriate SRP authentication ciphersuites should be chosen.
      Reviewed-by: NMatt Caswell <matt@openssl.org>
      9e72d496
  12. 07 8月, 2014 1 次提交
  13. 05 7月, 2014 1 次提交
  14. 04 7月, 2014 1 次提交
  15. 02 7月, 2014 1 次提交
  16. 05 6月, 2014 1 次提交
    • D
      Fix for CVE-2014-0224 · a91be108
      Dr. Stephen Henson 提交于
      Only accept change cipher spec when it is expected instead of at any
      time. This prevents premature setting of session keys before the master
      secret is determined which an attacker could use as a MITM attack.
      
      Thanks to KIKUCHI Masashi (Lepidum Co. Ltd.) for reporting this issue
      and providing the initial fix this patch is based on.
      (cherry picked from commit bc8923b1ec9c467755cd86f7848c50ee8812e441)
      a91be108
  17. 01 6月, 2014 1 次提交
  18. 13 5月, 2014 1 次提交
  19. 28 3月, 2014 3 次提交
    • D
      Security framework. · b362ccab
      Dr. Stephen Henson 提交于
      Security callback: selects which parameters are permitted including
      sensible defaults based on bits of security.
      
      The "parameters" which can be selected include: ciphersuites,
      curves, key sizes, certificate signature algorithms, supported
      signature algorithms, DH parameters, SSL/TLS version, session tickets
      and compression.
      
      In some cases prohibiting the use of a parameters will mean they are
      not advertised to the peer: for example cipher suites and ECC curves.
      In other cases it will abort the handshake: e.g DH parameters or the
      peer key size.
      
      Documentation to follow...
      b362ccab
    • D
      Check return value of ssl3_output_cert_chain · 66f96fe2
      Dr. Stephen Henson 提交于
      66f96fe2
    • D
      Auto DH support. · 09599b52
      Dr. Stephen Henson 提交于
      Add auto DH parameter support. This is roughly equivalent to the
      ECDH auto curve selection but for DH. An application can just call
      
      SSL_CTX_set_auto_dh(ctx, 1);
      
      and appropriate DH parameters will be used based on the size of the
      server key.
      
      Unlike ECDH there is no way a peer can indicate the range of DH parameters
      it supports. Some peers cannot handle DH keys larger that 1024 bits for
      example. In this case if you call:
      
      SSL_CTX_set_auto_dh(ctx, 2);
      
      Only 1024 bit DH parameters will be used.
      
      If the server key is 7680 bits or more in size then 8192 bit DH parameters
      will be used: these will be *very* slow.
      
      The old export ciphersuites aren't supported but those are very
      insecure anyway.
      09599b52
  20. 19 3月, 2014 1 次提交
  21. 21 2月, 2014 1 次提交
  22. 06 2月, 2014 3 次提交
  23. 28 1月, 2014 1 次提交
  24. 26 1月, 2014 1 次提交
  25. 09 1月, 2014 2 次提交
    • D
      use SSL_kDHE throughout instead of SSL_kEDH · 5a21cadb
      Daniel Kahn Gillmor 提交于
      DHE is the standard term used by the RFCs and by other TLS
      implementations.  It's useful to have the internal variables use the
      standard terminology.
      
      This patch leaves a synonym SSL_kEDH in place, though, so that older
      code can still be built against it, since that has been the
      traditional API.  SSL_kEDH should probably be deprecated at some
      point, though.
      5a21cadb
    • D
      use SSL_kECDHE throughout instead of SSL_kEECDH · 4082fea8
      Daniel Kahn Gillmor 提交于
      ECDHE is the standard term used by the RFCs and by other TLS
      implementations.  It's useful to have the internal variables use the
      standard terminology.
      
      This patch leaves a synonym SSL_kEECDH in place, though, so that older
      code can still be built against it, since that has been the
      traditional API.  SSL_kEECDH should probably be deprecated at some
      point, though.
      4082fea8
  26. 02 1月, 2014 1 次提交
  27. 18 11月, 2013 1 次提交
  28. 21 10月, 2013 2 次提交
    • N
      Fix another gmt_unix_time case in server_random · 2927791d
      Nick Mathewson 提交于
      2927791d
    • N
      Do not include a timestamp in the Client/ServerHello Random field. · 2016265d
      Nick Mathewson 提交于
      Instead, send random bytes, unless SSL_SEND_{CLIENT,SERVER}RANDOM_MODE
      is set.
      
      This is a forward-port of commits:
        4af793036f6ef4f0a1078e5d7155426a98d50e37
        f4c93b46edb51da71f09eda99e83eaf193a33c08
        3da721dac9382c48812c8eba455528fd59af2eef
        2583270191a8b27eed303c03ece1da97b9b69fd3
      
      While the gmt_unix_time record was added in an ostensible attempt to
      mitigate the dangers of a bad RNG, its presence leaks the host's view
      of the current time in the clear.  This minor leak can help
      fingerprint TLS instances across networks and protocols... and what's
      worse, it's doubtful thet the gmt_unix_time record does any good at
      all for its intended purpose, since:
      
          * It's quite possible to open two TLS connections in one second.
      
          * If the PRNG output is prone to repeat itself, ephemeral
            handshakes (and who knows what else besides) are broken.
      2016265d