<?xml version="1.0" encoding="UTF-8"?>
<cvrfdoc xmlns="http://www.icasi.org/CVRF/schema/cvrf/1.1" xmlns:cvrf="http://www.icasi.org/CVRF/schema/cvrf/1.1">
  <DocumentTitle xml:lang="en">Security update for curl</DocumentTitle>
  <DocumentType>SUSE Patch</DocumentType>
  <DocumentPublisher Type="Vendor">
    <ContactDetails>security@suse.de</ContactDetails>
    <IssuingAuthority>SUSE Security Team</IssuingAuthority>
  </DocumentPublisher>
  <DocumentTracking>
    <Identification>
      <ID>openSUSE-SU-2017:2880-1</ID>
    </Identification>
    <Status>Final</Status>
    <Version>1</Version>
    <RevisionHistory>
      <Revision>
        <Number>1</Number>
        <Date>2017-10-27T18:36:11Z</Date>
        <Description>current</Description>
      </Revision>
    </RevisionHistory>
    <InitialReleaseDate>2017-10-27T18:36:11Z</InitialReleaseDate>
    <CurrentReleaseDate>2017-10-27T18:36:11Z</CurrentReleaseDate>
    <Generator>
      <Engine>cve-database/bin/generate-cvrf.pl</Engine>
      <Date>2017-02-24T01:00:00Z</Date>
    </Generator>
  </DocumentTracking>
  <DocumentNotes>
    <Note Title="Topic" Type="Summary" Ordinal="1" xml:lang="en">Security update for curl</Note>
    <Note Title="Details" Type="General" Ordinal="2" xml:lang="en">This update for curl fixes the following issues:

Security issues fixed:

- CVE-2017-1000254: FTP PWD response parser out of bounds read (bsc#1061876)
- CVE-2017-1000257: IMAP FETCH response out of bounds read (bsc#1063824)

Bugs fixed:

- Fixed error 'error:1408F10B:SSL routines' when connecting to ftps via proxy (bsc#1060653)

This update was imported from the SUSE:SLE-12:Update update project.</Note>
    <Note Title="Terms of Use" Type="Legal Disclaimer" Ordinal="3" xml:lang="en">The CVRF data is provided by SUSE under the Creative Commons License 4.0 with Attribution (CC-BY-4.0).</Note>
  </DocumentNotes>
  <DocumentDistribution xml:lang="en">Copyright SUSE LLC under the Creative Commons License 4.0 with Attribution (CC-BY-4.0)</DocumentDistribution>
  <DocumentReferences>
    <Reference Type="Self">
      <URL>https://lists.opensuse.org/opensuse-updates/2017-10/msg00098.html</URL>
      <Description>E-Mail link for openSUSE-SU-2017:2880-1</Description>
    </Reference>
    <Reference Type="Self">
      <URL>https://www.suse.com/support/security/rating/</URL>
      <Description>SUSE Security Ratings</Description>
    </Reference>
  </DocumentReferences>
  <ProductTree xmlns="http://www.icasi.org/CVRF/schema/prod/1.1">
    <Branch Type="Product Family" Name="openSUSE Leap 42.2">
      <Branch Type="Product Name" Name="openSUSE Leap 42.2">
        <FullProductName ProductID="openSUSE Leap 42.2">openSUSE Leap 42.2</FullProductName>
      </Branch>
    </Branch>
    <Branch Type="Product Family" Name="openSUSE Leap 42.3">
      <Branch Type="Product Name" Name="openSUSE Leap 42.3">
        <FullProductName ProductID="openSUSE Leap 42.3">openSUSE Leap 42.3</FullProductName>
      </Branch>
    </Branch>
    <Branch Type="Product Version" Name="curl-7.37.0-23.1">
      <FullProductName ProductID="curl-7.37.0-23.1">curl-7.37.0-23.1</FullProductName>
    </Branch>
    <Branch Type="Product Version" Name="libcurl-devel-7.37.0-23.1">
      <FullProductName ProductID="libcurl-devel-7.37.0-23.1">libcurl-devel-7.37.0-23.1</FullProductName>
    </Branch>
    <Branch Type="Product Version" Name="libcurl-devel-32bit-7.37.0-23.1">
      <FullProductName ProductID="libcurl-devel-32bit-7.37.0-23.1">libcurl-devel-32bit-7.37.0-23.1</FullProductName>
    </Branch>
    <Branch Type="Product Version" Name="libcurl4-7.37.0-23.1">
      <FullProductName ProductID="libcurl4-7.37.0-23.1">libcurl4-7.37.0-23.1</FullProductName>
    </Branch>
    <Branch Type="Product Version" Name="libcurl4-32bit-7.37.0-23.1">
      <FullProductName ProductID="libcurl4-32bit-7.37.0-23.1">libcurl4-32bit-7.37.0-23.1</FullProductName>
    </Branch>
    <Relationship ProductReference="curl-7.37.0-23.1" RelationType="Default Component Of" RelatesToProductReference="openSUSE Leap 42.2">
      <FullProductName ProductID="openSUSE Leap 42.2:curl-7.37.0-23.1">curl-7.37.0-23.1 as a component of openSUSE Leap 42.2</FullProductName>
    </Relationship>
    <Relationship ProductReference="libcurl-devel-7.37.0-23.1" RelationType="Default Component Of" RelatesToProductReference="openSUSE Leap 42.2">
      <FullProductName ProductID="openSUSE Leap 42.2:libcurl-devel-7.37.0-23.1">libcurl-devel-7.37.0-23.1 as a component of openSUSE Leap 42.2</FullProductName>
    </Relationship>
    <Relationship ProductReference="libcurl-devel-32bit-7.37.0-23.1" RelationType="Default Component Of" RelatesToProductReference="openSUSE Leap 42.2">
      <FullProductName ProductID="openSUSE Leap 42.2:libcurl-devel-32bit-7.37.0-23.1">libcurl-devel-32bit-7.37.0-23.1 as a component of openSUSE Leap 42.2</FullProductName>
    </Relationship>
    <Relationship ProductReference="libcurl4-7.37.0-23.1" RelationType="Default Component Of" RelatesToProductReference="openSUSE Leap 42.2">
      <FullProductName ProductID="openSUSE Leap 42.2:libcurl4-7.37.0-23.1">libcurl4-7.37.0-23.1 as a component of openSUSE Leap 42.2</FullProductName>
    </Relationship>
    <Relationship ProductReference="libcurl4-32bit-7.37.0-23.1" RelationType="Default Component Of" RelatesToProductReference="openSUSE Leap 42.2">
      <FullProductName ProductID="openSUSE Leap 42.2:libcurl4-32bit-7.37.0-23.1">libcurl4-32bit-7.37.0-23.1 as a component of openSUSE Leap 42.2</FullProductName>
    </Relationship>
    <Relationship ProductReference="curl-7.37.0-23.1" RelationType="Default Component Of" RelatesToProductReference="openSUSE Leap 42.3">
      <FullProductName ProductID="openSUSE Leap 42.3:curl-7.37.0-23.1">curl-7.37.0-23.1 as a component of openSUSE Leap 42.3</FullProductName>
    </Relationship>
    <Relationship ProductReference="libcurl-devel-7.37.0-23.1" RelationType="Default Component Of" RelatesToProductReference="openSUSE Leap 42.3">
      <FullProductName ProductID="openSUSE Leap 42.3:libcurl-devel-7.37.0-23.1">libcurl-devel-7.37.0-23.1 as a component of openSUSE Leap 42.3</FullProductName>
    </Relationship>
    <Relationship ProductReference="libcurl-devel-32bit-7.37.0-23.1" RelationType="Default Component Of" RelatesToProductReference="openSUSE Leap 42.3">
      <FullProductName ProductID="openSUSE Leap 42.3:libcurl-devel-32bit-7.37.0-23.1">libcurl-devel-32bit-7.37.0-23.1 as a component of openSUSE Leap 42.3</FullProductName>
    </Relationship>
    <Relationship ProductReference="libcurl4-7.37.0-23.1" RelationType="Default Component Of" RelatesToProductReference="openSUSE Leap 42.3">
      <FullProductName ProductID="openSUSE Leap 42.3:libcurl4-7.37.0-23.1">libcurl4-7.37.0-23.1 as a component of openSUSE Leap 42.3</FullProductName>
    </Relationship>
    <Relationship ProductReference="libcurl4-32bit-7.37.0-23.1" RelationType="Default Component Of" RelatesToProductReference="openSUSE Leap 42.3">
      <FullProductName ProductID="openSUSE Leap 42.3:libcurl4-32bit-7.37.0-23.1">libcurl4-32bit-7.37.0-23.1 as a component of openSUSE Leap 42.3</FullProductName>
    </Relationship>
  </ProductTree>
  <Vulnerability xmlns="http://www.icasi.org/CVRF/schema/vuln/1.1" Ordinal="1">
    <Notes>
      <Note Title="Vulnerability Description" Type="General" Ordinal="1" xml:lang="en">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.</Note>
    </Notes>
    <CVE>CVE-2017-1000254</CVE>
    <ProductStatuses>
      <Status Type="Fixed">
        <ProductID>openSUSE Leap 42.2:curl-7.37.0-23.1</ProductID>
        <ProductID>openSUSE Leap 42.2:libcurl-devel-32bit-7.37.0-23.1</ProductID>
        <ProductID>openSUSE Leap 42.2:libcurl-devel-7.37.0-23.1</ProductID>
        <ProductID>openSUSE Leap 42.2:libcurl4-32bit-7.37.0-23.1</ProductID>
        <ProductID>openSUSE Leap 42.2:libcurl4-7.37.0-23.1</ProductID>
        <ProductID>openSUSE Leap 42.3:curl-7.37.0-23.1</ProductID>
        <ProductID>openSUSE Leap 42.3:libcurl-devel-32bit-7.37.0-23.1</ProductID>
        <ProductID>openSUSE Leap 42.3:libcurl-devel-7.37.0-23.1</ProductID>
        <ProductID>openSUSE Leap 42.3:libcurl4-32bit-7.37.0-23.1</ProductID>
        <ProductID>openSUSE Leap 42.3:libcurl4-7.37.0-23.1</ProductID>
      </Status>
    </ProductStatuses>
    <Threats>
      <Threat Type="Impact">
        <Description>low</Description>
      </Threat>
    </Threats>
    <CVSSScoreSets>
      <ScoreSet>
        <BaseScore>2.6</BaseScore>
        <Vector>AV:N/AC:H/Au:N/C:N/I:N/A:P</Vector>
      </ScoreSet>
    </CVSSScoreSets>
    <Remediations>
      <Remediation Type="Vendor Fix">
        <Description xml:lang="en">Please Install the update.</Description>
        <URL>https://lists.opensuse.org/opensuse-updates/2017-10/msg00098.html</URL>
      </Remediation>
    </Remediations>
    <References>
      <Reference>
        <URL>https://www.suse.com/security/cve/CVE-2017-1000254.html</URL>
        <Description>CVE-2017-1000254</Description>
      </Reference>
      <Reference>
        <URL>https://bugzilla.suse.com/1061876</URL>
        <Description>SUSE Bug 1061876</Description>
      </Reference>
    </References>
  </Vulnerability>
  <Vulnerability xmlns="http://www.icasi.org/CVRF/schema/vuln/1.1" Ordinal="2">
    <Notes>
      <Note Title="Vulnerability Description" Type="General" Ordinal="1" xml:lang="en">An IMAP FETCH response line indicates the size of the returned data, in number of bytes. When that response says the data is zero bytes, libcurl would pass on that (non-existing) data with a pointer and the size (zero) to the deliver-data function. libcurl's deliver-data function treats zero as a magic number and invokes strlen() on the data to figure out the length. The strlen() is called on a heap based buffer that might not be zero terminated so libcurl might read beyond the end of it into whatever memory lies after (or just crash) and then deliver that to the application as if it was actually downloaded.</Note>
    </Notes>
    <CVE>CVE-2017-1000257</CVE>
    <ProductStatuses>
      <Status Type="Fixed">
        <ProductID>openSUSE Leap 42.2:curl-7.37.0-23.1</ProductID>
        <ProductID>openSUSE Leap 42.2:libcurl-devel-32bit-7.37.0-23.1</ProductID>
        <ProductID>openSUSE Leap 42.2:libcurl-devel-7.37.0-23.1</ProductID>
        <ProductID>openSUSE Leap 42.2:libcurl4-32bit-7.37.0-23.1</ProductID>
        <ProductID>openSUSE Leap 42.2:libcurl4-7.37.0-23.1</ProductID>
        <ProductID>openSUSE Leap 42.3:curl-7.37.0-23.1</ProductID>
        <ProductID>openSUSE Leap 42.3:libcurl-devel-32bit-7.37.0-23.1</ProductID>
        <ProductID>openSUSE Leap 42.3:libcurl-devel-7.37.0-23.1</ProductID>
        <ProductID>openSUSE Leap 42.3:libcurl4-32bit-7.37.0-23.1</ProductID>
        <ProductID>openSUSE Leap 42.3:libcurl4-7.37.0-23.1</ProductID>
      </Status>
    </ProductStatuses>
    <Threats>
      <Threat Type="Impact">
        <Description>moderate</Description>
      </Threat>
    </Threats>
    <CVSSScoreSets>
      <ScoreSet>
        <BaseScore>4</BaseScore>
        <Vector>AV:N/AC:H/Au:N/C:N/I:P/A:P</Vector>
      </ScoreSet>
    </CVSSScoreSets>
    <Remediations>
      <Remediation Type="Vendor Fix">
        <Description xml:lang="en">Please Install the update.</Description>
        <URL>https://lists.opensuse.org/opensuse-updates/2017-10/msg00098.html</URL>
      </Remediation>
    </Remediations>
    <References>
      <Reference>
        <URL>https://www.suse.com/security/cve/CVE-2017-1000257.html</URL>
        <Description>CVE-2017-1000257</Description>
      </Reference>
      <Reference>
        <URL>https://bugzilla.suse.com/1063824</URL>
        <Description>SUSE Bug 1063824</Description>
      </Reference>
    </References>
  </Vulnerability>
</cvrfdoc>
