Cloudanix VulnDB

CVE-2023-39914

High · 7.5

CVSS

7.5

EPSS

0.7%

Published

Sep 13, 2023

CISA due date

—

Cloudanix analysis

Monitor only SSVC: Track

A data-handling library can crash programs that use it when they receive bad input, which may interrupt services until they are restarted.

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

What it actually does

The bcder library panics instead of returning an error when decoding certain malformed input data, affecting both immediate decoding and delayed-decoded types, resulting in process termination.

Why it matters to the business

Applications relying on the library for untrusted input can be forced into unplanned crashes, causing service outages and reduced availability until the process is restarted.

How an attack unfolds

An attacker identifies a network service or application that uses the vulnerable bcder version to parse BER/DER data, crafts and sends specially malformed input, triggering a panic that crashes the process and denies service to legitimate users.

How to fix it

Upgrade to a patched version of bcder once released; in the interim, place strict input validation or sandboxing in front of any decoding paths and monitor for repeated crashes.

How to confirm the fix worked

Test that the library rejects malformed inputs with errors rather than panicking; review application logs and process health after supplying known-bad test vectors.

Typical attack path

  1. Locate a target application or service that accepts network input processed by bcder
  2. Craft invalid BER/DER data that triggers the panic path
  3. Transmit the malicious data to the target
  4. Observe process termination and resulting denial of service

How to detect it

Monitor application and system logs for unexpected process terminations or panic messages originating from bcder decoding functions; correlate with inbound traffic containing unusual BER/DER structures.

What your security team should do

  • Prioritize upgrading bcder as soon as a fixed release is published
  • Add defensive input filtering or rate limiting around any decoding entry points
  • Implement process supervision and automatic restarts to limit outage duration
  • Scan dependency trees for bcder usage across the environment

The record

NLnet Labs’ bcder library up to and including version 0.7.2 panics while decoding certain invalid input data rather than rejecting the data with an error. This can affect both the actual decoding stage as well as accessing content of types that utilized delayed decoding.

Affected packages

Ecosystem Package Introduced Fixed
crates.io bcder 0 0.7.3
crates.io bcder 0.0.0-0 0.7.3
Debian:12 rust-bcder 0 No fix
Debian:13 rust-bcder 0 0.7.3-1
Ubuntu:24.04:LTS rust-bcder 0 No fix
Ubuntu:24.10 rust-bcder 0 0.7.3-1