Cloudanix VulnDB

CVE-2017-14107

Medium · 6.5

CVSS

6.5

EPSS

3.2%

Published

Sep 1, 2017

CISA due date

—

Cloudanix analysis

Schedule a fix SSVC: Track

A problem in a common library used to handle ZIP files lets specially made files cause programs to run out of memory and stop working.

Exploitation
Requires User Interaction
Attacker needs
User Interaction
Complexity
Low
Impact
Denial Of Service
Component
Library
Class
Denial of service
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

Mishandling of EOCD records in the _zip_read_eocd64 function causes excessive memory allocation in _zip_cdir_grow during processing of crafted ZIP archives, resulting in denial of service.

Why it matters to the business

Services and applications that parse untrusted ZIP archives may crash or become unresponsive, interrupting operations that depend on ZIP file handling in affected environments.

How an attack unfolds

An attacker creates a ZIP archive containing malformed EOCD records and supplies it to a target application using a vulnerable libzip version; when the archive is opened, the mishandled record triggers uncontrolled memory growth leading to allocation failure.

How to fix it

Upgrade libzip to version 1.3.0 or later; for Git-based builds apply commit 51ff59da3a8c7d3934e23aed70eb0347234a14c9. Ensure packages such as aws-flb-kinesis and aws-flb-kinesis-compat use versions marked fixed in 0.

How to confirm the fix worked

Confirm installed libzip version meets or exceeds 1.3.0; test affected applications against known malformed ZIP samples to verify absence of memory allocation crashes.

Typical attack path

  1. Craft a ZIP archive with malformed EOCD records
  2. Deliver the archive to an application that uses libzip to open ZIP files
  3. Trigger opening of the archive via _zip_read_eocd64
  4. Induce memory allocation failure in _zip_cdir_grow

How to detect it

Review application logs for memory allocation failures or crashes occurring during ZIP file processing; correlate with usage of libzip in file-handling workflows.

What your security team should do

  • Prioritize updating all libzip instances to the fixed versions listed for each package
  • Inventory dependencies to identify usage of vulnerable libzip across the environment
  • Apply network or application-level controls to limit processing of untrusted ZIP archives until patched

The record

The _zip_read_eocd64 function in zip_open.c in libzip before 1.3.0 mishandles EOCD records, which allows remote attackers to cause a denial of service (memory allocation failure in _zip_cdir_grow in zip_dirent.c) via a crafted ZIP archive.

Affected packages

Ecosystem Package Introduced Fixed
Debian:10 libzip 0 1.5.1-3
Debian:11 libzip 0 1.5.1-3
Debian:12 libzip 0 1.5.1-3
Debian:13 libzip 0 1.5.1-3
Debian:9 libzip 0 1.1.2-1.1+deb9u1
Mageia:5 libzip 0 0.11.2-4.1.mga5
Mageia:6 libzip 0 1.1.3-1.1.mga6
SUSE:Linux Enterprise Desktop 12 SP2 libzip 0 0.11.1-13.3.1
SUSE:Linux Enterprise Desktop 12 SP3 libzip 0 0.11.1-13.3.1
SUSE:Linux Enterprise Server 12 SP2 libzip 0 0.11.1-13.3.1
SUSE:Linux Enterprise Server 12 SP3 libzip 0 0.11.1-13.3.1
SUSE:Linux Enterprise Server for Raspberry Pi 12 SP2 libzip 0 0.11.1-13.3.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP2 libzip 0 0.11.1-13.3.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP3 libzip 0 0.11.1-13.3.1
SUSE:Linux Enterprise Software Development Kit 12 SP2 libzip 0 0.11.1-13.3.1
SUSE:Linux Enterprise Software Development Kit 12 SP3 libzip 0 0.11.1-13.3.1
Ubuntu:20.04:LTS libzip 0 1.5.1-0ubuntu1
Ubuntu:Pro:16.04:LTS libzip 0 1.0.1-0ubuntu1.1~esm1
Ubuntu:Pro:18.04:LTS libzip 0 1.1.2-1.1ubuntu0.1~esm1
openSUSE:Tumbleweed libzip 0 1.8.0-1.2

Related vulnerabilities