Cloudanix VulnDB

CVE-2016-10087

High · 7.5

CVSS

7.5

EPSS

5.1%

Published

Jan 30, 2017

CISA due date

—

Cloudanix analysis

Schedule a fix SSVC: Track

A flaw in how antivirus software handles certain image files can make the scanner crash, briefly stopping malware checks until it is restarted.

Exploitation
Remote Unauthenticated
Attacker needs
None
Complexity
Low
Impact
Denial Of Service
Component
Library
Class
Memory Corruption
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

The png_set_text_2 function in libpng allows a NULL pointer dereference when a text chunk is loaded into a png structure, removed, and then another text chunk is added, resulting in application crash.

Why it matters to the business

Antivirus scanning services may become unavailable when processing specially crafted image files, interrupting malware detection workflows and requiring restarts or failover.

How an attack unfolds

An attacker crafts a PNG image containing specific text chunks that trigger the sequence of load, remove, and add operations in libpng used by ClamAV; the file is submitted to a ClamAV scanner, causing a crash and denial of service.

How to fix it

Upgrade affected ClamAV packages to the listed fixed versions: 0.99.2+dfsg-1 on Debian 11/12/13/14, 0.99.2+addedllvm-0ubuntu0.14.04.1 on Ubuntu 14.04 LTS, and 0.99.2+dfsg-0ubuntu0.16.04.1 on Ubuntu 16.04 LTS. Rebuild any custom packages that statically link the vulnerable libpng.

How to confirm the fix worked

Verify installed ClamAV versions match the fixed releases above; test scanning a known non-malicious PNG before and after upgrade to confirm stability; monitor for absence of crashes on PNG processing.

Typical attack path

  1. Craft malicious PNG with targeted text chunk sequence
  2. Deliver PNG to target via email, download, or file share
  3. Trigger ClamAV scan of the PNG file
  4. Induce NULL pointer dereference and crash

How to detect it

Review ClamAV process logs and system crash dumps for segmentation faults or NULL dereference errors during PNG file handling; correlate with file access timestamps of PNGs submitted to the scanner.

What your security team should do

  • Prioritize patching all listed ClamAV deployments within standard change windows
  • Enable automatic updates for ClamAV where possible
  • Add PNG file scanning to regression tests after upgrades

The record

The png_set_text_2 function in libpng 0.71 before 1.0.67, 1.2.x before 1.2.57, 1.4.x before 1.4.20, 1.5.x before 1.5.28, and 1.6.x before 1.6.27 allows context-dependent attackers to cause a NULL pointer dereference vectors involving loading a text chunk into a png structure, removing the text, and then adding another text chunk to the structure.

Affected packages

Ecosystem Package Introduced Fixed
Debian:11 libpng1.6 0 1.6.27-1
Debian:12 libpng1.6 0 1.6.27-1
Debian:13 libpng1.6 0 1.6.27-1
Mageia:5 libpng 0 1.6.27-1.mga5
Mageia:5 libpng12 0 1.2.57-1.mga5
SUSE:Linux Enterprise Desktop 12 SP1 libpng12 0 1.2.50-19.1
SUSE:Linux Enterprise Desktop 12 SP1 libpng15 0 1.5.22-9.1
SUSE:Linux Enterprise Desktop 12 SP1 libpng16 0 1.6.8-14.1
SUSE:Linux Enterprise Desktop 12 SP2 libpng12 0 1.2.50-19.1
SUSE:Linux Enterprise Desktop 12 SP2 libpng15 0 1.5.22-9.1
SUSE:Linux Enterprise Desktop 12 SP2 libpng16 0 1.6.8-14.1
SUSE:Linux Enterprise Server 11 SP4 libpng12-0 0 1.2.31-5.43.1
SUSE:Linux Enterprise Server 12 SP1 libpng12 0 1.2.50-19.1
SUSE:Linux Enterprise Server 12 SP1 libpng15 0 1.5.22-9.1
SUSE:Linux Enterprise Server 12 SP1 libpng16 0 1.6.8-14.1
SUSE:Linux Enterprise Server 12 SP2 libpng12 0 1.2.50-19.1
SUSE:Linux Enterprise Server 12 SP2 libpng15 0 1.5.22-9.1
SUSE:Linux Enterprise Server 12 SP2 libpng16 0 1.6.8-14.1
SUSE:Linux Enterprise Server for Raspberry Pi 12 SP2 libpng12 0 1.2.50-19.1
SUSE:Linux Enterprise Server for Raspberry Pi 12 SP2 libpng15 0 1.5.22-9.1
SUSE:Linux Enterprise Server for Raspberry Pi 12 SP2 libpng16 0 1.6.8-14.1
SUSE:Linux Enterprise Server for SAP Applications 11 SP4 libpng12-0 0 1.2.31-5.43.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP1 libpng12 0 1.2.50-19.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP1 libpng15 0 1.5.22-9.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP1 libpng16 0 1.6.8-14.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP2 libpng12 0 1.2.50-19.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP2 libpng15 0 1.5.22-9.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP2 libpng16 0 1.6.8-14.1
SUSE:Linux Enterprise Software Development Kit 11 SP4 libpng12-0 0 1.2.31-5.43.1
SUSE:Linux Enterprise Software Development Kit 12 SP1 libpng12 0 1.2.50-19.1
SUSE:Linux Enterprise Software Development Kit 12 SP1 libpng16 0 1.6.8-14.1
SUSE:Linux Enterprise Software Development Kit 12 SP2 libpng12 0 1.2.50-19.1
SUSE:Linux Enterprise Software Development Kit 12 SP2 libpng16 0 1.6.8-14.1
Ubuntu:14.04:LTS libpng 0 1.2.50-1ubuntu2.14.04.3
Ubuntu:16.04:LTS libpng 0 1.2.54-1ubuntu1.1
Ubuntu:18.04:LTS libpng1.6 0 1.6.34-1ubuntu0.18.04.1
Ubuntu:Pro:16.04:LTS libpng1.6 0 No fix
nuget libpng 0.8 No fix
nuget libpng 1.2.0 No fix
nuget libpng 1.4.0 No fix
nuget libpng 1.5.0 No fix
nuget libpng 1.6.0 No fix
openSUSE:Tumbleweed libpng16 0 1.6.37-3.3

Related vulnerabilities