RDoc RCE vulnerability with .rdoc_options
Moderate severity
GitHub Reviewed
Published
Mar 25, 2024
to the GitHub Advisory Database
•
Updated Aug 21, 2024
Package
Affected versions
>= 6.4.0, < 6.4.1.1
>= 6.5.0, < 6.5.1.1
>= 6.6.0, < 6.6.3.1
>= 6.3.3, < 6.3.4.1
Patched versions
6.4.1.1
6.5.1.1
6.6.3.1
6.3.4.1
Description
Published to the GitHub Advisory Database
Mar 25, 2024
Reviewed
Mar 25, 2024
Published by the National Vulnerability Database
May 14, 2024
Last updated
Aug 21, 2024
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:
rdoc
6.3.4.1rdoc
6.4.1.1rdoc
6.5.1.1You can use
gem update rdoc
to update it. If you are using bundler, please addgem "rdoc", ">= 6.6.3.1"
to yourGemfile
.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.
References