Bug 1303887

Summary: socat: Stack overflow vulnerability in parser
Product: [Other] Security Response Reporter: Adam Mariš <amaris>
Component: vulnerabilityAssignee: Red Hat Product Security <security-response-team>
Status: CLOSED WONTFIX QA Contact:
Severity: low Docs Contact:
Priority: low    
Version: unspecifiedCC: abhgupta, carnil, dmcphers, jialiu, jokerman, kseifried, lmeyer, mmccomas, pwouters, tiwillia
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: socat 2.0.0-b9, socat 1.7.3.1 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-02-11 09:29:00 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Bug Depends On: 1186301, 1303888, 1303889    
Bug Blocks: 1303890    

Description Adam Mariš 2016-02-02 10:52:46 UTC
A stack overflow vulnerability was found that can be triggered when command line arguments (complete address specifications, host names, file names) are longer than 512 bytes. Successful exploitation might allow an attacker to execute arbitrary code with the privileges of the socat process. This vulnerability can only be exploited when an attacker is able to inject data into socat's command line. A vulnerable scenario would be a CGI script that reads data from clients and uses (parts of) this data as hostname for a Socat invocation.

Affected versions:
1.5.0.0 - 1.7.3.0
2.0.0-b1 - 2.0.0-b8

Reference:

http://seclists.org/oss-sec/2016/q1/262

Comment 1 Adam Mariš 2016-02-02 10:53:19 UTC
Created socat tracking bugs for this issue:

Affects: fedora-all [bug 1303888]
Affects: epel-all [bug 1303889]

Comment 4 Tomas Hoger 2016-02-11 09:29:00 UTC
Overflow is triggered by long command line arguments.  While these may be based on untrusted input, they typically are not.  There's currently no plan to correct this in Red Hat Enterprise Linux.  The fix may be added if the component is updated to fixed upstream version in future updates.