Bug 1601642 (CVE-2018-10907)

Summary: CVE-2018-10907 glusterfs: Stack-based buffer overflow in server-rpc-fops.c allows remote attackers to execute arbitrary code
Product: [Other] Security Response Reporter: Sam Fowler <sfowler>
Component: vulnerabilityAssignee: Red Hat Product Security <security-response-team>
Status: CLOSED ERRATA QA Contact:
Severity: high Docs Contact:
Priority: high    
Version: unspecifiedCC: abhgupta, amukherj, anoopcs, atumball, bmcclain, dbaker, dblechte, dfediuck, eedri, humble.devassy, jokerman, jonathansteffan, kkeithle, matthias, mgoldboi, michal.skrivanek, ndevos, public, ramkrsna, rhs-bugs, sankarshan, sbonazzo, security-response-team, sfowler, sherold, sisharma, ssaha, sthangav, trankin, vbellur
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: glusterfs-3.12.14, glusterfs-4.1.4 Doc Type: If docs needed, set a value
Doc Text:
It was found that glusterfs server is vulnerable to mulitple stack based buffer overflows due to functions in server-rpc-fopc.c allocating fixed size buffers using 'alloca(3)'. An authenticated attacker could exploit this by mounting a gluster volume and sending a string longer that the fixed buffer size to cause crash or potential code execution.
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-06-10 10:32:39 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1605227, 1607211, 1616829, 1625080, 1625083, 1625097, 1625654    
Bug Blocks: 1601660    

Description Sam Fowler 2018-07-17 00:21:05 UTC
GlusterFS is vulnerable to multiple stack-based buffer overflows due to functions in server-rpc-fops.c allocating fixed-size buffers using 'alloca(3)'. A remote attacker could expliot this by mounting a Gluster volume and sending a string longer than the fixed buffer to cause a crash or potential code execution.

Comment 1 Sam Fowler 2018-07-17 00:21:15 UTC
Acknowledgments:

Name: Michael Hanselmann (hansmi.ch)

Comment 6 Doran Moppert 2018-07-23 02:55:31 UTC
Statement:

This issue did not affect Red Hat Enterprise Linux 6 and 7 as the flaw is present in glusterfs-server, which is not shipped there.

This flaw affects glusterfs versions included in Red Hat Virtualization 4 Hypervisor. However, in recommended configurations, the vulnerability is only exposed to hypervisor administrators and can not be exploited from virtual machines or other hosts on the network. For Red Hat Virtualization, Product Security has rated this flaw as Moderate. For additional information, refer to the Issue Severity Classification: https://access.redhat.com/security/updates/classification/.

Comment 9 Siddharth Sharma 2018-09-04 05:44:03 UTC
Created glusterfs tracking bugs for this issue:

Affects: fedora-all [bug 1625080]

Comment 11 errata-xmlrpc 2018-09-04 06:24:24 UTC
This issue has been addressed in the following products:

  Red Hat Gluster Storage 3.4 for RHEL 7
  Native Client for RHEL 7 for Red Hat Storage

Via RHSA-2018:2607 https://access.redhat.com/errata/RHSA-2018:2607

Comment 12 errata-xmlrpc 2018-09-04 06:25:52 UTC
This issue has been addressed in the following products:

  Red Hat Gluster Storage 3.4 for RHEL 6
  Native Client for RHEL 6 for Red Hat Storage

Via RHSA-2018:2608 https://access.redhat.com/errata/RHSA-2018:2608

Comment 13 Siddharth Sharma 2018-09-04 07:54:38 UTC
upstream fix:

https://review.gluster.org/21070

Comment 16 Siddharth Sharma 2018-09-04 14:42:32 UTC
Mitigation:

To limit exposure of gluster server nodes :  

1. gluster server should be on LAN and not reachable from public networks.  
2. Use gluster auth.allow and auth.reject.  
3. Use TLS certificates to authenticate gluster clients.

caveat: This does not protect from attacks by authenticated gluster clients.

Comment 17 errata-xmlrpc 2018-11-05 14:56:30 UTC
This issue has been addressed in the following products:

  Red Hat Virtualization 4 for Red Hat Enterprise Linux 7

Via RHSA-2018:3470 https://access.redhat.com/errata/RHSA-2018:3470