Cloudanix VulnDB

CVE-2022-20203

High · 7.8

CVSS

7.8

EPSS

0.1%

Published

Jun 15, 2022

CISA due date

—

Cloudanix analysis

Schedule a fix SSVC: Track

A problem handling certain data files on the same computer could let an attacker already on the system gain more control without any extra help.

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

What it actually does

Memory corruption during decoding of untrusted protobuf files in nanopb library components, enabling local privilege escalation without additional privileges or user interaction.

Why it matters to the business

Local attackers could gain elevated system access on affected deployments of express-param, increasing risk of unauthorized control; the issue is over four years old with minimal exploit activity observed, lowering urgency but requiring dependency updates to prevent potential abuse.

How an attack unfolds

An attacker with local access supplies a malicious protobuf file that is decoded by the vulnerable nanopb code in express-param, triggering memory corruption that leads to privilege escalation on the host.

How to fix it

Upgrade flitto/express-param (GIT) to one of the fixed commits: db94f7391ad0a16dcfcba8b9be1af385b25c42db or 117b73edbc32e5f182fd99eb617e2eb140efa46a.

How to confirm the fix worked

Confirm the installed commit hash matches a fixed version, review dependency manifests for nanopb usage, and test decoding of sample protobuf payloads for stability.

Typical attack path

  1. Locate a process or service using the vulnerable express-param package
  2. Prepare a crafted protobuf input designed to corrupt memory during decoding
  3. Trigger the decoding routine with the malicious input
  4. Exploit the resulting corruption to escalate local privileges

How to detect it

Search application and system logs for repeated crashes or memory errors during protobuf processing; monitor for unexpected privilege changes in processes handling untrusted data.

What your security team should do

  • Apply the listed commit upgrades to all instances of express-param
  • Audit and update any downstream dependencies that pull in the vulnerable nanopb code
  • Implement input validation or sandboxing around protobuf decoding where feasible

The record

In multiple locations of the nanopb library, there is a possible way to corrupt memory when decoding untrusted protobuf files. This could lead to local escalation of privilege,with no additional execution privileges needed. User interaction is not needed for exploitation.

Affected packages

Ecosystem Package Introduced Fixed
Ubuntu:20.04:LTS nanopb 0 No fix
Ubuntu:22.04:LTS nanopb 0 No fix
Ubuntu:24.04:LTS nanopb 0 No fix
Ubuntu:24.10 nanopb 0 No fix
Ubuntu:25.04 nanopb 0 No fix
Ubuntu:25.10 nanopb 0 No fix
Ubuntu:Pro:20.04:LTS nanopb 0 No fix

Related vulnerabilities