Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: php/php-src
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: php-8.0.28
Choose a base ref
...
head repository: php/php-src
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: php-8.0.29
Choose a head ref
  • 8 commits
  • 8 files changed
  • 6 contributors

Commits on Feb 14, 2023

  1. 1 Configuration menu
    Copy the full SHA
    e86d870 View commit details
    Browse the repository at this point in the history
  2. [ci skip] Next release will be 8.0.29

    Gabriel Caruso committed Feb 14, 2023
    Configuration menu
    Copy the full SHA
    0e45ed7 View commit details
    Browse the repository at this point in the history

Commits on Jun 6, 2023

  1. Fix missing randomness check and insufficient random bytes for SOAP H…

    …TTP Digest
    
    If php_random_bytes_throw fails, the nonce will be uninitialized, but
    still sent to the server. The client nonce is intended to protect
    against a malicious server. See section 5.10 and 5.12 of RFC 7616 [1],
    and bullet point 2 below.
    
    Tim pointed out that even though it's the MD5 of the nonce that gets sent,
    enumerating 31 bits is trivial. So we have still a stack information leak
    of 31 bits.
    
    Furthermore, Tim found the following issues:
    * The small size of cnonce might cause the server to erroneously reject
      a request due to a repeated (cnonce, nc) pair. As per the birthday
      problem 31 bits of randomness will return a duplication with 50%
      chance after less than 55000 requests and nc always starts counting at 1.
    * The cnonce is intended to protect the client and password against a
      malicious server that returns a constant server nonce where the server
      precomputed a rainbow table between passwords and correct client response.
      As storage is fairly cheap, a server could precompute the client responses
      for (a subset of) client nonces and still have a chance of reversing the
      client response with the same probability as the cnonce duplication.
    
      Precomputing the rainbow table for all 2^31 cnonces increases the rainbow
      table size by factor 2 billion, which is infeasible. But precomputing it
      for 2^14 cnonces only increases the table size by factor 16k and the server
      would still have a 10% chance of successfully reversing a password with a
      single client request.
    
    This patch fixes the issues by increasing the nonce size, and checking
    the return value of php_random_bytes_throw(). In the process we also get
    rid of the MD5 hashing of the nonce.
    
    [1] RFC 7616: https://www.rfc-editor.org/rfc/rfc7616
    
    Co-authored-by: Tim Düsterhus <[email protected]>
    2 people authored and adoy committed Jun 6, 2023
    Configuration menu
    Copy the full SHA
    ac4254a View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    0572448 View commit details
    Browse the repository at this point in the history
  3. Update NEWS

    adoy committed Jun 6, 2023
    Configuration menu
    Copy the full SHA
    b720ab9 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    32c7c43 View commit details
    Browse the repository at this point in the history

Commits on Jun 7, 2023

  1. Update NEWS for PHP 8.0.29

    Gabriel Caruso committed Jun 7, 2023
    1 Configuration menu
    Copy the full SHA
    794bceb View commit details
    Browse the repository at this point in the history
  2. Update versions for PHP 8.0.29

    Gabriel Caruso committed Jun 7, 2023
    Configuration menu
    Copy the full SHA
    340c89f View commit details
    Browse the repository at this point in the history
Loading