Ruby-Lang Ruby vulnerabilities

94 known vulnerabilities affecting ruby-lang/ruby.

Total CVEs
94
CISA KEV
0
Public exploits
9
Exploited in wild
0
Severity breakdown
CRITICAL16HIGH34MEDIUM44

Vulnerabilities

Page 2 of 5
CVE-2011-3624MEDIUMCVSS 5.3v1.8.7v1.9.22019-11-26
CVE-2011-3624 [MEDIUM] CWE-74 CVE-2011-3624: Various methods in WEBrick::HTTPRequest in Ruby 1.9.2 and 1.8.7 and earlier do not validate the X-Fo Various methods in WEBrick::HTTPRequest in Ruby 1.9.2 and 1.8.7 and earlier do not validate the X-Forwarded-For, X-Forwarded-Host and X-Forwarded-Server headers in requests, which might allow remote attackers to inject arbitrary text into log files or bypass intended address parsing via a crafted header.
nvd
CVE-2019-16254MEDIUMCVSS 5.3≤ 2.3.0≥ 2.4.0, ≤ 2.4.7+2 more2019-11-26
CVE-2019-16254 [MEDIUM] CWE-74 CVE-2019-16254: 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 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 f
nvd
CVE-2018-16395CRITICALCVSS 9.8≥ 2.3.0, ≤ 2.3.7≥ 2.4.0, ≤ 2.4.4+2 more2018-11-16
CVE-2018-16395 [CRITICAL] CVE-2018-16395: An issue was discovered in the OpenSSL library in Ruby before 2.3.8, 2.4.x before 2.4.5, 2.5.x befor An issue was discovered in the OpenSSL library in Ruby before 2.3.8, 2.4.x before 2.4.5, 2.5.x before 2.5.2, and 2.6.x before 2.6.0-preview3. When two OpenSSL::X509::Name objects are compared using ==, depending on the ordering, non-equal objects may return true. When the first argument is one character longer than the second, or the second argument conta
nvdosv
CVE-2018-16396HIGHCVSS 8.1≥ 2.3.0, ≤ 2.3.7≥ 2.4.0, ≤ 2.4.4+2 more2018-11-16
CVE-2018-16396 [HIGH] CVE-2018-16396: An issue was discovered in Ruby before 2.3.8, 2.4.x before 2.4.5, 2.5.x before 2.5.2, and 2.6.x befo An issue was discovered in Ruby before 2.3.8, 2.4.x before 2.4.5, 2.5.x before 2.5.2, and 2.6.x before 2.6.0-preview3. It does not taint strings that result from unpacking tainted strings with some formats.
nvdosv
CVE-2018-8780CRITICALCVSS 9.1fixed in 2.2.10≥ 2.3.0, < 2.3.7+3 more2018-04-03
CVE-2018-8780 [CRITICAL] CWE-22 CVE-2018-8780: In Ruby before 2.2.10, 2.3.x before 2.3.7, 2.4.x before 2.4.4, 2.5.x before 2.5.1, and 2.6.0-preview In Ruby before 2.2.10, 2.3.x before 2.3.7, 2.4.x before 2.4.4, 2.5.x before 2.5.1, and 2.6.0-preview1, the Dir.open, Dir.new, Dir.entries and Dir.empty? methods do not check NULL characters. When using the corresponding method, unintentional directory traversal may be performed.
nvdosv
CVE-2018-6914HIGHCVSS 7.5≥ 2.2.0, < 2.2.10≥ 2.3.0, < 2.3.7+3 more2018-04-03
CVE-2018-6914 [HIGH] CWE-22 CVE-2018-6914: Directory traversal vulnerability in the Dir.mktmpdir method in the tmpdir library in Ruby before 2. Directory traversal vulnerability in the Dir.mktmpdir method in the tmpdir library in Ruby before 2.2.10, 2.3.x before 2.3.7, 2.4.x before 2.4.4, 2.5.x before 2.5.1, and 2.6.0-preview1 might allow attackers to create arbitrary directories or files via a .. (dot dot) in the prefix argument.
nvdosv
CVE-2018-8777HIGHCVSS 7.5≥ 2.2.0, < 2.2.10≥ 2.3.0, < 2.3.7+3 more2018-04-03
CVE-2018-8777 [HIGH] CWE-400 CVE-2018-8777: In Ruby before 2.2.10, 2.3.x before 2.3.7, 2.4.x before 2.4.4, 2.5.x before 2.5.1, and 2.6.0-preview In Ruby before 2.2.10, 2.3.x before 2.3.7, 2.4.x before 2.4.4, 2.5.x before 2.5.1, and 2.6.0-preview1, an attacker can pass a large HTTP request with a crafted header to WEBrick server or a crafted body to WEBrick server/handler and cause a denial of service (memory consumption).
nvdosv
CVE-2018-8778HIGHCVSS 7.5≥ 2.2.0, < 2.2.10≥ 2.3.0, < 2.3.7+3 more2018-04-03
CVE-2018-8778 [HIGH] CWE-134 CVE-2018-8778: In Ruby before 2.2.10, 2.3.x before 2.3.7, 2.4.x before 2.4.4, 2.5.x before 2.5.1, and 2.6.0-preview In Ruby before 2.2.10, 2.3.x before 2.3.7, 2.4.x before 2.4.4, 2.5.x before 2.5.1, and 2.6.0-preview1, an attacker controlling the unpacking format (similar to format string vulnerabilities) can trigger a buffer under-read in the String#unpack method, resulting in a massive and controlled information disclosure.
nvdosv
CVE-2018-8779HIGHCVSS 7.5≥ 2.2.0, < 2.2.10≥ 2.3.0, < 2.3.7+3 more2018-04-03
CVE-2018-8779 [HIGH] CWE-20 CVE-2018-8779: In Ruby before 2.2.10, 2.3.x before 2.3.7, 2.4.x before 2.4.4, 2.5.x before 2.5.1, and 2.6.0-preview In Ruby before 2.2.10, 2.3.x before 2.3.7, 2.4.x before 2.4.4, 2.5.x before 2.5.1, and 2.6.0-preview1, the UNIXServer.open and UNIXSocket.open methods are not checked for null characters. It may be connected to an unintended socket.
nvdosv
CVE-2017-17742MEDIUMCVSS 5.3≥ 2.2.0, < 2.2.10≥ 2.3.0, < 2.3.7+3 more2018-04-03
CVE-2017-17742 [MEDIUM] CWE-113 CVE-2017-17742: Ruby before 2.2.10, 2.3.x before 2.3.7, 2.4.x before 2.4.4, 2.5.x before 2.5.1, and 2.6.0-preview1 a Ruby before 2.2.10, 2.3.x before 2.3.7, 2.4.x before 2.4.4, 2.5.x before 2.5.1, and 2.6.0-preview1 allows an HTTP Response Splitting attack. An attacker can inject a crafted key and value into an HTTP response for the HTTP server of WEBrick.
nvd
CVE-2012-6708MEDIUMCVSS 6.1PoC≥ 0, < 2.5.6-r02018-01-18
CVE-2012-6708 [MEDIUM] CVE-2012-6708: jQuery before 1 jQuery before 1.9.0 is vulnerable to Cross-site Scripting (XSS) attacks. The jQuery(strInput) function does not differentiate selectors from HTML in a reliable fashion. In vulnerable versions, jQuery determined whether the input was HTML by looking for the '<' character anywhere in the string, giving attackers more flexibility when attempting to construct a malicious payload. In fixed versions, jQuery only deems the input to be HTML if it exp
osv
CVE-2015-9251MEDIUMCVSS 6.1≥ 0, < 2.5.6-r02018-01-18
CVE-2015-9251 [MEDIUM] CVE-2015-9251: jQuery before 3 jQuery before 3.0.0 is vulnerable to Cross-site Scripting (XSS) attacks when a cross-domain Ajax request is performed without the dataType option, causing text/javascript responses to be executed.
osv
CVE-2017-17790CRITICALCVSS 9.8≥ 2.2, ≤ 2.2.8≥ 2.3, ≤ 2.3.5+2 more2017-12-20
CVE-2017-17790 [CRITICAL] CVE-2017-17790: The lazy_initialize function in lib/resolv.rb in Ruby through 2.4.3 uses Kernel#open, which might al The lazy_initialize function in lib/resolv.rb in Ruby through 2.4.3 uses Kernel#open, which might allow Command Injection attacks, as demonstrated by a Resolv::Hosts::new argument beginning with a '|' character, a different vulnerability than CVE-2017-17405. NOTE: situations with untrusted input may be highly unlikely.
nvd
CVE-2017-17405HIGHCVSS 8.8PoC≥ 2.2, ≤ 2.2.8≥ 2.3, ≤ 2.3.5+2 more2017-12-15
CVE-2017-17405 [HIGH] CWE-78 CVE-2017-17405: Ruby before 2.4.3 allows Net::FTP command injection. Net::FTP#get, getbinaryfile, gettextfile, put, Ruby before 2.4.3 allows Net::FTP command injection. Net::FTP#get, getbinaryfile, gettextfile, put, putbinaryfile, and puttextfile use Kernel#open to open a local file. If the localfile argument starts with the "|" pipe character, the command following the pipe character is executed. The default value of localfile is File.basename(remotefile), so malici
nvdosv
CVE-2017-10784HIGHCVSS 8.8≤ 2.2.7v2.3.0+6 more2017-09-19
CVE-2017-10784 [HIGH] CWE-287 CVE-2017-10784: The Basic authentication code in WEBrick library in Ruby before 2.2.8, 2.3.x before 2.3.5, and 2.4.x The Basic authentication code in WEBrick library in Ruby before 2.2.8, 2.3.x before 2.3.5, and 2.4.x through 2.4.1 allows remote attackers to inject terminal emulator escape sequences into its log and possibly execute arbitrary commands via a crafted user name.
nvdosv
CVE-2017-14033HIGHCVSS 7.5v2.2.0v2.2.1+13 more2017-09-19
CVE-2017-14033 [HIGH] CWE-119 CVE-2017-14033: The decode method in the OpenSSL::ASN1 module in Ruby before 2.2.8, 2.3.x before 2.3.5, and 2.4.x th The decode method in the OpenSSL::ASN1 module in Ruby before 2.2.8, 2.3.x before 2.3.5, and 2.4.x through 2.4.1 allows attackers to cause a denial of service (interpreter crash) via a crafted string.
nvdosv
CVE-2017-0898CRITICALCVSS 9.1v2.2.0v2.2.1+13 more2017-09-15
CVE-2017-0898 [CRITICAL] CWE-134 CVE-2017-0898: Ruby before 2.4.2, 2.3.5, and 2.2.8 is vulnerable to a malicious format string which contains a prec Ruby before 2.4.2, 2.3.5, and 2.2.8 is vulnerable to a malicious format string which contains a precious specifier (*) with a huge minus value. Such situation can lead to a buffer overrun, resulting in a heap memory corruption or an information disclosure from the heap.
nvdosv
CVE-2014-6438HIGHCVSS 7.5≤ 1.9.22017-09-06
CVE-2014-6438 [HIGH] CWE-399 CVE-2014-6438: The URI.decode_www_form_component method in Ruby before 1.9.2-p330 allows remote attackers to cause The URI.decode_www_form_component method in Ruby before 1.9.2-p330 allows remote attackers to cause a denial of service (catastrophic regular expression backtracking, resource consumption, or application crash) via a crafted string.
nvd
CVE-2017-14064CRITICALCVSS 9.8≤ 2.2.7v2.3.0+6 more2017-08-31
CVE-2017-14064 [CRITICAL] CWE-119 CVE-2017-14064: Ruby through 2.2.7, 2.3.x through 2.3.4, and 2.4.x through 2.4.1 can expose arbitrary memory during Ruby through 2.2.7, 2.3.x through 2.3.4, and 2.4.x through 2.4.1 can expose arbitrary memory during a JSON.generate call. The issues lies in using strdup in ext/json/ext/generator/generator.c, which will stop after encountering a '\0' byte, returning a pointer to a string of length zero, which is not the length stored in space_len.
nvdosv
CVE-2017-11465CRITICALCVSS 9.8v2.4.12017-07-19
CVE-2017-11465 [CRITICAL] CWE-125 CVE-2017-11465: The parser_yyerror function in the UTF-8 parser in Ruby 2.4.1 allows attackers to cause a denial of The parser_yyerror function in the UTF-8 parser in Ruby 2.4.1 allows attackers to cause a denial of service (invalid write or read) or possibly have unspecified other impact via a crafted Ruby script, related to the parser_tokadd_utf8 function in parse.y. NOTE: this might have security relevance as a bypass of a $SAFE protection mechanism.
nvd