---
id: CVE-2026-107161
title: A heap-based buffer overflow flaw was found in Cyrus SASL
summary: >-
  A heap-based buffer overflow flaw was found in Cyrus SASL. The
  add_to_challenge() function in the DIGEST-MD5 plugin computes the size of the
  buffer needed for a challenge/response field before DIGEST-MD5 quoting is
  applied, but does not …
severity: high
cvss: 7.5
cvssVector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H'
cwe:
  - CWE-122
vendor: Red Hat
product: cyrus-sasl
affected:
  - cyrus-sasl (all versions)
  - cyrus-sasl
  - cyrus-sasl (all versions)
  - cyrus-sasl (all versions)
  - cyrus-sasl (all versions)
  - cyrus-sasl (all versions)
  - openshift/ose-rhel-coreos-8
  - openshift/ose-rhel-coreos-9
published: '2026-10-07'
updated: '2026-10-07'
sourceUpdated: '2026-10-07T20:17:10.977'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-107161'
references:
  - url: 'https://access.redhat.com/security/cve/CVE-2026-107161'
    label: secalert@redhat.com
  - url: 'https://bugzilla.redhat.com/show_bug.cgi?id=2460420'
    label: secalert@redhat.com
tags:
  - nvd
  - cve.org
ingestedAt: '2026-10-07T20:46:46.978Z'
---

## Overview

A heap-based buffer overflow flaw was found in Cyrus SASL. The add_to_challenge() function in the DIGEST-MD5 plugin computes the size of the buffer needed for a challenge/response field before DIGEST-MD5 quoting is applied, but does not recompute that size when quoting (escaping special characters) makes the value longer. The under-sized buffer is then passed to strcat(), causing a heap-based out-of-bounds write whose size depends on attacker-controlled input. A malicious or on-path DIGEST-MD5 (or HTTP Digest) server can trigger this flaw in a connecting client by supplying a crafted challenge field, such as realm or nonce, most likely resulting in a crash of the client application.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
