-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 ===================================================================== Red Hat Security Advisory Synopsis: Moderate: curl security, bug fix, and enhancement update Advisory ID: RHSA-2015:2159-06 Product: Red Hat Enterprise Linux Advisory URL: https://rhn.redhat.com/errata/RHSA-2015-2159.html Issue date: 2015-11-19 CVE Names: CVE-2014-3613 CVE-2014-3707 CVE-2014-8150 CVE-2015-3143 CVE-2015-3148 ===================================================================== 1. Summary: Updated curl packages that fix multiple security issues, several bugs, and add two enhancements are now available for Red Hat Enterprise Linux 7. Red Hat Product Security has rated this update as having Moderate security impact. Common Vulnerability Scoring System (CVSS) base scores, which give detailed severity ratings, are available for each vulnerability from the CVE links in the References section. 2. Relevant releases/architectures: Red Hat Enterprise Linux Client (v. 7) - x86_64 Red Hat Enterprise Linux Client Optional (v. 7) - x86_64 Red Hat Enterprise Linux ComputeNode (v. 7) - x86_64 Red Hat Enterprise Linux ComputeNode Optional (v. 7) - x86_64 Red Hat Enterprise Linux Server (v. 7) - aarch64, ppc64, ppc64le, s390x, x86_64 Red Hat Enterprise Linux Workstation (v. 7) - x86_64 3. Description: The curl packages provide the libcurl library and the curl utility for downloading files from servers using various protocols, including HTTP, FTP, and LDAP. It was found that the libcurl library did not correctly handle partial literal IP addresses when parsing received HTTP cookies. An attacker able to trick a user into connecting to a malicious server could use this flaw to set the user's cookie to a crafted domain, making other cookie-related issues easier to exploit. (CVE-2014-3613) A flaw was found in the way the libcurl library performed the duplication of connection handles. If an application set the CURLOPT_COPYPOSTFIELDS option for a handle, using the handle's duplicate could cause the application to crash or disclose a portion of its memory. (CVE-2014-3707) It was discovered that the libcurl library failed to properly handle URLs with embedded end-of-line characters. An attacker able to make an application using libcurl access a specially crafted URL via an HTTP proxy could use this flaw to inject additional headers to the request or construct additional requests. (CVE-2014-8150) It was discovered that libcurl implemented aspects of the NTLM and Negotatiate authentication incorrectly. If an application uses libcurl and the affected mechanisms in a specifc way, certain requests to a previously NTLM-authenticated server could appears as sent by the wrong authenticated user. Additionally, the initial set of credentials for HTTP Negotiate-authenticated requests could be reused in subsequent requests, although a different set of credentials was specified. (CVE-2015-3143, CVE-2015-3148) Red Hat would like to thank the cURL project for reporting these issues. Bug fixes: * An out-of-protocol fallback to SSL 3.0 was available with libcurl. Attackers could abuse the fallback to force downgrade of the SSL version. The fallback has been removed from libcurl. Users requiring this functionality can explicitly enable SSL 3.0 through the libcurl API. (BZ#1154060) * TLS 1.1 and TLS 1.2 are no longer disabled by default in libcurl. You can explicitly disable them through the libcurl API. (BZ#1170339) * FTP operations such as downloading files took a significantly long time to complete. Now, the FTP implementation in libcurl correctly sets blocking direction and estimated timeout for connections, resulting in faster FTP transfers. (BZ#1218272) Enhancements: * With the updated packages, it is possible to explicitly enable or disable new Advanced Encryption Standard (AES) cipher suites to be used for the TLS protocol. (BZ#1066065) * The libcurl library did not implement a non-blocking SSL handshake, which negatively affected performance of applications based on the libcurl multi API. The non-blocking SSL handshake has been implemented in libcurl, and the libcurl multi API now immediately returns the control back to the application whenever it cannot read or write data from or to the underlying network socket. (BZ#1091429) * The libcurl library used an unnecessarily long blocking delay for actions with no active file descriptors, even for short operations. Some actions, such as resolving a host name using /etc/hosts, took a long time to complete. The blocking code in libcurl has been modified so that the initial delay is short and gradually increases until an event occurs. (BZ#1130239) All curl users are advised to upgrade to these updated packages, which contain backported patches to correct these issues and add these enhancements. 4. Solution: Before applying this update, make sure all previously released errata relevant to your system have been applied. For details on how to apply this update, refer to: https://access.redhat.com/articles/11258 5. Bugs fixed (https://bugzilla.redhat.com/): 1130239 - Difference in curl performance between RHEL6 and RHEL7 1136154 - CVE-2014-3613 curl: incorrect handling of IP addresses in cookie domain 1154060 - curl: Disable out-of-protocol fallback to SSL 3.0 1154941 - CVE-2014-3707 curl: incorrect handle duplication after COPYPOSTFIELDS 1161182 - Response headers added by proxy servers missing in CURLINFO_HEADER_SIZE 1166264 - NTLM: ignore CURLOPT_FORBID_REUSE during NTLM HTTP auth [RHEL-7] 1170339 - use the default min/max TLS version provided by NSS 1178692 - CVE-2014-8150 curl: URL request injection vulnerability in parseurlandfillconn() 1213306 - CVE-2015-3143 curl: re-using authenticated connection when unauthenticated 1213351 - CVE-2015-3148 curl: Negotiate not treated as connection-oriented 1218272 - Performance problem with libcurl and FTP on RHEL7.X 6. Package List: Red Hat Enterprise Linux Client (v. 7): Source: curl-7.29.0-25.el7.src.rpm x86_64: curl-7.29.0-25.el7.x86_64.rpm curl-debuginfo-7.29.0-25.el7.i686.rpm curl-debuginfo-7.29.0-25.el7.x86_64.rpm libcurl-7.29.0-25.el7.i686.rpm libcurl-7.29.0-25.el7.x86_64.rpm Red Hat Enterprise Linux Client Optional (v. 7): x86_64: curl-debuginfo-7.29.0-25.el7.i686.rpm curl-debuginfo-7.29.0-25.el7.x86_64.rpm libcurl-devel-7.29.0-25.el7.i686.rpm libcurl-devel-7.29.0-25.el7.x86_64.rpm Red Hat Enterprise Linux ComputeNode (v. 7): Source: curl-7.29.0-25.el7.src.rpm x86_64: curl-7.29.0-25.el7.x86_64.rpm curl-debuginfo-7.29.0-25.el7.i686.rpm curl-debuginfo-7.29.0-25.el7.x86_64.rpm libcurl-7.29.0-25.el7.i686.rpm libcurl-7.29.0-25.el7.x86_64.rpm Red Hat Enterprise Linux ComputeNode Optional (v. 7): x86_64: curl-debuginfo-7.29.0-25.el7.i686.rpm curl-debuginfo-7.29.0-25.el7.x86_64.rpm libcurl-devel-7.29.0-25.el7.i686.rpm libcurl-devel-7.29.0-25.el7.x86_64.rpm Red Hat Enterprise Linux Server (v. 7): Source: curl-7.29.0-25.el7.src.rpm aarch64: curl-7.29.0-25.el7.aarch64.rpm curl-debuginfo-7.29.0-25.el7.aarch64.rpm libcurl-7.29.0-25.el7.aarch64.rpm libcurl-devel-7.29.0-25.el7.aarch64.rpm ppc64: curl-7.29.0-25.el7.ppc64.rpm curl-debuginfo-7.29.0-25.el7.ppc.rpm curl-debuginfo-7.29.0-25.el7.ppc64.rpm libcurl-7.29.0-25.el7.ppc.rpm libcurl-7.29.0-25.el7.ppc64.rpm libcurl-devel-7.29.0-25.el7.ppc.rpm libcurl-devel-7.29.0-25.el7.ppc64.rpm ppc64le: curl-7.29.0-25.el7.ppc64le.rpm curl-debuginfo-7.29.0-25.el7.ppc64le.rpm libcurl-7.29.0-25.el7.ppc64le.rpm libcurl-devel-7.29.0-25.el7.ppc64le.rpm s390x: curl-7.29.0-25.el7.s390x.rpm curl-debuginfo-7.29.0-25.el7.s390.rpm curl-debuginfo-7.29.0-25.el7.s390x.rpm libcurl-7.29.0-25.el7.s390.rpm libcurl-7.29.0-25.el7.s390x.rpm libcurl-devel-7.29.0-25.el7.s390.rpm libcurl-devel-7.29.0-25.el7.s390x.rpm x86_64: curl-7.29.0-25.el7.x86_64.rpm curl-debuginfo-7.29.0-25.el7.i686.rpm curl-debuginfo-7.29.0-25.el7.x86_64.rpm libcurl-7.29.0-25.el7.i686.rpm libcurl-7.29.0-25.el7.x86_64.rpm libcurl-devel-7.29.0-25.el7.i686.rpm libcurl-devel-7.29.0-25.el7.x86_64.rpm Red Hat Enterprise Linux Workstation (v. 7): Source: curl-7.29.0-25.el7.src.rpm x86_64: curl-7.29.0-25.el7.x86_64.rpm curl-debuginfo-7.29.0-25.el7.i686.rpm curl-debuginfo-7.29.0-25.el7.x86_64.rpm libcurl-7.29.0-25.el7.i686.rpm libcurl-7.29.0-25.el7.x86_64.rpm libcurl-devel-7.29.0-25.el7.i686.rpm libcurl-devel-7.29.0-25.el7.x86_64.rpm These packages are GPG signed by Red Hat for security. Our key and details on how to verify the signature are available from https://access.redhat.com/security/team/key/ 7. References: https://access.redhat.com/security/cve/CVE-2014-3613 https://access.redhat.com/security/cve/CVE-2014-3707 https://access.redhat.com/security/cve/CVE-2014-8150 https://access.redhat.com/security/cve/CVE-2015-3143 https://access.redhat.com/security/cve/CVE-2015-3148 https://access.redhat.com/security/updates/classification/#moderate 8. Contact: The Red Hat security contact is . More contact details at https://access.redhat.com/security/team/contact/ Copyright 2015 Red Hat, Inc. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iD8DBQFWTkDjXlSAg2UNWIIRAiUIAKCDiD6XED0dZ145uiyufkWCK1ogUACgnQTY 3iELkxAEAUfZ3lJlUq4u7Uo= =rhuc -----END PGP SIGNATURE----- -- RHSA-announce mailing list RHSA-announce@redhat.com https://www.redhat.com/mailman/listinfo/rhsa-announce