Bugzilla will be upgraded to version 5.0 on a still to be determined date in the near future. The original upgrade date has been delayed.
Bug 1561949 - (CVE-2018-8780) CVE-2018-8780 ruby: Unintentional directory traversal by poisoned NULL byte in Dir
CVE-2018-8780 ruby: Unintentional directory traversal by poisoned NULL byte i...
Status: NEW
Product: Security Response
Classification: Other
Component: vulnerability (Show other bugs)
unspecified
All Linux
medium Severity medium
: ---
: ---
Assigned To: Red Hat Product Security
impact=moderate,public=20180328,repor...
: Security
Depends On: 1568494 1568495 1568497 1568498 1561956 1561957 1561958 1563873 1563874 1565258 1568496
Blocks: 1561954
  Show dependency treegraph
 
Reported: 2018-03-29 05:08 EDT by Adam Mariš
Modified: 2018-07-17 08:34 EDT (History)
30 users (show)

See Also:
Fixed In Version: ruby 2.2.10, ruby 2.3.7, ruby 2.4.4, ruby 2.5.1
Doc Type: If docs needed, set a value
Doc Text:
It was found that the methods from the Dir class did not properly handle strings containing the NULL byte. An attacker, able to inject NULL bytes in a path, could possibly trigger an unspecified behavior of the ruby script.
Story Points: ---
Clone Of:
Environment:
Last Closed:
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Adam Mariš 2018-03-29 05:08:00 EDT
Dir.open, Dir.new, Dir.entries and Dir.empty? accept the path of the target directory as their parameter. If the parameter contains NUL (\0) bytes, these methods recognize that the path is completed before the NUL bytes. So, if a script accepts an external input as the argument of these methods, the attacker can make the unintentional directory traversal.

Affected versions:

Ruby 2.2 series: 2.2.9 and earlier
Ruby 2.3 series: 2.3.6 and earlier
Ruby 2.4 series: 2.4.3 and earlier
Ruby 2.5 series: 2.5.0 and earlier

External References:

https://www.ruby-lang.org/en/news/2018/03/28/poisoned-nul-byte-dir-cve-2018-8780/
Comment 1 Adam Mariš 2018-03-29 05:16:38 EDT
Created ruby tracking bugs for this issue:

Affects: fedora-all [bug 1561957]
Comment 10 Eric Christensen 2018-04-17 15:04:54 EDT
Mitigation:

It is possible to test for presence of the NULL byte manually prior to call a Dir method with an untrusted string.
Comment 11 Cedric Buissart 2018-04-18 03:43:34 EDT
Upstream fix : 
https://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=revision&revision=62989
Comment 16 Andrej Nemec 2018-05-14 11:26:03 EDT
Statement:

This issue affects the versions of ruby as shipped with Red Hat CloudForms 4. Red Hat Product Security has rated this issue as having security impact of Moderate. A future update may address this issue. For additional information, refer to the Issue Severity Classification: https://access.redhat.com/security/updates/classification/.

This issue affects the versions of ruby as shipped with Red Hat Subscription Asset Manager 1. Red Hat Product Security has rated this issue as having security impact of Moderate. A future update may address this issue. For additional information, refer to the Issue Severity Classification: https://access.redhat.com/security/updates/classification/.

Note You need to log in before you can comment on or make changes to this bug.