SB2017010603 - Multiple vulnerabilities in Ruby
Published: January 6, 2017 Updated: August 9, 2020
Breakdown by Severity
- Low
- Medium
- High
- Critical
Description
This security bulletin contains information about 3 secuirty vulnerabilities.
1) Input validation error (CVE-ID: CVE-2016-2336)
The vulnerability allows a remote non-authenticated attacker to execute arbitrary code.
Type confusion exists in two methods of Ruby's WIN32OLE class, ole_invoke and ole_query_interface. Attacker passing different type of object than this assumed by developers can cause arbitrary code execution. <a href="http://cwe.mitre.org/data/definitions/843.html">CWE-843: Access of Resource Using Incompatible Type ('Type Confusion')</a>
2) Input validation error (CVE-ID: CVE-2016-2337)
The vulnerability allows a remote non-authenticated attacker to execute arbitrary code.
Type confusion exists in _cancel_eval Ruby's TclTkIp class method. Attacker passing different type of object than String as "retval" argument can cause arbitrary code execution. <a href="http://cwe.mitre.org/data/definitions/843.html">CWE-843: Access of Resource Using Incompatible Type ('Type Confusion')</a>
3) Buffer overflow (CVE-ID: CVE-2016-2339)
The vulnerability allows a remote non-authenticated attacker to execute arbitrary code.
An exploitable heap overflow vulnerability exists in the Fiddle::Function.new "initialize" function functionality of Ruby. In Fiddle::Function.new "initialize" heap buffer "arg_types" allocation is made based on args array length. Specially constructed object passed as element of args array can increase this array size after mentioned allocation and cause heap overflow.
Remediation
Install update from vendor's website.
References
- http://www.talosintelligence.com/reports/TALOS-2016-0029/
- http://www.securityfocus.com/bid/91233
- http://www.talosintelligence.com/reports/TALOS-2016-0031/
- https://lists.debian.org/debian-lts-announce/2018/08/msg00028.html
- https://security.gentoo.org/glsa/201710-18
- http://www.securityfocus.com/bid/91234
- http://www.talosintelligence.com/reports/TALOS-2016-0034/
- https://lists.debian.org/debian-lts-announce/2018/07/msg00012.html