Bug 1661608 (CVE-2018-5818) - CVE-2018-5818 LibRaw: DoS in parse_rollei function in internal/dcraw_common.cpp
Summary: CVE-2018-5818 LibRaw: DoS in parse_rollei function in internal/dcraw_common.cpp
Alias: CVE-2018-5818
Product: Security Response
Classification: Other
Component: vulnerability
Version: unspecified
Hardware: All
OS: Linux
Target Milestone: ---
Assignee: Red Hat Product Security
QA Contact:
Depends On: 1543597 1654688 1661609 1661610 1661611 1663169 1663170
Blocks: 1661524
TreeView+ depends on / blocked
Reported: 2018-12-21 17:58 UTC by Laura Pardo
Modified: 2021-10-27 03:21 UTC (History)
1 user (show)

Fixed In Version: LibRaw 0.19.1
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Last Closed: 2021-10-27 03:21:28 UTC

Attachments (Terms of Use)

Description Laura Pardo 2018-12-21 17:58:41 UTC
LibRaw is vulnerable to a denial of service, caused by a flaw in the parse_rollei function in internal/dcraw_common.cpp. By persuading a victim to open a specially-crafted file, a remote attacker could exploit this vulnerability to cause the application to enter into an infinite loop.


Comment 1 Laura Pardo 2018-12-21 17:59:03 UTC
Created LibRaw tracking bugs for this issue:

Affects: epel-6 [bug 1661611]
Affects: fedora-28 [bug 1661609]

Created mingw-LibRaw tracking bugs for this issue:

Affects: fedora-all [bug 1661610]

Comment 2 Riccardo Schirone 2019-01-03 10:26:38 UTC
Upstream patch:

Comment 4 Riccardo Schirone 2019-01-03 11:01:46 UTC
Function parse_rollei() does not check the return value of the fgets() function and it assumes a "DSC-Image" file always have the terminator tag "EOHD". When the file terminates before finding the "EOHD" tag, parse_rollei() keeps trying to read bytes from the file and it fails, but given no check is performed, it keeps looping forever.

Comment 6 Debarshi Ray 2019-02-01 13:59:46 UTC
Fixed in LibRaw-0.19.1

Note You need to log in before you can comment on or make changes to this bug.