Lucene search

K
rubygemsRubySecRUBY:RDOC-2024-27281
HistoryMar 20, 2024 - 9:00 p.m.

RCE vulnerability with .rdoc_options in RDoc

2024-03-2021:00:00
RubySec
www.ruby-lang.org
6
rdoc
ruby
object injection
remote code execution
update
gemfile
bundler

CVSS3

4.5

Attack Vector

LOCAL

Attack Complexity

HIGH

Privileges Required

NONE

User Interaction

REQUIRED

Scope

UNCHANGED

Confidentiality Impact

LOW

Integrity Impact

LOW

Availability Impact

LOW

CVSS:3.1/AV:L/AC:H/PR:N/UI:R/S:U/C:L/I:L/A:L

AI Score

8.3

Confidence

Low

An issue was discovered in RDoc 6.3.3 through 6.6.2, as distributed in Ruby
3.x through 3.3.0.

When parsing .rdoc_options (used for configuration in RDoc) as a YAML file,
object injection and resultant remote code execution are possible because
there are no restrictions on the classes that can be restored.

When loading the documentation cache, object injection and resultant remote
code execution are also possible if there were a crafted cache.

We recommend to update the RDoc gem to version 6.6.3.1 or later. In order to
ensure compatibility with bundled version in older Ruby series, you may
update as follows instead:

  • For Ruby 3.0 users: Update to rdoc 6.3.4.1
  • For Ruby 3.1 users: Update to rdoc 6.4.1.1
  • For Ruby 3.2 users: Update to rdoc 6.5.1.1

You can use gem update rdoc to update it. If you are using bundler, please
add gem "rdoc", ">= 6.6.3.1" to your Gemfile.

Note: 6.3.4, 6.4.1, 6.5.1 and 6.6.3 have a incorrect fix. We recommend to
upgrade 6.3.4.1, 6.4.1.1, 6.5.1.1 and 6.6.3.1 instead of them.

Affected configurations

Vulners
Node
rubyrdocRange6.3.06.3.4.1
OR
rubyrdocRange6.4.06.4.1.1
OR
rubyrdocRange6.5.1.1
VendorProductVersionCPE
rubyrdoc*cpe:2.3:a:ruby:rdoc:*:*:*:*:*:*:*:*

CVSS3

4.5

Attack Vector

LOCAL

Attack Complexity

HIGH

Privileges Required

NONE

User Interaction

REQUIRED

Scope

UNCHANGED

Confidentiality Impact

LOW

Integrity Impact

LOW

Availability Impact

LOW

CVSS:3.1/AV:L/AC:H/PR:N/UI:R/S:U/C:L/I:L/A:L

AI Score

8.3

Confidence

Low