CVE-2026-33307

Mod_gnutls is a TLS module for Apache HTTPD based on GnuTLS. In versions prior to 0.12.3 and 0.13.0, code for client certificate verification imported the certificate chain sent by the client into a fixed size `gnutls_x509_crt_t x509[]` array without checking the number of certificates is less than or equal to the array size. `gnutls_x509_crt_t` is a `typedef` for a pointer to an opaque GnuTLS structure created using with `gnutls_x509_crt_init()` before importing certificate data into it, so no attacker-controlled data was written into the stack buffer, but writing a pointer after the last array element generally triggered a segfault, and could theoretically cause stack corruption otherwise (not observed in practice). Server configurations that do not use client certificates (`GnuTLSClientVerify ignore`, the default) are not affected. The problem has been fixed in version 0.12.3 by checking the length of the provided certificate chain and rejecting it if it exceeds the buffer length, and in version 0.13.0 by rewriting certificate verification to use `gnutls_certificate_verify_peers()`, removing the need for the buffer entirely. There is no workaround. Version 0.12.3 provides the minimal fix for users of 0.12.x who do not wish to upgrade to 0.13.0 yet.
Configurations

Configuration 1 (hide)

cpe:2.3:a:mod_gnutls_project:mod_gnutls:*:*:*:*:*:*:*:*

History

24 Mar 2026, 19:29

Type Values Removed Values Added
Summary
  • (es) Mod_gnutls es un módulo TLS para Apache HTTPD basado en GnuTLS. En versiones anteriores a la 0.12.3 y 0.13.0, el código para la verificación de certificados del cliente importaba la cadena de certificados enviada por el cliente a un array de tamaño fijo gnutls_x509_crt_t x509[] sin comprobar que el número de certificados fuera menor o igual al tamaño del array. gnutls_x509_crt_t es un typedef para un puntero a una estructura opaca de GnuTLS creada usando gnutls_x509_crt_init() antes de importar datos de certificado en ella, por lo que no se escribieron datos controlados por el atacante en el búfer de pila, pero escribir un puntero después del último elemento del array generalmente provocaba un segfault, y teóricamente podría causar corrupción de pila de otra manera (no observado en la práctica). Las configuraciones del servidor que no utilizan certificados de cliente (GnuTLSClientVerify ignore, el valor predeterminado) no se ven afectadas. El problema se ha solucionado en la versión 0.12.3 comprobando la longitud de la cadena de certificados proporcionada y rechazándola si excede la longitud del búfer, y en la versión 0.13.0 reescribiendo la verificación de certificados para usar gnutls_certificate_verify_peers(), eliminando por completo la necesidad del búfer. No hay solución alternativa. La versión 0.12.3 proporciona la solución mínima para los usuarios de 0.12.x que aún no desean actualizar a la 0.13.0.
First Time Mod Gnutls Project
Mod Gnutls Project mod Gnutls
References () https://github.com/airtower-luna/mod_gnutls/commit/bf4f08c49acae528e97885082cdee460f4534dc1 - () https://github.com/airtower-luna/mod_gnutls/commit/bf4f08c49acae528e97885082cdee460f4534dc1 - Patch
References () https://github.com/airtower-luna/mod_gnutls/security/advisories/GHSA-gjpm-55p4-c76r - () https://github.com/airtower-luna/mod_gnutls/security/advisories/GHSA-gjpm-55p4-c76r - Patch, Vendor Advisory
CPE cpe:2.3:a:mod_gnutls_project:mod_gnutls:*:*:*:*:*:*:*:*

24 Mar 2026, 02:16

Type Values Removed Values Added
New CVE

Information

Published : 2026-03-24 02:16

Updated : 2026-03-24 19:29


NVD link : CVE-2026-33307

Mitre link : CVE-2026-33307

CVE.ORG link : CVE-2026-33307


JSON object : View

Products Affected

mod_gnutls_project

  • mod_gnutls
CWE
CWE-121

Stack-based Buffer Overflow