Cloudanix VulnDB

CVE-2021-22570

Medium · 5.5

CVSS

5.5

EPSS

2.7%

Published

Jan 26, 2022

CISA due date

—

Cloudanix analysis

Monitor only SSVC: Track

A bug in how Firefox handles certain data files on older Debian systems can cause the browser to crash when given specially formatted input, and updating to a newer version fixes it.

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

What it actually does

Null pointer dereference triggered during protobuf symbol parsing when a null character is present, causing an unchecked access to a file name pointer that is null during error message generation and resulting in a crash.

Why it matters to the business

Local denial-of-service condition that can interrupt Firefox ESR sessions on Debian 10 systems; low likelihood of remote exploitation or data compromise but still requires prompt patching given the age of the flaw.

How an attack unfolds

An attacker supplies a specially crafted protobuf symbol containing a null byte that is parsed incorrectly; the resulting error path dereferences a null file pointer, crashing the process. No remote vector or known threat actor campaigns are associated with this issue.

How to fix it

Upgrade firefox-esr on Debian 10 to version 102.11.0esr-1~deb10u1 or later. Apply the package update through standard Debian repositories and restart affected instances.

How to confirm the fix worked

Verify the installed firefox-esr package version is at or above 102.11.0esr-1~deb10u1 using dpkg or apt; confirm absence of the vulnerable code path via source review or crash reproduction tests with null-containing symbols.

Typical attack path

  1. Obtain local access or ability to supply a malicious protobuf input to the affected process
  2. Craft a symbol containing an embedded null character
  3. Trigger symbol parsing and error message generation path
  4. Trigger null pointer dereference resulting in application crash

How to detect it

Search system and application logs for Firefox ESR segmentation faults or abrupt process terminations around the time of protobuf-related operations; no specific remote indicators exist.

What your security team should do

  • Prioritize patching Debian 10 firefox-esr installations to the fixed version within standard maintenance windows
  • Monitor for application crashes in Firefox ESR processes that could indicate attempted exploitation
  • Review dependency usage of protobuf parsing libraries across other products for similar issues

The record

Nullptr dereference when a null char is present in a proto symbol. The symbol is parsed incorrectly, leading to an unchecked call into the proto file's name during generation of the resulting error message. Since the symbol is incorrectly parsed, the file is nullptr. We recommend upgrading to version 3.15.0 or greater.

Affected packages

Ecosystem Package Introduced Fixed
Go github.com/protocolbuffers/protobuf 0 0.0.0-20210218195015-ae50d9b99025
Go github.com/protocolbuffers/protobuf 0 3.15.0
Go github.com/protocolbuffers/protobuf 0.0.0 3.15.0
Maven com.google.protobuf:protobuf-java 0 3.15.0
NuGet Google.Protobuf 0 3.15.0
Packagist google/protobuf 0 3.15.0
PyPI protobuf 0 3.15.0
AlmaLinux:8 protobuf 0 3.5.0-15.el8
AlmaLinux:8 protobuf-compiler 0 3.5.0-15.el8
AlmaLinux:8 protobuf-devel 0 3.5.0-15.el8
AlmaLinux:8 protobuf-lite 0 3.5.0-15.el8
AlmaLinux:8 protobuf-lite-devel 0 3.5.0-15.el8
AlmaLinux:8 python3-protobuf 0 3.5.0-15.el8
AlmaLinux:9 protobuf 0 3.14.0-13.el9
AlmaLinux:9 protobuf-compiler 0 3.14.0-13.el9
AlmaLinux:9 protobuf-devel 0 3.14.0-13.el9
AlmaLinux:9 protobuf-lite 0 3.14.0-13.el9
AlmaLinux:9 protobuf-lite-devel 0 3.14.0-13.el9
AlmaLinux:9 python3-protobuf 0 3.14.0-13.el9
Chainguard apache-nifi 0 1.26.0-r2
Chainguard apache-nifi 0 2.6.0-r2
Chainguard apache-nifi-compat 0 2.6.0-r2
Chainguard apache-nifi-toolkit 0 2.6.0-r2
Chainguard dotty 0 3.4.0-r0
Chainguard druid 0 34.0.0-r6
Chainguard druid-compat 0 34.0.0-r6
Chainguard hadoop-client-modules 0 3.3.6-r7
Chainguard hadoop-fips-3.3.6 0 3.3.6-r15
Chainguard mysql-8.0 0 8.0.38-r0
Chainguard mysql-8.0-bitnami-compat 0 8.0.38-r0
Chainguard mysql-8.0-client 0 8.0.38-r0
Chainguard mysql-8.0-dev 0 8.0.38-r0
Chainguard mysql-8.0-iamguarded-compat 0 8.0.38-r0
Chainguard mysql-8.0-oci-entrypoint 0 8.0.38-r0
Chainguard mysql-8.0-oci-entrypoint-compat 0 8.0.38-r0
Chainguard spark-3.5 0 3.5.7-r2
Chainguard spark-3.5-scala-2.12 0 3.5.7-r2
Chainguard spark-3.5-scala-2.12-compat 0 3.5.7-r2
Chainguard spark-3.5-scala-2.12-iamguarded-compat 0 3.5.7-r2
Chainguard spark-3.5-scala-2.13 0 3.5.7-r2
Chainguard spark-3.5-scala-2.13-compat 0 3.5.7-r2
Chainguard spark-3.5.0-compat 0 0
Chainguard spark-fips-3.5 0 3.5.4-r17
Chainguard spark-fips-3.5-scala-2.12 0 3.5.4-r17
Chainguard spark-fips-3.5-scala-2.12-compat 0 3.5.4-r17
Chainguard spark-fips-3.5-scala-2.13 0 3.5.4-r17
Chainguard spark-fips-3.5-scala-2.13-compat 0 3.5.4-r17
Debian:10 protobuf 0 3.6.1.3-2+deb10u1
Debian:11 protobuf 0 3.12.4-1+deb11u1
Debian:12 protobuf 0 3.21.9-3
Debian:13 protobuf 0 3.21.9-3
Debian:14 protobuf 0 3.21.9-3
Red Hat:enterprise_linux:8::appstream protobuf 0 0:3.5.0-15.el8
Red Hat:enterprise_linux:8::appstream protobuf-compiler 0 0:3.5.0-15.el8
Red Hat:enterprise_linux:8::appstream protobuf-compiler-debuginfo 0 0:3.5.0-15.el8
Red Hat:enterprise_linux:8::appstream protobuf-debuginfo 0 0:3.5.0-15.el8
Red Hat:enterprise_linux:8::appstream protobuf-debugsource 0 0:3.5.0-15.el8
Red Hat:enterprise_linux:8::appstream protobuf-devel 0 0:3.5.0-15.el8
Red Hat:enterprise_linux:8::appstream protobuf-lite 0 0:3.5.0-15.el8
Red Hat:enterprise_linux:8::appstream protobuf-lite-debuginfo 0 0:3.5.0-15.el8
Red Hat:enterprise_linux:8::appstream protobuf-lite-devel 0 0:3.5.0-15.el8
Red Hat:enterprise_linux:8::appstream python3-protobuf 0 0:3.5.0-15.el8
Red Hat:enterprise_linux:8::crb protobuf 0 0:3.5.0-15.el8
Red Hat:enterprise_linux:8::crb protobuf-compiler 0 0:3.5.0-15.el8
Red Hat:enterprise_linux:8::crb protobuf-compiler-debuginfo 0 0:3.5.0-15.el8
Red Hat:enterprise_linux:8::crb protobuf-debuginfo 0 0:3.5.0-15.el8
Red Hat:enterprise_linux:8::crb protobuf-debugsource 0 0:3.5.0-15.el8
Red Hat:enterprise_linux:8::crb protobuf-devel 0 0:3.5.0-15.el8
Red Hat:enterprise_linux:8::crb protobuf-lite 0 0:3.5.0-15.el8
Red Hat:enterprise_linux:8::crb protobuf-lite-debuginfo 0 0:3.5.0-15.el8
Red Hat:enterprise_linux:8::crb protobuf-lite-devel 0 0:3.5.0-15.el8
Red Hat:enterprise_linux:8::crb python3-protobuf 0 0:3.5.0-15.el8
Red Hat:enterprise_linux:9::appstream protobuf 0 0:3.14.0-13.el9
Red Hat:enterprise_linux:9::appstream protobuf-compiler 0 0:3.14.0-13.el9
Red Hat:enterprise_linux:9::appstream protobuf-compiler-debuginfo 0 0:3.14.0-13.el9
Red Hat:enterprise_linux:9::appstream protobuf-debuginfo 0 0:3.14.0-13.el9
Red Hat:enterprise_linux:9::appstream protobuf-debugsource 0 0:3.14.0-13.el9
Red Hat:enterprise_linux:9::appstream protobuf-devel 0 0:3.14.0-13.el9
Red Hat:enterprise_linux:9::appstream protobuf-lite 0 0:3.14.0-13.el9
Red Hat:enterprise_linux:9::appstream protobuf-lite-debuginfo 0 0:3.14.0-13.el9
Red Hat:enterprise_linux:9::appstream protobuf-lite-devel 0 0:3.14.0-13.el9
Red Hat:enterprise_linux:9::appstream python3-protobuf 0 0:3.14.0-13.el9
Red Hat:enterprise_linux:9::crb protobuf 0 0:3.14.0-13.el9
Red Hat:enterprise_linux:9::crb protobuf-compiler 0 0:3.14.0-13.el9
Red Hat:enterprise_linux:9::crb protobuf-compiler-debuginfo 0 0:3.14.0-13.el9
Red Hat:enterprise_linux:9::crb protobuf-debuginfo 0 0:3.14.0-13.el9
Red Hat:enterprise_linux:9::crb protobuf-debugsource 0 0:3.14.0-13.el9
Red Hat:enterprise_linux:9::crb protobuf-devel 0 0:3.14.0-13.el9
Red Hat:enterprise_linux:9::crb protobuf-lite 0 0:3.14.0-13.el9
Red Hat:enterprise_linux:9::crb protobuf-lite-debuginfo 0 0:3.14.0-13.el9
Red Hat:enterprise_linux:9::crb protobuf-lite-devel 0 0:3.14.0-13.el9
Red Hat:enterprise_linux:9::crb python3-protobuf 0 0:3.14.0-13.el9
Red Hat:openstack:16.1::el8 protobuf 0 0:3.6.1-6.el8ost
Red Hat:openstack:16.1::el8 python3-protobuf 0 0:3.6.1-6.el8ost
Red Hat:openstack:16.2::el8 protobuf 0 0:3.6.1-6.el8ost
Red Hat:openstack:16.2::el8 python3-protobuf 0 0:3.6.1-6.el8ost
Red Hat:rhel_eus:8.6::appstream protobuf 0 0:3.5.0-15.el8_6
Red Hat:rhel_eus:8.6::appstream protobuf-compiler 0 0:3.5.0-15.el8_6
Red Hat:rhel_eus:8.6::appstream protobuf-compiler-debuginfo 0 0:3.5.0-15.el8_6
Red Hat:rhel_eus:8.6::appstream protobuf-debuginfo 0 0:3.5.0-15.el8_6
Red Hat:rhel_eus:8.6::appstream protobuf-debugsource 0 0:3.5.0-15.el8_6
Red Hat:rhel_eus:8.6::appstream protobuf-devel 0 0:3.5.0-15.el8_6
Red Hat:rhel_eus:8.6::appstream protobuf-lite 0 0:3.5.0-15.el8_6
Red Hat:rhel_eus:8.6::appstream protobuf-lite-debuginfo 0 0:3.5.0-15.el8_6
Red Hat:rhel_eus:8.6::appstream protobuf-lite-devel 0 0:3.5.0-15.el8_6
Red Hat:rhel_eus:8.6::appstream python3-protobuf 0 0:3.5.0-15.el8_6
Red Hat:rhel_eus:8.6::crb protobuf 0 0:3.5.0-15.el8_6
Red Hat:rhel_eus:8.6::crb protobuf-compiler 0 0:3.5.0-15.el8_6
Red Hat:rhel_eus:8.6::crb protobuf-compiler-debuginfo 0 0:3.5.0-15.el8_6
Red Hat:rhel_eus:8.6::crb protobuf-debuginfo 0 0:3.5.0-15.el8_6
Red Hat:rhel_eus:8.6::crb protobuf-debugsource 0 0:3.5.0-15.el8_6
Red Hat:rhel_eus:8.6::crb protobuf-devel 0 0:3.5.0-15.el8_6
Red Hat:rhel_eus:8.6::crb protobuf-lite 0 0:3.5.0-15.el8_6
Red Hat:rhel_eus:8.6::crb protobuf-lite-debuginfo 0 0:3.5.0-15.el8_6
Red Hat:rhel_eus:8.6::crb protobuf-lite-devel 0 0:3.5.0-15.el8_6
Red Hat:rhel_eus:8.6::crb python3-protobuf 0 0:3.5.0-15.el8_6
Rocky Linux:8 protobuf 0 0:3.5.0-15.el8
Rocky Linux:9 protobuf 0 0:3.14.0-13.el9
SUSE:Enterprise Storage 7 protobuf 0 3.9.2-4.12.1
SUSE:Enterprise Storage 7 python-Automat 0 0.6.0-150000.3.4.1
SUSE:Enterprise Storage 7 python-constantly 0 15.1.0-150000.3.4.1
SUSE:Enterprise Storage 7 python-hyperlink 0 17.2.1-150000.3.4.1
SUSE:Enterprise Storage 7 python-incremental 0 17.5.0-150000.3.4.1
SUSE:Enterprise Storage 7 python-psutil 0 5.9.1-150100.6.6.3
SUSE:Enterprise Storage 7 python-requests 0 2.25.1-150100.6.13.3
SUSE:Enterprise Storage 7 python-websocket-client 0 1.3.2-150100.6.7.3
SUSE:Enterprise Storage 7 python-zope.interface 0 4.4.2-150000.3.4.1
SUSE:Enterprise Storage 7.1 python-Automat 0 0.6.0-150000.3.4.1
SUSE:Enterprise Storage 7.1 python-constantly 0 15.1.0-150000.3.4.1
SUSE:Enterprise Storage 7.1 python-hyperlink 0 17.2.1-150000.3.4.1
SUSE:Enterprise Storage 7.1 python-incremental 0 17.5.0-150000.3.4.1
SUSE:Enterprise Storage 7.1 python-websocket-client 0 1.3.2-150100.6.7.3
SUSE:Enterprise Storage 7.1 python-zope.interface 0 4.4.2-150000.3.4.1
SUSE:Linux Enterprise High Performance Computing 15 SP1-LTSS protobuf 0 3.9.2-150100.8.3.3
SUSE:Linux Enterprise High Performance Computing 15 SP1-LTSS python-cryptography 0 3.3.2-150100.7.15.3
SUSE:Linux Enterprise High Performance Computing 15 SP1-LTSS python-psutil 0 5.9.1-150100.6.6.3
SUSE:Linux Enterprise High Performance Computing 15 SP1-LTSS python-requests 0 2.25.1-150100.6.13.3
SUSE:Linux Enterprise High Performance Computing 15 SP1-LTSS python-websocket-client 0 1.3.2-150100.6.7.3
SUSE:Linux Enterprise High Performance Computing 15 SP2-ESPOS protobuf 0 3.9.2-4.12.1
SUSE:Linux Enterprise High Performance Computing 15 SP2-LTSS protobuf 0 3.9.2-4.12.1
SUSE:Linux Enterprise High Performance Computing 15 SP2-LTSS python-Automat 0 0.6.0-150000.3.4.1
SUSE:Linux Enterprise High Performance Computing 15 SP2-LTSS python-constantly 0 15.1.0-150000.3.4.1
SUSE:Linux Enterprise High Performance Computing 15 SP2-LTSS python-hyperlink 0 17.2.1-150000.3.4.1
SUSE:Linux Enterprise High Performance Computing 15 SP2-LTSS python-incremental 0 17.5.0-150000.3.4.1
SUSE:Linux Enterprise High Performance Computing 15 SP2-LTSS python-psutil 0 5.9.1-150100.6.6.3
SUSE:Linux Enterprise High Performance Computing 15 SP2-LTSS python-requests 0 2.25.1-150100.6.13.3
SUSE:Linux Enterprise High Performance Computing 15 SP2-LTSS python-websocket-client 0 1.3.2-150100.6.7.3
SUSE:Linux Enterprise High Performance Computing 15 SP2-LTSS python-zope.interface 0 4.4.2-150000.3.4.1
SUSE:Linux Enterprise High Performance Computing 15 SP3-ESPOS python-Automat 0 0.6.0-150000.3.4.1
SUSE:Linux Enterprise High Performance Computing 15 SP3-ESPOS python-constantly 0 15.1.0-150000.3.4.1
SUSE:Linux Enterprise High Performance Computing 15 SP3-ESPOS python-hyperlink 0 17.2.1-150000.3.4.1
SUSE:Linux Enterprise High Performance Computing 15 SP3-ESPOS python-incremental 0 17.5.0-150000.3.4.1
SUSE:Linux Enterprise High Performance Computing 15 SP3-ESPOS python-websocket-client 0 1.3.2-150100.6.7.3
SUSE:Linux Enterprise High Performance Computing 15 SP3-ESPOS python-zope.interface 0 4.4.2-150000.3.4.1
SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS python-Automat 0 0.6.0-150000.3.4.1
SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS python-constantly 0 15.1.0-150000.3.4.1
SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS python-hyperlink 0 17.2.1-150000.3.4.1
SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS python-incremental 0 17.5.0-150000.3.4.1
SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS python-websocket-client 0 1.3.2-150100.6.7.3
SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS python-zope.interface 0 4.4.2-150000.3.4.1
SUSE:Linux Enterprise Installer Updates 15 SP1 protobuf 0 3.9.2-150100.8.3.3
SUSE:Linux Enterprise Installer Updates 15 SP2 protobuf 0 3.9.2-4.12.1
SUSE:Linux Enterprise Micro 5.0 protobuf 0 3.9.2-4.12.1
SUSE:Linux Enterprise Micro 5.1 protobuf 0 3.9.2-4.12.1
SUSE:Linux Enterprise Micro 5.2 protobuf 0 3.9.2-4.12.1
SUSE:Linux Enterprise Module for Basesystem 15 SP3 protobuf 0 3.9.2-4.12.1
SUSE:Linux Enterprise Module for Basesystem 15 SP4 python-websocket-client 0 1.3.2-150100.6.7.3
SUSE:Linux Enterprise Module for Basesystem 15 SP5 python-websocket-client 0 1.3.2-150100.6.7.3
SUSE:Linux Enterprise Module for Development Tools 15 SP3 protobuf 0 3.9.2-4.12.1
SUSE:Linux Enterprise Module for Package Hub 15 SP3 protobuf 0 3.9.2-4.12.1
SUSE:Linux Enterprise Module for Package Hub 15 SP4 protobuf 0 3.9.2-4.12.1
SUSE:Linux Enterprise Module for Package Hub 15 SP5 python-humanfriendly 0 10.0-150100.6.3.3
SUSE:Linux Enterprise Module for Public Cloud 15 SP1 azure-cli-core 0 2.17.1-150100.6.18.1
SUSE:Linux Enterprise Module for Public Cloud 15 SP1 grpc 0 1.25.0-150100.3.3.3
SUSE:Linux Enterprise Module for Public Cloud 15 SP1 protobuf 0 3.9.2-150100.8.3.3
SUSE:Linux Enterprise Module for Public Cloud 15 SP1 python-Deprecated 0 1.2.13-150100.3.3.3
SUSE:Linux Enterprise Module for Public Cloud 15 SP1 python-PyGithub 0 1.43.5-150100.3.3.3
SUSE:Linux Enterprise Module for Public Cloud 15 SP1 python-Twisted 0 17.9.0-150000.3.8.1
SUSE:Linux Enterprise Module for Public Cloud 15 SP1 python-aiocontextvars 0 0.2.2-150100.3.3.3
SUSE:Linux Enterprise Module for Public Cloud 15 SP1 python-avro 0 1.11.0-150100.3.3.3
SUSE:Linux Enterprise Module for Public Cloud 15 SP1 python-cryptography 0 3.3.2-150100.7.15.3
SUSE:Linux Enterprise Module for Public Cloud 15 SP1 python-cryptography-vectors 0 3.3.2-150100.3.11.3
SUSE:Linux Enterprise Module for Public Cloud 15 SP1 python-google-api-core 0 1.14.2-150100.3.3.3
SUSE:Linux Enterprise Module for Public Cloud 15 SP1 python-googleapis-common-protos 0 1.6.0-150100.3.3.3
SUSE:Linux Enterprise Module for Public Cloud 15 SP1 python-grpcio-gcp 0 0.2.2-150100.3.3.3
SUSE:Linux Enterprise Module for Public Cloud 15 SP1 python-humanfriendly 0 10.0-150100.6.3.3
SUSE:Linux Enterprise Module for Public Cloud 15 SP1 python-jsondiff 0 1.3.0-150100.3.6.3
SUSE:Linux Enterprise Module for Public Cloud 15 SP1 python-knack 0 0.9.0-150100.3.7.3
SUSE:Linux Enterprise Module for Public Cloud 15 SP1 python-opencensus 0 0.8.0-150100.3.3.3
SUSE:Linux Enterprise Module for Public Cloud 15 SP1 python-opencensus-context 0 0.1.2-150100.3.3.3
SUSE:Linux Enterprise Module for Public Cloud 15 SP1 python-opencensus-ext-threading 0 0.1.2-150100.3.3.3
SUSE:Linux Enterprise Module for Public Cloud 15 SP1 python-opentelemetry-api 0 1.5.0-150100.3.3.3
SUSE:Linux Enterprise Module for Public Cloud 15 SP1 python-psutil 0 5.9.1-150100.6.6.3
SUSE:Linux Enterprise Module for Public Cloud 15 SP1 python-pytest 0 3.10.1-150000.7.5.1
SUSE:Linux Enterprise Module for Public Cloud 15 SP1 python-pytest-asyncio 0 0.8.0-150100.3.3.3
SUSE:Linux Enterprise Module for Public Cloud 15 SP1 python-requests 0 2.25.1-150100.6.13.3
SUSE:Linux Enterprise Module for Public Cloud 15 SP1 python-websocket-client 0 1.3.2-150100.6.7.3
SUSE:Linux Enterprise Module for Public Cloud 15 SP1 python-websockets 0 9.1-150100.3.3.3
SUSE:Linux Enterprise Module for Public Cloud 15 SP1 python-zope.interface 0 4.4.2-150000.3.4.1
SUSE:Linux Enterprise Module for Public Cloud 15 SP2 azure-cli-core 0 2.17.1-150100.6.18.1

Related vulnerabilities