Cloudanix VulnDB

CVE-2016-1977

High · 8.8

CVSS

8.8

EPSS

2.9%

Published

Mar 13, 2016

CISA due date

—

Cloudanix analysis

Schedule a fix SSVC: Track

A bug in font handling inside certain software packages could let an attacker who supplies a specially made font file take over the computer or make the program crash.

Exploitation
Requires User Interaction
Attacker needs
User Interaction
Complexity
Low
Impact
Remote Code Execution
Component
Library
Class
Memory Corruption
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

The flaw triggers stack memory corruption inside Graphite 2's set_ref function during analysis of a crafted smart font, allowing an attacker to overwrite return addresses or data structures and achieve arbitrary code execution or a denial of service.

Why it matters to the business

Organizations running the listed kots packages risk remote compromise or service disruption when untrusted fonts are processed, which can lead to full system takeover or application crashes in any downstream component that depends on these packages.

How an attack unfolds

An attacker prepares a malicious Graphite font file and causes a victim application to load it (for example through a web page, document, or font directory); the vulnerable decoder processes the font, corrupts the stack, and either crashes the process or executes attacker-supplied code.

How to fix it

Upgrade kots (Chainguard) to 1.109.14-r1, kots (Wolfi) to 1.109.14-r1, kots-symlink-compat (Chainguard) to 1.109.14-r1, and kots-symlink-compat (Wolfi) to 1.109.14-r1; rebuild and redeploy any containers or packages that depend on the vulnerable Graphite 2 library.

How to confirm the fix worked

Confirm installed package versions meet or exceed the listed fixed releases, run regression tests that exercise font loading paths, and verify that Graphite 2 version 1.3.6 or newer is present in the final artifacts.

Typical attack path

  1. Prepare and host a specially crafted Graphite smart font
  2. Lure the target into loading the font via browser, document viewer, or application
  3. Trigger the set_ref analysis path inside Graphite 2
  4. Leverage the resulting stack corruption to execute code or crash the process

How to detect it

Review application and system logs for unexpected crashes or segmentation faults that occur during font loading; inspect process memory dumps or core files for signs of stack corruption around Graphite font decoder routines.

What your security team should do

  • Apply the listed package upgrades immediately in all environments that include the affected kots components
  • Remove or sandbox any legacy font-processing code paths that still rely on Graphite 2
  • Add package-version checks to CI/CD pipelines to prevent reintroduction of vulnerable Graphite versions

The record

The Machine::Code::decoder::analysis::set_ref function in Graphite 2 before 1.3.6, as used in Mozilla Firefox before 45.0 and Firefox ESR 38.x before 38.7, allows remote attackers to execute arbitrary code or cause a denial of service (stack memory corruption) via a crafted Graphite smart font.

Affected packages

Ecosystem Package Introduced Fixed
Debian:11 firefox-esr 0 45.0esr-1
Debian:11 graphite2 0 1.3.6-1
Debian:12 firefox-esr 0 45.0esr-1
Debian:12 graphite2 0 1.3.6-1
Debian:13 firefox-esr 0 45.0esr-1
Debian:13 graphite2 0 1.3.6-1
Debian:7 graphite2 0 1.3.6-1~deb7u1
Debian:7 icedove 0 38.7.0-1~deb7u1
Debian:7 iceweasel 0 38.7.0esr-1~deb7u1
Debian:8 graphite2 0 1.3.6-1~deb8u1
Debian:8 icedove 0 38.7.0-1~deb8u1
Debian:8 iceweasel 0 38.7.0esr-1~deb8u1
Mageia:5 firefox 0 38.7.0-1.mga5
Mageia:5 firefox-l10n 0 38.7.0-1.mga5
Mageia:5 graphite2 0 1.3.6-1.mga5
Mageia:5 nspr 0 4.12-1.mga5
Mageia:5 nss 0 3.21.1-1.mga5
Mageia:5 thunderbird 0 38.7.0-1.mga5
Mageia:5 thunderbird-l10n 0 38.7.0-1.mga5
Red Hat:enterprise_linux:5::client firefox 0 0:38.7.0-1.el5_11
Red Hat:enterprise_linux:5::client firefox-debuginfo 0 0:38.7.0-1.el5_11
Red Hat:enterprise_linux:5::client thunderbird 0 0:38.7.0-1.el5_11
Red Hat:enterprise_linux:5::client thunderbird-debuginfo 0 0:38.7.0-1.el5_11
Red Hat:enterprise_linux:5::server firefox 0 0:38.7.0-1.el5_11
Red Hat:enterprise_linux:5::server firefox-debuginfo 0 0:38.7.0-1.el5_11
Red Hat:enterprise_linux:6::client firefox 0 0:38.7.0-1.el6_7
Red Hat:enterprise_linux:6::client firefox-debuginfo 0 0:38.7.0-1.el6_7
Red Hat:enterprise_linux:6::client thunderbird 0 0:38.7.0-1.el6_7
Red Hat:enterprise_linux:6::client thunderbird-debuginfo 0 0:38.7.0-1.el6_7
Red Hat:enterprise_linux:6::computenode firefox 0 0:38.7.0-1.el6_7
Red Hat:enterprise_linux:6::computenode firefox-debuginfo 0 0:38.7.0-1.el6_7
Red Hat:enterprise_linux:6::server firefox 0 0:38.7.0-1.el6_7
Red Hat:enterprise_linux:6::server firefox-debuginfo 0 0:38.7.0-1.el6_7
Red Hat:enterprise_linux:6::server thunderbird 0 0:38.7.0-1.el6_7
Red Hat:enterprise_linux:6::server thunderbird-debuginfo 0 0:38.7.0-1.el6_7
Red Hat:enterprise_linux:6::workstation firefox 0 0:38.7.0-1.el6_7
Red Hat:enterprise_linux:6::workstation firefox-debuginfo 0 0:38.7.0-1.el6_7
Red Hat:enterprise_linux:6::workstation thunderbird 0 0:38.7.0-1.el6_7
Red Hat:enterprise_linux:6::workstation thunderbird-debuginfo 0 0:38.7.0-1.el6_7
Red Hat:enterprise_linux:7::client firefox 0 0:38.7.0-1.el7_2
Red Hat:enterprise_linux:7::client firefox-debuginfo 0 0:38.7.0-1.el7_2
Red Hat:enterprise_linux:7::client thunderbird 0 0:38.7.0-1.el7_2
Red Hat:enterprise_linux:7::client thunderbird-debuginfo 0 0:38.7.0-1.el7_2
Red Hat:enterprise_linux:7::server firefox 0 0:38.7.0-1.el7_2
Red Hat:enterprise_linux:7::server firefox-debuginfo 0 0:38.7.0-1.el7_2
Red Hat:enterprise_linux:7::server thunderbird 0 0:38.7.0-1.el7_2
Red Hat:enterprise_linux:7::server thunderbird-debuginfo 0 0:38.7.0-1.el7_2
Red Hat:enterprise_linux:7::workstation firefox 0 0:38.7.0-1.el7_2
Red Hat:enterprise_linux:7::workstation firefox-debuginfo 0 0:38.7.0-1.el7_2
Red Hat:enterprise_linux:7::workstation thunderbird 0 0:38.7.0-1.el7_2
Red Hat:enterprise_linux:7::workstation thunderbird-debuginfo 0 0:38.7.0-1.el7_2
Red Hat:rhel_productivity:5 thunderbird 0 0:38.7.0-1.el5_11
Red Hat:rhel_productivity:5 thunderbird-debuginfo 0 0:38.7.0-1.el5_11
SUSE:Linux Enterprise Desktop 11 SP4 MozillaFirefox 0 38.7.0esr-37.3
SUSE:Linux Enterprise Desktop 11 SP4 mozilla-nspr 0 4.12-24.1
SUSE:Linux Enterprise Desktop 11 SP4 mozilla-nss 0 3.20.2-28.1
SUSE:Linux Enterprise Desktop 12 MozillaFirefox 0 38.7.0esr-63.3
SUSE:Linux Enterprise Desktop 12 mozilla-nspr 0 4.12-12.1
SUSE:Linux Enterprise Desktop 12 mozilla-nss 0 3.20.2-40.1
SUSE:Linux Enterprise Desktop 12 SP1 MozillaFirefox 0 38.7.0esr-63.3
SUSE:Linux Enterprise Desktop 12 SP1 mozilla-nspr 0 4.12-12.1
SUSE:Linux Enterprise Desktop 12 SP1 mozilla-nss 0 3.20.2-40.1
SUSE:Linux Enterprise Server 11 SP2-LTSS MozillaFirefox 0 38.7.0esr-36.3
SUSE:Linux Enterprise Server 11 SP2-LTSS mozilla-nspr 0 4.12-19.1
SUSE:Linux Enterprise Server 11 SP2-LTSS mozilla-nss 0 3.20.2-20.1
SUSE:Linux Enterprise Server 11 SP3-LTSS MozillaFirefox 0 38.7.0esr-37.3
SUSE:Linux Enterprise Server 11 SP3-LTSS mozilla-nspr 0 4.12-24.1
SUSE:Linux Enterprise Server 11 SP3-LTSS mozilla-nss 0 3.20.2-28.1
SUSE:Linux Enterprise Server 11 SP3-TERADATA MozillaFirefox 0 38.7.0esr-37.3
SUSE:Linux Enterprise Server 11 SP3-TERADATA mozilla-nspr 0 4.12-24.1
SUSE:Linux Enterprise Server 11 SP3-TERADATA mozilla-nss 0 3.20.2-28.1
SUSE:Linux Enterprise Server 11 SP4 MozillaFirefox 0 38.7.0esr-37.3
SUSE:Linux Enterprise Server 11 SP4 mozilla-nspr 0 4.12-24.1
SUSE:Linux Enterprise Server 11 SP4 mozilla-nss 0 3.20.2-28.1
SUSE:Linux Enterprise Server 12 MozillaFirefox 0 38.7.0esr-63.3
SUSE:Linux Enterprise Server 12 mozilla-nspr 0 4.12-12.1
SUSE:Linux Enterprise Server 12 mozilla-nss 0 3.20.2-40.1
SUSE:Linux Enterprise Server 12 SP1 MozillaFirefox 0 38.7.0esr-63.3
SUSE:Linux Enterprise Server 12 SP1 mozilla-nspr 0 4.12-12.1
SUSE:Linux Enterprise Server 12 SP1 mozilla-nss 0 3.20.2-40.1
SUSE:Linux Enterprise Server for SAP Applications 11 SP4 MozillaFirefox 0 38.7.0esr-37.3
SUSE:Linux Enterprise Server for SAP Applications 11 SP4 mozilla-nspr 0 4.12-24.1
SUSE:Linux Enterprise Server for SAP Applications 11 SP4 mozilla-nss 0 3.20.2-28.1
SUSE:Linux Enterprise Server for SAP Applications 12 MozillaFirefox 0 38.7.0esr-63.3
SUSE:Linux Enterprise Server for SAP Applications 12 mozilla-nspr 0 4.12-12.1
SUSE:Linux Enterprise Server for SAP Applications 12 mozilla-nss 0 3.20.2-40.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP1 MozillaFirefox 0 38.7.0esr-63.3
SUSE:Linux Enterprise Server for SAP Applications 12 SP1 mozilla-nspr 0 4.12-12.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP1 mozilla-nss 0 3.20.2-40.1
SUSE:Linux Enterprise Software Development Kit 11 SP4 MozillaFirefox 0 38.7.0esr-37.3
SUSE:Linux Enterprise Software Development Kit 11 SP4 mozilla-nspr 0 4.12-24.1
SUSE:Linux Enterprise Software Development Kit 11 SP4 mozilla-nss 0 3.20.2-28.1
SUSE:Linux Enterprise Software Development Kit 12 MozillaFirefox 0 38.7.0esr-63.3
SUSE:Linux Enterprise Software Development Kit 12 mozilla-nspr 0 4.12-12.1
SUSE:Linux Enterprise Software Development Kit 12 mozilla-nss 0 3.20.2-40.1
SUSE:Linux Enterprise Software Development Kit 12 SP1 MozillaFirefox 0 38.7.0esr-63.3
SUSE:Linux Enterprise Software Development Kit 12 SP1 mozilla-nspr 0 4.12-12.1
SUSE:Linux Enterprise Software Development Kit 12 SP1 mozilla-nss 0 3.20.2-40.1
SUSE:Package Hub 12 MozillaThunderbird 0 45.2-6.1
Ubuntu:14.04:LTS firefox 0 45.0+build2-0ubuntu0.14.04.1
Ubuntu:14.04:LTS graphite2 0 1.3.6-1ubuntu0.14.04.1
Ubuntu:14.04:LTS thunderbird 0 1:38.7.2+build1-0ubuntu0.14.04.1
Ubuntu:16.04:LTS firefox 0 45.0+build2-0ubuntu1
Ubuntu:16.04:LTS graphite2 0 1.3.6-1ubuntu1
Ubuntu:16.04:LTS thunderbird 0 1:38.7.2+build1-0ubuntu0.16.04.1
openSUSE:Tumbleweed MozillaFirefox 0 50.1.0-1.1
openSUSE:Tumbleweed MozillaThunderbird 0 45.5.1-1.1
openSUSE:Tumbleweed firefox-esr 0 128.5.1-1.1

Related vulnerabilities