← Back

Ruby

ruby

Vendor: Ruby Lang • 92 CVEs

CVEs (92)

CVE
VENDORS
PRODUCTS
UPDATED
PUBLISHED
CVSS
1Ruby Lang
1Ruby
May 26, 2026
May 22, 2026
N/A· v4
8.1 HIGH· v3
N/A· v2
An issue was discovered in Ruby 4 before 4.0.5. A race condition leading to a use-after-free in the pthread-based getaddrinfo timeout handler (rb_getaddrinfo in ext/socket/raddrinfo.c) allows a remote attacker who can de...Show more
An issue was discovered in Ruby 4 before 4.0.5. A race condition leading to a use-after-free in the pthread-based getaddrinfo timeout handler (rb_getaddrinfo in ext/socket/raddrinfo.c) allows a remote attacker who can delay DNS responses near the user-specified timeout to crash a Ruby process that calls Addrinfo.getaddrinfo(..., timeout:) or Socket.tcp(..., resolv_timeout:). Memory-corruption-based exploitation is theoretically possible. The attack could, for example, be carried out through a crafted authoritative DNS server or recursive resolver.Show less
3Debian
FedoraprojectRuby Lang
4Debian Linux
FedoraRuby+1 more
Nov 4, 2025
Mar 31, 2023
N/A· v4
5.3 MEDIUM· v3
N/A· v2
A ReDoS issue was discovered in the Time component through 0.2.1 in Ruby through 3.2.1. The Time parser mishandles invalid URLs that have specific characters. It causes an increase in execution time for parsing strings t...Show more
A ReDoS issue was discovered in the Time component through 0.2.1 in Ruby through 3.2.1. The Time parser mishandles invalid URLs that have specific characters. It causes an increase in execution time for parsing strings to Time objects. The fixed versions are 0.1.1 and 0.2.2.Show less
2Fedoraproject
Ruby Lang
3Cgi
FedoraRuby
Nov 4, 2025
Nov 18, 2022
N/A· v4
8.8 HIGH· v3
N/A· v2
The cgi gem before 0.1.0.2, 0.2.x before 0.2.2, and 0.3.x before 0.3.5 for Ruby allows HTTP response splitting. This is relevant to applications that use untrusted user input either to generate an HTTP response or to cre...Show more
The cgi gem before 0.1.0.2, 0.2.x before 0.2.2, and 0.3.x before 0.3.5 for Ruby allows HTTP response splitting. This is relevant to applications that use untrusted user input either to generate an HTTP response or to create a CGI::Cookie object.Show less
2Debian
Ruby Lang
2Debian Linux
Ruby
Nov 21, 2024
Sep 29, 2022
N/A· v4
9.8 CRITICAL· v3
N/A· v2
An exploitable heap overflow vulnerability exists in the Psych::Emitter start_document function of Ruby. In Psych::Emitter start_document function heap buffer "head" allocation is made based on tags array length. Special...Show more
An exploitable heap overflow vulnerability exists in the Psych::Emitter start_document function of Ruby. In Psych::Emitter start_document function heap buffer "head" allocation is made based on tags array length. Specially constructed object passed as element of tags array can increase this array size after mentioned allocation and cause heap overflow.Show less
3Apple
DebianRuby Lang
3Debian Linux
MacosRuby
Nov 4, 2025
May 9, 2022
N/A· v4
7.5 HIGH· v3
4.3 MEDIUM· v2
There is a buffer over-read in Ruby before 2.6.10, 2.7.x before 2.7.6, 3.x before 3.0.4, and 3.1.x before 3.1.2. It occurs in String-to-Float conversion, including Kernel#Float and String#to_f.
1Ruby Lang
1Ruby
Nov 21, 2024
May 9, 2022
N/A· v4
9.8 CRITICAL· v3
7.5 HIGH· v2
A double free was found in the Regexp compiler in Ruby 3.x before 3.0.4 and 3.1.x before 3.1.2. If a victim attempts to create a Regexp from untrusted user input, an attacker may be able to write to unexpected memory loc...Show more
A double free was found in the Regexp compiler in Ruby 3.x before 3.0.4 and 3.1.x before 3.1.2. If a victim attempts to create a Regexp from untrusted user input, an attacker may be able to write to unexpected memory locations.Show less
6Debian
FedoraprojectOpensuse+3 more
9Cgi
Debian LinuxEnterprise Linux+6 more
May 22, 2025
Jan 1, 2022
N/A· v4
7.5 HIGH· v3
5.0 MEDIUM· v2
CGI::Cookie.parse in Ruby through 2.6.8 mishandles security prefixes in cookie names. This also affects the CGI gem through 0.3.0 for Ruby.
6Debian
FedoraprojectOpensuse+3 more
9Date
Debian LinuxEnterprise Linux+6 more
Nov 21, 2024
Jan 1, 2022
N/A· v4
7.5 HIGH· v3
5.0 MEDIUM· v2
Date.parse in the date gem through 3.2.0 for Ruby allows ReDoS (regular expression Denial of Service) via a long string. The fixed versions are 3.2.1, 3.1.2, 3.0.2, and 2.0.1.
2Oracle
Ruby Lang
2Jd Edwards Enterpriseone Tools
Ruby
Nov 21, 2024
Aug 1, 2021
N/A· v4
7.4 HIGH· v3
5.8 MEDIUM· v2
An issue was discovered in Ruby through 2.6.7, 2.7.x through 2.7.3, and 3.x through 3.0.1. Net::IMAP does not raise an exception when StartTLS fails with an an unknown response, which might allow man-in-the-middle attack...Show more
An issue was discovered in Ruby through 2.6.7, 2.7.x through 2.7.3, and 3.x through 3.0.1. Net::IMAP does not raise an exception when StartTLS fails with an an unknown response, which might allow man-in-the-middle attackers to bypass the TLS protections by leveraging a network position between the client and the registry to block the StartTLS command, aka a "StartTLS stripping attack."Show less
1Ruby Lang
1Ruby
Nov 21, 2024
Jul 30, 2021
N/A· v4
7.5 HIGH· v3
5.0 MEDIUM· v2
In Ruby through 3.0 on Windows, a remote attacker can submit a crafted path when a Web application handles a parameter with TmpDir.
3Debian
OracleRuby Lang
3Debian Linux
Jd Edwards Enterpriseone ToolsRuby
Nov 21, 2024
Jul 13, 2021
N/A· v4
5.8 MEDIUM· v3
5.0 MEDIUM· v2
An issue was discovered in Ruby through 2.6.7, 2.7.x through 2.7.3, and 3.x through 3.0.1. A malicious FTP server can use the PASV response to trick Net::FTP into connecting back to a given IP address and port. This pote...Show more
An issue was discovered in Ruby through 2.6.7, 2.7.x through 2.7.3, and 3.x through 3.0.1. A malicious FTP server can use the PASV response to trick Net::FTP into connecting back to a given IP address and port. This potentially makes curl extract information about services that are otherwise private and not disclosed (e.g., the attacker can conduct port scans and service banner extractions).Show less
2Fedoraproject
Ruby Lang
3Fedora
RexmlRuby
Nov 21, 2024
Apr 21, 2021
N/A· v4
7.5 HIGH· v3
5.0 MEDIUM· v2
The REXML gem before 3.2.5 in Ruby before 2.6.7, 2.7.x before 2.7.3, and 3.x before 3.0.1 does not properly address XML round-trip issues. An incorrect document can be produced after parsing and serializing.
2Fedoraproject
Ruby Lang
3Fedora
RubyWebrick
Nov 21, 2024
Oct 6, 2020
N/A· v4
7.5 HIGH· v3
5.0 MEDIUM· v2
An issue was discovered in Ruby through 2.5.8, 2.6.x through 2.6.6, and 2.7.x through 2.7.1. WEBrick, a simple HTTP server bundled with Ruby, had not checked the transfer-encoding header value rigorously. An attacker may...Show more
An issue was discovered in Ruby through 2.5.8, 2.6.x through 2.6.6, and 2.7.x through 2.7.1. WEBrick, a simple HTTP server bundled with Ruby, had not checked the transfer-encoding header value rigorously. An attacker may potentially exploit this issue to bypass a reverse proxy (which also has a poor header check), which may lead to an HTTP Request Smuggling attack.Show less
3Debian
FedoraprojectRuby Lang
3Debian Linux
FedoraRuby
Nov 21, 2024
May 4, 2020
N/A· v4
5.3 MEDIUM· v3
5.0 MEDIUM· v2
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 request...Show more
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.Show less
4Debian
FedoraprojectPuma+1 more
4Debian Linux
FedoraPuma+1 more
Nov 21, 2024
Feb 28, 2020
N/A· v4
7.5 HIGH· v3
5.0 MEDIUM· v2
In Puma (RubyGem) before 4.3.2 and before 3.12.3, if an application using Puma allows untrusted input in a response header, an attacker can use newline characters (i.e. `CR`, `LF` or`/r`, `/n`) to end the header and inje...Show more
In Puma (RubyGem) before 4.3.2 and before 3.12.3, if an application using Puma allows untrusted input in a response header, an attacker can use newline characters (i.e. `CR`, `LF` or`/r`, `/n`) to end the header and inject malicious content, such as additional headers or an entirely new response body. This vulnerability is known as HTTP Response Splitting. While not an attack in itself, response splitting is a vector for several other attacks, such as cross-site scripting (XSS). This is related to CVE-2019-16254, which fixed this vulnerability for the WEBrick Ruby web server. This has been fixed in versions 4.3.2 and 3.12.3 by checking all headers for line endings and rejecting headers with those characters.Show less
3Debian
PuppetRuby Lang
5Debian Linux
Puppet AgentPuppet Enterprise+2 more
Nov 21, 2024
Nov 29, 2019
N/A· v4
5.9 MEDIUM· v3
4.3 MEDIUM· v2
verify_certificate_identity in the OpenSSL extension in Ruby before 2.0.0 patchlevel 645, 2.1.x before 2.1.6, and 2.2.x before 2.2.2 does not properly validate hostnames, which allows remote attackers to spoof servers vi...Show more
verify_certificate_identity in the OpenSSL extension in Ruby before 2.0.0 patchlevel 645, 2.1.x before 2.1.6, and 2.2.x before 2.2.2 does not properly validate hostnames, which allows remote attackers to spoof servers via vectors related to (1) multiple wildcards, (1) wildcards in IDNA names, (3) case sensitivity, and (4) non-ASCII characters.Show less
4Debian
OpensuseOracle+1 more
4Debian Linux
GraalvmLeap+1 more
Nov 21, 2024
Nov 26, 2019
N/A· v4
8.1 HIGH· v3
6.8 MEDIUM· v2
Ruby through 2.4.7, 2.5.x through 2.5.6, and 2.6.x through 2.6.4 allows code injection if the first argument (aka the "command" argument) to Shell#[] or Shell#test in lib/shell.rb is untrusted data. An attacker can explo...Show more
Ruby through 2.4.7, 2.5.x through 2.5.6, and 2.6.x through 2.6.4 allows code injection if the first argument (aka the "command" argument) to Shell#[] or Shell#test in lib/shell.rb is untrusted data. An attacker can exploit this to call an arbitrary Ruby method.Show less
2Debian
Ruby Lang
2Debian Linux
Ruby
Nov 21, 2024
Nov 26, 2019
N/A· v4
5.3 MEDIUM· v3
5.0 MEDIUM· v2
Ruby through 2.4.7, 2.5.x through 2.5.6, and 2.6.x through 2.6.4 allows HTTP Response Splitting. If a program using WEBrick inserts untrusted input into the response header, an attacker can exploit it to insert a newline...Show more
Ruby through 2.4.7, 2.5.x through 2.5.6, and 2.6.x through 2.6.4 allows HTTP Response Splitting. If a program using WEBrick inserts untrusted input into the response header, an attacker can exploit it to insert a newline character to split a header, and inject malicious content to deceive clients. NOTE: this issue exists because of an incomplete fix for CVE-2017-17742, which addressed the CRLF vector, but did not address an isolated CR or an isolated LF.Show less
2Debian
Ruby Lang
2Debian Linux
Ruby
Nov 21, 2024
Nov 26, 2019
N/A· v4
7.5 HIGH· v3
7.8 HIGH· v2
WEBrick::HTTPAuth::DigestAuth in Ruby through 2.4.7, 2.5.x through 2.5.6, and 2.6.x through 2.6.4 has a regular expression Denial of Service cause by looping/backtracking. A victim must expose a WEBrick server that uses...Show more
WEBrick::HTTPAuth::DigestAuth in Ruby through 2.4.7, 2.5.x through 2.5.6, and 2.6.x through 2.6.4 has a regular expression Denial of Service cause by looping/backtracking. A victim must expose a WEBrick server that uses DigestAuth to the Internet or a untrusted network.Show less
2Canonical
Ruby Lang
2Ruby
Ubuntu Linux
Nov 21, 2024
Nov 26, 2019
N/A· v4
6.5 MEDIUM· v3
6.4 MEDIUM· v2
Ruby through 2.4.7, 2.5.x through 2.5.6, and 2.6.x through 2.6.4 mishandles path checking within File.fnmatch functions.