Bug 1302589 (CVE-2016-0747)

Summary: CVE-2016-0747 nginx: Insufficient limits of CNAME resolution in resolver
Product: [Other] Security Response Reporter: Martin Prpič <mprpic>
Component: vulnerabilityAssignee: Red Hat Product Security <security-response-team>
Status: CLOSED ERRATA QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: unspecifiedCC: affix, athmanem, bperkins, dkholia, jamielinux, jeremy, jkaluza, jorton, mmaslano, pavel.lisy, peter, webstack-team, wtogami
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: nginx 1.9.10, nginx 1.8.1 Doc Type: Bug Fix
Doc Text:
It was discovered that nginx did not limit recursion when resolving CNAME DNS records. An attacker able to manipulate DNS responses received by nginx could use this flaw to cause a worker process to use an excessive amount of resources if nginx enabled the resolver in its configuration.
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-07-14 11:21:41 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: 1302334, 1302337, 1302592, 1302599, 1342443    
Bug Blocks: 1302591    

Description Martin Prpič 2016-01-28 08:41:47 UTC
The following flaw was found in the nginx resolver:

CNAME resolution was insufficiently limited, allowing an attacker who is able to trigger arbitrary name resolution to cause excessive resource consumption in worker processes.

This issue affects nginx only if the "resolver" directive is used in a configuration file.

The problems are fixed in nginx upstream versions 1.9.10 and 1.8.1.

External References:

http://mailman.nginx.org/pipermail/nginx-announce/2016/000169.html

Comment 1 Martin Prpič 2016-01-28 08:45:15 UTC
Created nginx tracking bugs for this issue:

Affects: fedora-all [bug 1302592]

Comment 3 Tomas Hoger 2016-02-10 21:40:12 UTC
The nginx' DNS resolver is not enabled by default.  It can be used to dynamically resolve names of backend servers.  Therefore, in many configurations, attacker would not be able to make nginx resolve names in attacker controlled domain (backend servers and their name are usually considered trusted) without being able to MITM DNS traffic between nginx and configured DNS server (or the configured DNS server/resolver and authoritative DNS servers for the zone with names being resolved).  If resolver is not used, backend server names specified in configuration are resolved to IP addresses at start.

Comment 6 errata-xmlrpc 2016-07-14 05:50:31 UTC
This issue has been addressed in the following products:

  Red Hat Software Collections for Red Hat Enterprise Linux 7.2 EUS
  Red Hat Software Collections for Red Hat Enterprise Linux 7.1 EUS
  Red Hat Software Collections for Red Hat Enterprise Linux 7
  Red Hat Software Collections for Red Hat Enterprise Linux 6
  Red Hat Software Collections for Red Hat Enterprise Linux 6.6 EUS
  Red Hat Software Collections for Red Hat Enterprise Linux 6.7 EUS

Via RHSA-2016:1425 https://access.redhat.com/errata/RHSA-2016:1425