The following Ruby on Rails issue was reported:
Arbitrary file existence disclosure in Action Pack
There is an information leak vulnerability in Action Pack. This vulnerability
has been assigned the CVE identifier CVE-2014-7829.
Versions Affected: >= 3.0.0
Not affected: <= 3.0.0, 4.2.0.beta4
Fixed Versions: 3.2.21, 4.0.12, 4.1.8
Specially crafted requests can be used to determine whether a file exists on
the filesystem that is outside the Rails application's root directory. The
files will not be served, but attackers can determine whether or not the file
exists. This vulnerability is very similar to CVE-2014-7818, but the
specially crafted string is slightly different.
This only impacts Rails applications that enable static file serving at
runtime. For example, the application's production configuration will say:
config.serve_static_assets = true
All users running an affected release should either upgrade or use one of the work arounds immediately.
The 3.2.21, 4.0.12 & 4.1.8 releases are available at the normal locations.
To work around this issue, set config.serve_static_assets = false in an initializer. This work around will not be possible in all hosting environments and upgrading is advised.
Red Hat would like to thank the Ruby on Rails project for reporting this issue. Upstream acknowledges Behrouz Sadeghipour, Patrick Toomey of GitHub, and Remon Oldenbeuving of hackerone as the original, independent reporters.
Created attachment 958144 [details]
3.1 patch from upstream
Created attachment 958145 [details]
3.2 patch from upstream
Created attachment 958146 [details]
4.0 patch from upstream
Created attachment 958147 [details]
4.1 patch from upstream
This is public now: http://seclists.org/oss-sec/2014/q4/648
Created rubygem-actionpack tracking bugs for this issue:
Affects: fedora-all [bug 1165077]
Upstream commits (3.2, 4.0, 4.1):
rubygem-actionpack-4.1.5-2.fc21 has been pushed to the Fedora 21 stable repository. If problems still persist, please make note of it in this bug report.
rubygem-actionpack-4.0.0-5.fc20 has been pushed to the Fedora 20 stable repository. If problems still persist, please make note of it in this bug report.