An issue was discovered in Ruby 2.5.x through 2.5.7, 2.6.x through 2.6.5, and 2.7.0. If a victim calls BasicSocket#read_nonblock(requested_size, buffer, exception: false), the method resizes the buffer to fit the requested size, but no data is copied. Thus, the buffer string provides the previous value of the heap. This may expose possibly sensitive data from the interpreter.
2020-05-04T15:15:13.963
2024-11-21T04:56:23.987
Modified
CVSSv3.1: 5.3 (MEDIUM)
AV:N/AC:L/Au:N/C:P/I:N/A:N
10.0
2.9
Type | Vendor | Product | Version/Range | Vulnerable? |
---|---|---|---|---|
Application | ruby-lang | ruby | ≤ 2.5.7 | Yes |
Application | ruby-lang | ruby | ≤ 2.6.5 | Yes |
Application | ruby-lang | ruby | 2.7.0 | Yes |
Operating System | linux | linux_kernel | - | No |
Operating System | fedoraproject | fedora | 31 | Yes |
Operating System | debian | debian_linux | 10.0 | Yes |