Upstream information

CVE-2017-1000254 at MITRE

Description

libcurl may read outside of a heap allocated buffer when doing FTP. When libcurl connects to an FTP server and successfully logs in (anonymous or not), it asks the server for the current directory with the `PWD` command. The server then responds with a 257 response containing the path, inside double quotes. The returned path name is then kept by libcurl for subsequent uses. Due to a flaw in the string parser for this directory name, a directory name passed like this but without a closing double quote would lead to libcurl not adding a trailing NUL byte to the buffer holding the name. When libcurl would then later access the string, it could read beyond the allocated heap buffer and crash or wrongly access data beyond the buffer, thinking it was part of the path. A malicious server could abuse this fact and effectively prevent libcurl-based clients to work with it - the PWD command is always issued on new FTP connections and the mistake has a high chance of causing a segfault. The simple fact that this has issue remained undiscovered for this long could suggest that malformed PWD responses are rare in benign servers. We are not aware of any exploit of this flaw. This bug was introduced in commit [415d2e7cb7](https://github.com/curl/curl/commit/415d2e7cb7), March 2005. In libcurl version 7.56.0, the parser always zero terminates the string but also rejects it if not terminated properly with a final double quote.

SUSE information

Overall state of this security issue: Resolved

This issue is currently rated as having low severity.

CVSS v2 Scores
  National Vulnerability Database SUSE
Base Score 5 2.6
Vector AV:N/AC:L/Au:N/C:N/I:N/A:P AV:N/AC:H/Au:N/C:N/I:N/A:P
Access Vector Network Network
Access Complexity Low High
Authentication None None
Confidentiality Impact None None
Integrity Impact None None
Availability Impact Partial Partial
CVSS v3 Scores
  SUSE
Base Score 3.7
Vector AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
Access Vector Network
Access Complexity High
Privileges Required None
User Interaction None
Scope Unchanged
Confidentiality Impact None
Integrity Impact None
Availability Impact Low
SUSE Bugzilla entry: 1061876 [RESOLVED / FIXED]

SUSE Security Advisories:

List of released packages

Product(s) Fixed package version(s) References
Openstack Cloud Magnum Orchestration 7
  • curl >= 7.37.0-37.8.1
  • libcurl4 >= 7.37.0-37.8.1
Patchnames:
SUSE-OpenStack-Cloud-Magnum-Orchestration-7-2017-1758
SUSE CaaS Platform ALL
  • curl >= 7.37.0-37.8.1
  • libcurl4 >= 7.37.0-37.8.1
  • sles12-mariadb-docker-image >= 1.1.0-2.5.19
  • sles12-pause-docker-image >= 1.1.0-2.5.21
  • sles12-pv-recycler-node-docker-image >= 1.1.0-2.5.19
  • sles12-salt-api-docker-image >= 1.1.0-2.5.19
  • sles12-salt-master-docker-image >= 1.1.0-4.5.18
  • sles12-salt-minion-docker-image >= 1.1.0-2.5.18
  • sles12-velum-docker-image >= 1.1.0-4.5.18
Patchnames:
SUSE-CAASP-ALL-2017-1758
SUSE-CAASP-ALL-2017-1782
SUSE Linux Enterprise Desktop 12 SP2
  • curl >= 7.37.0-37.8.1
  • libcurl4 >= 7.37.0-37.8.1
  • libcurl4-32bit >= 7.37.0-37.8.1
Patchnames:
SUSE-SLE-DESKTOP-12-SP2-2017-1758
SUSE Linux Enterprise Desktop 12 SP3
  • curl >= 7.37.0-37.8.1
  • libcurl4 >= 7.37.0-37.8.1
  • libcurl4-32bit >= 7.37.0-37.8.1
Patchnames:
SUSE-SLE-DESKTOP-12-SP3-2017-1758
SUSE Linux Enterprise Module for Basesystem 15
  • curl >= 7.60.0-1.1
  • libcurl-devel >= 7.60.0-1.1
  • libcurl4 >= 7.60.0-1.1
  • libcurl4-32bit >= 7.60.0-1.1
Patchnames:
SUSE Linux Enterprise Module for Basesystem 15 GA curl
SUSE Linux Enterprise Server 11 SP4
  • curl >= 7.19.7-1.70.8.1
  • libcurl4 >= 7.19.7-1.70.8.1
  • libcurl4-32bit >= 7.19.7-1.70.8.1
  • libcurl4-x86 >= 7.19.7-1.70.8.1
Patchnames:
slessp4-curl-13361
SUSE Linux Enterprise Server 11-SECURITY
  • curl-openssl1 >= 7.19.7-1.70.8.1
  • libcurl4-openssl1 >= 7.19.7-1.70.8.1
  • libcurl4-openssl1-32bit >= 7.19.7-1.70.8.1
  • libcurl4-openssl1-x86 >= 7.19.7-1.70.8.1
Patchnames:
secsp3-curl-13361
SUSE Linux Enterprise Server 12 SP2
  • curl >= 7.37.0-37.8.1
  • libcurl4 >= 7.37.0-37.8.1
  • libcurl4-32bit >= 7.37.0-37.8.1
Patchnames:
SUSE-SLE-SERVER-12-SP2-2017-1758
SUSE Linux Enterprise Server 12 SP3
  • curl >= 7.37.0-37.8.1
  • libcurl4 >= 7.37.0-37.8.1
  • libcurl4-32bit >= 7.37.0-37.8.1
Patchnames:
SUSE-SLE-SERVER-12-SP3-2017-1758
SUSE Linux Enterprise Server for Raspberry Pi 12 SP2
  • curl >= 7.37.0-37.8.1
  • libcurl4 >= 7.37.0-37.8.1
Patchnames:
SUSE-SLE-RPI-12-SP2-2017-1758
SUSE Linux Enterprise Server for SAP Applications 11 SP4
  • curl >= 7.19.7-1.70.8.1
  • libcurl4 >= 7.19.7-1.70.8.1
  • libcurl4-32bit >= 7.19.7-1.70.8.1
  • libcurl4-x86 >= 7.19.7-1.70.8.1
Patchnames:
slessp4-curl-13361
SUSE Linux Enterprise Server for SAP Applications 11-SECURITY
  • curl-openssl1 >= 7.19.7-1.70.8.1
  • libcurl4-openssl1 >= 7.19.7-1.70.8.1
  • libcurl4-openssl1-32bit >= 7.19.7-1.70.8.1
  • libcurl4-openssl1-x86 >= 7.19.7-1.70.8.1
Patchnames:
secsp3-curl-13361
SUSE Linux Enterprise Server for SAP Applications 12 SP2
  • curl >= 7.37.0-37.8.1
  • libcurl4 >= 7.37.0-37.8.1
  • libcurl4-32bit >= 7.37.0-37.8.1
Patchnames:
SUSE-SLE-SERVER-12-SP2-2017-1758
SUSE Linux Enterprise Server for SAP Applications 12 SP3
  • curl >= 7.37.0-37.8.1
  • libcurl4 >= 7.37.0-37.8.1
  • libcurl4-32bit >= 7.37.0-37.8.1
Patchnames:
SUSE-SLE-SERVER-12-SP3-2017-1758
SUSE Linux Enterprise Software Development Kit 11 SP4
  • curl >= 7.19.7-1.70.8.1
  • libcurl-devel >= 7.19.7-1.70.8.1
Patchnames:
sdksp4-curl-13361
SUSE Linux Enterprise Software Development Kit 12 SP2
  • curl >= 7.37.0-37.8.1
  • libcurl-devel >= 7.37.0-37.8.1
Patchnames:
SUSE-SLE-SDK-12-SP2-2017-1758
SUSE Linux Enterprise Software Development Kit 12 SP3
  • curl >= 7.37.0-37.8.1
  • libcurl-devel >= 7.37.0-37.8.1
Patchnames:
SUSE-SLE-SDK-12-SP3-2017-1758
SUSE Studio Onsite 1.3
  • curl >= 7.19.7-1.20.53.13.1
  • libcurl-devel >= 7.19.7-1.20.53.13.1
Patchnames:
slestso13-curl-13319
slestso13-curl-13436
openSUSE Leap 15.0
  • curl >= 7.59.0-lp150.1.1
  • libcurl4 >= 7.59.0-lp150.1.1
  • libcurl4-32bit >= 7.59.0-lp150.1.1
Patchnames:
openSUSE Leap 15.0 GA curl
openSUSE Leap 42.2
  • curl >= 7.37.0-16.9.1
  • curl-debuginfo >= 7.37.0-16.9.1
  • curl-debugsource >= 7.37.0-16.9.1
  • libcurl-devel >= 7.37.0-16.9.1
  • libcurl-devel-32bit >= 7.37.0-16.9.1
  • libcurl4 >= 7.37.0-16.9.1
  • libcurl4-32bit >= 7.37.0-16.9.1
  • libcurl4-debuginfo >= 7.37.0-16.9.1
  • libcurl4-debuginfo-32bit >= 7.37.0-16.9.1
Patchnames:
openSUSE-2017-1200
openSUSE Leap 42.3
  • curl >= 7.37.0-23.1
  • curl-debuginfo >= 7.37.0-23.1
  • curl-debugsource >= 7.37.0-23.1
  • libcurl-devel >= 7.37.0-23.1
  • libcurl-devel-32bit >= 7.37.0-23.1
  • libcurl4 >= 7.37.0-23.1
  • libcurl4-32bit >= 7.37.0-23.1
  • libcurl4-debuginfo >= 7.37.0-23.1
  • libcurl4-debuginfo-32bit >= 7.37.0-23.1
Patchnames:
openSUSE-2017-1200


Status of this issue by product and package

Please note that this evaluation state might be work in progress, incomplete or outdated. Also information for service packs in the LTSS phase is only included for issues meeting the LTSS criteria. If in doubt, feel free to contact us for clarification.

Product(s) Source package State
CaaS Platform 1.0 curl Released
CaaS Platform 2.0 curl Released
OpenStack Cloud Magnum Orchestration 7.0 curl Released
SUSE Linux Enterprise Desktop 12 SP2 curl Released
SUSE Linux Enterprise Desktop 12 SP3 curl Released
SUSE Linux Enterprise SDK 11 SP4 curl Released
SUSE Linux Enterprise SDK 12 SP2 curl Released
SUSE Linux Enterprise SDK 12 SP3 curl Released
SUSE Linux Enterprise Server 11 SP3 LTSS curl Already fixed
SUSE Linux Enterprise Server 11 SP4 curl Released
SUSE Linux Enterprise Server 12 GA LTSS curl Affected
SUSE Linux Enterprise Server 12 SP1 LTSS curl Affected
SUSE Linux Enterprise Server 12 SP2 curl Released
SUSE Linux Enterprise Server 12 SP2 for Raspberry PI curl Released
SUSE Linux Enterprise Server 12 SP3 curl Released
SUSE Studio Onsite 1.3 curl Released