Description
PHP's OpenSSL stream peer verification checks the certificate's subjectAltName entries first and, whenever no entry matches, falls back to the Common Name. RFC 6125 requires the CN to be ignored once the certificate presents any service identity, so a certificate carrying a non-matching DNS SAN was still accepted when its CN matched the requested peer_name. A certificate trusted by the client for one name can therefore be used to impersonate another.
Published: 2026-09-25
Score: 4.3 Medium
EPSS: n/a
KEV: No
Impact: Impersonation of TLS connections via certificate mis‑verification
Action: Update PHP
AI Analysis

Impact

The vulnerability lies in PHP’s OpenSSL stream peer verification routine, which first checks the certificate’s subjectAltName entries and, when none match, falls back to using the Common Name (CN). RFC 6125 states that the CN must be ignored once any service identity is present, so a certificate that contains a non‑matching DNS SAN but a matching CN is still accepted, allowing a trusted certificate for one name to be used to impersonate another.

Affected Systems

Any PHP installation that relies on OpenSSL for stream peer verification is affected. The CVE does not list specific PHP versions or patches; it applies to all affected releases until a patch is applied.

Risk and Exploitability

This flaw gives an attacker the ability to present a certificate that will be accepted for a TLS host that it did not originally cover, effectively enabling impersonation of the target server. The CVSS score of 4.3 indicates low overall severity, and the EPSS score is not available, suggesting no widespread exploitation data. While this vulnerability is not listed in the CISA KEV catalog, it could be leveraged in targeted attacks that require a valid client‑trusted certificate.

Generated by OpenCVE AI on September 25, 2026 at 22:49 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Set up a workflow that automatically updates PHP to the most recent stable release that contains the fix for this SSL host‑name verification issue.
  • Verify that the updated PHP build is compiled against an OpenSSL version that enforces strict CN ignore when SANs are present.
  • If immediate update is not possible, configure your TLS endpoints to require that all certificates contain matching SAN entries for the intended hostnames, thereby preventing the CN fallback from being utilized.

Generated by OpenCVE AI on September 25, 2026 at 22:49 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Debian DSA Debian DSA DSA-6514-1 php8.4 security update
History

Fri, 25 Sep 2026 21:15:00 +0000

Type Values Removed Values Added
Description PHP's OpenSSL stream peer verification checks the certificate's subjectAltName entries first and, whenever no entry matches, falls back to the Common Name. RFC 6125 requires the CN to be ignored once the certificate presents any service identity, so a certificate carrying a non-matching DNS SAN was still accepted when its CN matched the requested peer_name. A certificate trusted by the client for one name can therefore be used to impersonate another.
Title TLS Hostname Verification Falls Back to CN After SAN Mismatch
Weaknesses CWE-297
References
Metrics cvssV3_1

{'score': 4.3, 'vector': 'CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N'}


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: php

Published:

Updated: 2026-09-25T20:59:39.727Z

Reserved: 2026-09-15T00:44:10.816Z

Link: CVE-2026-91769

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-09-25T21:17:24.913

Modified: 2026-09-25T21:17:24.913

Link: CVE-2026-91769

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-09-25T23:00:15Z

Weaknesses
  • CWE-297

    Improper Validation of Certificate with Host Mismatch