Skip to content
  1. Feb 06, 2013
    • Andy Polyakov's avatar
      ssl/s3_cbc.c: uint64_t portability fix. · 6b2a8439
      Andy Polyakov authored
      Break dependency on uint64_t. It's possible to declare bits as
      unsigned int, because TLS packets are limited in size and 32-bit
      value can't overflow.
      (cherry picked from commit cab13fc8)
      6b2a8439
    • Dr. Stephen Henson's avatar
      typo. · 6b1f7bee
      Dr. Stephen Henson authored
      (cherry picked from commit 34ab3c8c711ff79c2b768f0b17e4b2a78fd1df5d)
      6b1f7bee
    • Dr. Stephen Henson's avatar
      Add ordinal for CRYPTO_memcmp: since this will affect multiple · 8109e830
      Dr. Stephen Henson authored
      branches it needs to be in a "gap".
      (cherry picked from commit 81ce0e14)
      8109e830
    • Dr. Stephen Henson's avatar
      Timing fix mitigation for FIPS mode. · c4e6fb15
      Dr. Stephen Henson authored
      We have to use EVP in FIPS mode so we can only partially mitigate
      timing differences.
      
      Make an extra call to EVP_DigestSignUpdate to hash additonal blocks
      to cover any timing differences caused by removal of padding.
      (cherry picked from commit b908e88e)
      c4e6fb15
    • Ben Laurie's avatar
      Oops. Add missing file. · a693ead6
      Ben Laurie authored
      (cherry picked from commit 014265eb02e26f35c8db58e2ccbf100b0b2f0072)
      a693ead6
    • Ben Laurie's avatar
      Update DTLS code to match CBC decoding in TLS. · e33ac0e7
      Ben Laurie authored
      This change updates the DTLS code to match the constant-time CBC
      behaviour in the TLS.
      (cherry picked from commit 9f27de170d1b7bef3d46d41382dc4dafde8b3900)
      e33ac0e7
    • Ben Laurie's avatar
      Don't crash when processing a zero-length, TLS >= 1.1 record. · 93cab6b3
      Ben Laurie authored
      The previous CBC patch was bugged in that there was a path through enc()
      in s3_pkt.c/d1_pkt.c which didn't set orig_len. orig_len would be left
      at the previous value which could suggest that the packet was a
      sufficient length when it wasn't.
      (cherry picked from commit 6cb19b7681f600b2f165e4adc57547b097b475fd)
      93cab6b3
    • Ben Laurie's avatar
      Make CBC decoding constant time. · 2acc020b
      Ben Laurie authored
      This patch makes the decoding of SSLv3 and TLS CBC records constant
      time. Without this, a timing side-channel can be used to build a padding
      oracle and mount Vaudenay's attack.
      
      This patch also disables the stitched AESNI+SHA mode pending a similar
      fix to that code.
      
      In order to be easy to backport, this change is implemented in ssl/,
      rather than as a generic AEAD mode. In the future this should be changed
      around so that HMAC isn't in ssl/, but crypto/ as FIPS expects.
      (cherry picked from commit e130841b)
      2acc020b
    • Ben Laurie's avatar
      Add and use a constant-time memcmp. · 7c770d57
      Ben Laurie authored
      This change adds CRYPTO_memcmp, which compares two vectors of bytes in
      an amount of time that's independent of their contents. It also changes
      several MAC compares in the code to use this over the standard memcmp,
      which may leak information about the size of a matching prefix.
      (cherry picked from commit 2ee79888)
      7c770d57
  2. Feb 04, 2013
  3. Feb 02, 2013
  4. Jan 24, 2013
  5. Jan 23, 2013
  6. Jan 22, 2013
  7. Jan 21, 2013
  8. Jan 20, 2013
  9. Jan 19, 2013
  10. Jan 17, 2013
  11. Jan 13, 2013
  12. Jan 12, 2013
  13. Jan 07, 2013