SecurityTracker.com
    Home    |    View Topics    |    Search    |    Contact Us    |   

SecurityTracker
Archives


 


Category:   Application (Generic)  >   curl Vendors:   curl.haxx.se
cURL HTTP/2 Trailer Processor Out-of-Bound Memory Read Error Lets Remote Users Deny Service or Obtain Potentially Sensitive Information
SecurityTracker Alert ID:  1040273
SecurityTracker URL:  http://securitytracker.com/id/1040273
CVE Reference:   CVE-2018-1000005   (Links to External Site)
Date:  Jan 25 2018
Impact:   Denial of service via network, Disclosure of system information, Disclosure of user information
Fix Available:  Yes  Vendor Confirmed:  Yes  
Version(s): 7.49.0 - 7.57.0
Description:   A vulnerability was reported in cURL. A remote user can cause denial of service conditions on the target system. A remote user can obtain potentially sensitive information on the target system.

A remote user can send a specially crafted HTTP/2 trailer to trigger an out-of-bounds memory read error and cause the application to crash or potentially sensitive information from services that echo back or otherwise use the trailers.

The vendor was notified on January 10, 2018.

Zhouyihai Ding reported this vulnerability.

Impact:   A remote user can cause denial of service conditions.

A remote user can obtain potentially sensitive information on the target system.

Solution:   The vendor has issued a fix (7.58.0).

The vendor's advisory is available at:

https://curl.haxx.se/docs/adv_2018-824a.html

Vendor URL:  curl.haxx.se/docs/adv_2018-824a.html (Links to External Site)
Cause:   Access control error
Underlying OS:  Linux (Any), UNIX (Any), Windows (Any)

Message History:   This archive entry has one or more follow-up message(s) listed below.
Jul 19 2018 (Juniper Issues Fix for Juniper Junos) cURL HTTP/2 Trailer Processor Out-of-Bound Memory Read Error Lets Remote Users Deny Service or Obtain Potentially Sensitive Information
Juniper has issued a fix for Juniper Junos.



 Source Message Contents

Subject:  [oss-security] [SECURITY ADVISORY] curl: HTTP/2 trailer out-of-bounds read

HTTP/2 trailer out-of-bounds read
=================================

Project curl Security Advisory, January 24th 2018 -
[Permalink](https://curl.haxx.se/docs/adv_2018-824a.html)

VULNERABILITY
-------------

libcurl contains an out bounds read in code handling HTTP/2 trailers.

It was [reported](https://github.com/curl/curl/pull/2231) that reading an
HTTP/2 trailer could mess up future trailers since the stored size was one
byte less than required.

The problem is that the code that creates HTTP/1-like headers from the HTTP/2
trailer data once appended a string like `":"` to the target buffer, while
this was recently changed to `": "` (a space was added after the colon) but
the associated math wasn't updated correspondingly.

When accessed, the data is read out of bounds and causes either a crash or
that the (too large) data gets passed to the libcurl callback. This might lead
to a denial-of-service situation or an information disclosure if someone has a
service that echoes back or uses the trailers for something.

We are not aware of any exploit of this flaw.

INFO
----

This bug was introduced in commit
[0761a51ee0551ad9e5](https://github.com/curl/curl/commit/0761a51ee0551ad9e5),
May 11 2016.

The Common Vulnerabilities and Exposures (CVE) project has assigned the name
CVE-2018-1000005 to this issue.

AFFECTED VERSIONS
-----------------

- Affected versions: libcurl 7.49.0 to and including 7.57.0
- Not affected versions: libcurl < 7.49.0 and >= 7.58.0

libcurl is used by many applications, but not always advertised as such.

THE SOLUTION
------------

In libcurl version 7.58.0, the allocation size is corrected.

A [patch for
CVE-2018-1000005](https://github.com/curl/curl/commit/fa3dbb9a147488a294.patch)
is available.

RECOMMENDATIONS
---------------

We suggest you take one of the following actions immediately, in order of
preference:

  A - Upgrade curl to version 7.58.0

  B - Apply the patch to your version and rebuild

TIME LINE
---------

It was publicly [reported to the curl
project](https://github.com/curl/curl/issues/2231) on January 10, 2018.

The security impact was realized and assessed on January 11. The fix was
merged publicly in git on the same day, not mentioning the security impact.

We contacted distros@openwall on January 17.

curl 7.58.0 was released on January 24 2018, coordinated with the publication
of this advisory.

CREDITS
-------

Reported and patched by Zhouyihai Ding. Researched by Ray Satiro.

Thanks a lot!

-- 

  / daniel.haxx.se
 
 


Go to the Top of This SecurityTracker Archive Page





Home   |    View Topics   |    Search   |    Contact Us

This web site uses cookies for web analytics. Learn More

Copyright 2019, SecurityGlobal.net LLC