Release date:
2026-08-04 09:32:08 UTC
Description:
* SECURITY UPDATE: uri ReDoS in the RFC3986 and RFC2396 parsers
- debian/patches/CVE-2023-28755.patch: clamp the greedy quantifiers of
RFC3986_URI and RFC3986_relative_ref in lib/uri/rfc3986_parser.rb to
possessive ones (17 * -> *+, 9 + -> ++), so a crafted URI such as
URI.parse('https://example.com/dir/' + 'a' * 80000 + '/##.jpg') no
longer backtracks quadratically, and add the (?: ) group around
IPv6address/IPvFuture that RFC3986_relative_ref was missing. Backport
of upstream ruby/uri 37770c2 and 17861a5 (uri 0.10.0.1). The same patch
also carries the CVE-2023-36617 follow-up, which upstream describes as
existing "because of an incomplete fix for CVE-2023-28755": the two
leading quantifiers the original fix left greedy, one in each parser.
In lib/uri/rfc3986_parser.rb the whitespace run of the PORT component
regexp of RFC3986_Parser#default_regexp is clamped to a possessive
quantifier, and in lib/uri/rfc2396_parser.rb the leading '\A\s*' of the
ABS_URI and REL_URI patterns built by RFC2396_Parser#initialize_regexp
becomes '\A\s*+', so
URI.parse('http://my.example.com').port = "\t" * 8000 + 'a' and
URI::RFC2396_Parser.new.split(' ' * 8000 + "\0") no longer backtrack
quadratically either. Backport of upstream ruby/uri 9010ee2 and
9d7bcef, folded into the same patch since upstream never ships one
parser's fix without the other's and both are the same defect class;
the patch header records the full provenance. This tree has a single
uri copy (pre-gemified, no bundler-vendored copy) and it is now
hardened in both parsers; no vendored version string is touched.
- CVE-2023-28755
- CVE-2023-36617
* SECURITY UPDATE: stringio buffer overread in ungetc/ungetbyte
- debian/patches/CVE-2024-27280.patch: in ext/stringio/stringio.c,
strio_unget_bytes() computed the string growth as cl+rest when the
position is at or past the end, so rb_str_set_len() declared cl+pos
valid bytes while only cl were written and the tail of the returned
String exposed stale heap contents. Grow by cl - (rest < 0 ? pos :
len) instead. Backport of upstream ruby/stringio a35268a
(stringio 3.0.1.1).
- CVE-2024-27280
* SECURITY UPDATE: rdoc code execution via .rdoc_options and ri cache
- debian/patches/CVE-2024-27281.patch: RDoc::RDoc#load_options read
./.rdoc_options with YAML.load_file and RDoc::Store loaded the ri
cache with a bare Marshal.load, so a crafted project directory or ri
cache instantiated arbitrary objects. Load the options file with
YAML.safe_load(permitted_classes: [RDoc::Options, Symbol]) and pass a
MarshalFilter proc to Marshal.load that only admits plain data types
and RDoc's own classes. Backport of upstream ruby/rdoc 32ff6ba0,
60a6d74e and a5de13bf (rdoc 6.3.4 + 6.3.4.1), with safe_load_file
expressed as safe_load(File.read(...)) because psych 3.1.0 has no
safe_load_file.
- CVE-2024-27281
* SECURITY UPDATE: regexp arbitrary heap read in Onigmo search
- debian/patches/CVE-2024-27282.patch: onig_search() clamps reg->dmax
to the end of the subject but not reg->dmin, so forward_search_range()
(p += reg->dmin) and backward_search_range() (range += reg->dmin)
could scan for the exact/map target past the end of the subject
buffer. Reject the search when reg->dmin exceeds the subject length.
Backport of upstream ruby/ruby 33e5b47c (Ruby 3.0.7).
- CVE-2024-27282
Updated packages:
-
alt-ruby26_2.6.10-20_amd64.deb
sha:693de34c9b33dad9470b83c33fcce501ccbf8834
-
alt-ruby26-default-gems_2.6.10-20_amd64.deb
sha:bf5f19c06263e0a43634bc7c5f2b47c43bb1ee8b
-
alt-ruby26-devel_2.6.10-20_amd64.deb
sha:aed4c55d1551365e9b2707c461d3cb75c165c6e9
-
alt-ruby26-devel-doc_2.6.10-20_amd64.deb
sha:5e8fc617d318170814fcf10d8b505d85b9ef0e41
-
alt-ruby26-doc_2.6.10-20_amd64.deb
sha:cb26df5da1c20f5ff3d68698edbf058b592d3181
-
alt-ruby26-libs_2.6.10-20_amd64.deb
sha:03adfdcd8ca142fc16c7627c4b980b37c62ecdf7
-
alt-ruby26-rubygem-bigdecimal_1.4.1-20_amd64.deb
sha:d9f39087621deb55cda45a69957149600b1507a4
-
alt-ruby26-rubygem-did-you-mean_2.6.10-20_amd64.deb
sha:74b4972c97db99c769f160c7c0cda0897066507e
-
alt-ruby26-rubygem-io-console_0.4.7-20_amd64.deb
sha:35ef02bcfd0e36fce75f625605994a62658061f8
-
alt-ruby26-rubygem-json_2.1.0-20_amd64.deb
sha:5070acf37917299707c1d4976db3468531546106
-
alt-ruby26-rubygem-minitest_5.11.3-20_amd64.deb
sha:287d008ccf89780968a1dd02114a3d10932785a3
-
alt-ruby26-rubygem-net-telnet_0.2.0-20_amd64.deb
sha:43d0dcd47451da890551f2cdd2b696a232b022c5
-
alt-ruby26-rubygem-openssl_2.6.10-20_amd64.deb
sha:950819211171149f0e36507da82ad220ef621bf7
-
alt-ruby26-rubygem-power-assert_1.1.3-20_amd64.deb
sha:cb97e246ab184630f1faa12a964fd5137113879e
-
alt-ruby26-rubygem-psych_3.1.0-20_amd64.deb
sha:795aaef585cd440a9c9ce7b7d8ae28e9f67756ab
-
alt-ruby26-rubygem-rake_12.3.3-20_amd64.deb
sha:bd2213ce9cf2b1315fe72c2346c2030712db8065
-
alt-ruby26-rubygem-rdoc_6.1.2.1-20_amd64.deb
sha:854bb1bebb82f78f042ecaec7fef1b51cdb07524
-
alt-ruby26-rubygem-test-unit_3.2.9-20_amd64.deb
sha:1f1014fdb95898e14cb5407ec75b23b22ea3a748
-
alt-ruby26-rubygem-typeprof_2.6.10-20_amd64.deb
sha:a56d431be2c3a9bd18d9250149c9a84ce1d97082
-
alt-ruby26-rubygem-xmlrpc_0.3.0-20_amd64.deb
sha:8d141cc2ba0bcd1bdad226fd849268676b09fc18
-
alt-ruby26-rubygems_3.0.3.1-20_amd64.deb
sha:1b7d96f61409ef6a3bdcf79a07a7b1bf80be8bc0
-
alt-ruby26-rubygems-devel_3.0.3.1-20_amd64.deb
sha:15cb2afc3f430c0309df0f19ed546913e97d12cd
-
alt-ruby26_2.6.10-20_arm64.deb
sha:b7f88cead418dba79aabe9428e7ae974823fda05
-
alt-ruby26-default-gems_2.6.10-20_arm64.deb
sha:b4f6edd655e73906f457bbef0c0eb6e4379496c6
-
alt-ruby26-devel_2.6.10-20_arm64.deb
sha:03baec682e33213c4205b4d1fd58b733e0de1062
-
alt-ruby26-devel-doc_2.6.10-20_arm64.deb
sha:5824673eb1f92fd4df54cbed8e9babf23009bae2
-
alt-ruby26-doc_2.6.10-20_arm64.deb
sha:445f44e2207304bdca2bd1ba59a8c239f780fa22
-
alt-ruby26-libs_2.6.10-20_arm64.deb
sha:fe1330b6c9df651f958c447883f8a5678746eaa0
-
alt-ruby26-rubygem-bigdecimal_1.4.1-20_arm64.deb
sha:f6633b1ea67ed65d1e02c6c3203d317a6d028f25
-
alt-ruby26-rubygem-did-you-mean_2.6.10-20_arm64.deb
sha:b01fbc8af334e19d2d50620db43369d1d270efc5
-
alt-ruby26-rubygem-io-console_0.4.7-20_arm64.deb
sha:061c54740b602a92e9348ba4b52534de636f20b4
-
alt-ruby26-rubygem-json_2.1.0-20_arm64.deb
sha:08d53f813a7b05a688532a0a239de269d5536114
-
alt-ruby26-rubygem-minitest_5.11.3-20_arm64.deb
sha:a016e07879affb7cb513f40481a35751b99f34b1
-
alt-ruby26-rubygem-net-telnet_0.2.0-20_arm64.deb
sha:a6468eb37b654e5b4ccc65733e3e3388ec66cb64
-
alt-ruby26-rubygem-openssl_2.6.10-20_arm64.deb
sha:5520593d86828af68b4dcc3505e6d82682dbacbc
-
alt-ruby26-rubygem-power-assert_1.1.3-20_arm64.deb
sha:09c4d58f3207ff70697ebf95c97e5deea7a6180b
-
alt-ruby26-rubygem-psych_3.1.0-20_arm64.deb
sha:7deeaff5d190ef678a370819add4de033d43ff26
-
alt-ruby26-rubygem-rake_12.3.3-20_arm64.deb
sha:26b5f36ee124605e9694152ed9dc1e6331f6254c
-
alt-ruby26-rubygem-rdoc_6.1.2.1-20_arm64.deb
sha:2eed5278f368c13378e0d3f9b7bcac69ba5f4041
-
alt-ruby26-rubygem-test-unit_3.2.9-20_arm64.deb
sha:f86aa42b36e5c4842edb041ca1b96c7c4d9e3712
-
alt-ruby26-rubygem-typeprof_2.6.10-20_arm64.deb
sha:6f2a9a1d79261f66c9b202d06287b9d1e60b26f6
-
alt-ruby26-rubygem-xmlrpc_0.3.0-20_arm64.deb
sha:764b36f6975fb0f53ff44610a56608ebdb908751
-
alt-ruby26-rubygems_3.0.3.1-20_arm64.deb
sha:2db103150329450ad3cbbc6ebe32d7dedf7a16e5
-
alt-ruby26-rubygems-devel_3.0.3.1-20_arm64.deb
sha:d95fc6bb99e8f832b020f76c4b3071a57e6d4ca4
Notes:
This page is generated automatically and has not been checked for errors. For clarification or
corrections please contact the
CloudLinux Packaging Team.