Vulnerability Note VU#123799

libbpg contains a type confusion vulnerability that leads to out of bounds write

Original Release date: 12 Jul 2016 | Last revised: 12 Jul 2016

Overview

libbpg is a library for the BPG graphics format. libbpg 0.9.5 through 0.9.7 may allow a crafted file to write out-of-bounds, which may lead to denial of service or arbitrary code execution.

Description

CWE-787: Out-of-bounds Write - CVE-2016-5637

According to the reporter, improper checking of transquant_bypass_enable_flag in the function restore_tqb_pixels in libbpg 0.9.5 through 0.9.7 may allow a crafted file to write out-of-bounds, which may lead to denial of service or arbitrary code execution.

Other versions may also be impacted. The CERT/CC has not been able to confirm this information with libbpg developers.

libbpg is used within other products; see the Vendor Status list below for more information.

Impact

By causing an application that uses libbpg to process a malformed image, a remote unauthenticated attacker may be able to write to memory, which may lead to denial of service or arbitrary code execution.

Solution

The CERT/CC is currently unaware of a practical solution to this problem. Users may consider the following workarounds:

Update ImageMagick Security Policy

ImageMagick's security policy may be updated to deny BPG from use by modifying the policy.xml configuration file. The BPG element may also be removed from the delegate.xml configuration file. More information on these configuration files is available at ImageMagick's website.

Vendor Information (Learn More)

VendorStatusDate NotifiedDate Updated
libbpgAffected03 Jun 201627 Jun 2016
If you are a vendor and your product is affected, let us know.

CVSS Metrics (Learn More)

Group Score Vector
Base 6.8 AV:N/AC:M/Au:N/C:P/I:P/A:P
Temporal 5.8 E:POC/RL:U/RC:UR
Environmental 4.4 CDP:ND/TD:M/CR:ND/IR:ND/AR:ND

References

Credit

Thanks to Shi Ji (@Puzzor) for reporting this vulnerability.

This document was written by Garret Wassermann.

Other Information

  • CVE IDs: CVE-2016-5637
  • Date Public: 12 Jul 2016
  • Date First Published: 12 Jul 2016
  • Date Last Updated: 12 Jul 2016
  • Document Revision: 11

Feedback

If you have feedback, comments, or additional information about this vulnerability, please send us email.