CVE-2025-23048
NoneCVSS
—
EPSS
1.0%
Published
Jul 10, 2025
CISA due date
—
Cloudanix analysis
Certain web server setups that use client certificates to control access can let an approved user reach other parts of the site they should not be allowed to see.
- Exploitation
- Remote Authenticated
- Attacker needs
- Low Privilege
- Complexity
- Low
- Impact
- Data Exposure
- Component
- Network Service
- Class
- Authorization Bypass
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
In mod_ssl configurations with multiple virtual hosts using distinct client certificate trust stores, TLS 1.3 session resumption allows a certificate validated for one virtual host to be reused against another without re-validation when SSLStrictSNIVHostCheck is disabled.
Why it matters to the business
Clients granted access to one restricted area of a web service can reach other areas that should be blocked, increasing risk of unauthorized data exposure or actions.
How an attack unfolds
An attacker obtains a client certificate trusted by one virtual host, completes an initial TLS 1.3 handshake, then reuses the session ticket or PSK to connect to a second virtual host whose certificate restrictions would normally reject it.
How to fix it
Upgrade affected Apache packages to the fixed version (Debian 13: 6.12.35-1 or later) and enable SSLStrictSNIVHostCheck on all virtual hosts that use distinct SSLCACertificate settings.
How to confirm the fix worked
Confirm the installed Apache package version meets or exceeds the fixed release, review virtual host configurations for SSLStrictSNIVHostCheck On, and test that cross-host session resumption is rejected.
Typical attack path
- Obtain a client certificate trusted by at least one affected virtual host
- Perform initial TLS 1.3 connection and capture resumption material
- Use session resumption against a different virtual host lacking SSLStrictSNIVHostCheck
- Access resources behind the unintended certificate policy
How to detect it
Review Apache access and error logs for TLS session resumption events crossing virtual host boundaries; correlate client certificate subjects with requested hostnames that would normally be denied.
What your security team should do
- Enable SSLStrictSNIVHostCheck wherever multiple virtual hosts use separate client certificate trust stores
- Upgrade Debian 13 systems to apache2 package 6.12.35-1 or newer
- Audit all mod_ssl multi-vhost deployments for missing strict SNI checks
- Monitor for any future public exploits given the configuration-specific nature of the flaw
The record
In some mod_ssl configurations on Apache HTTP Server 2.4.35 through to 2.4.63, an access control bypass by trusted clients is possible using TLS 1.3 session resumption. Configurations are affected when mod_ssl is configured for multiple virtual hosts, with each restricted to a different set of trusted client certificates (for example with a different SSLCACertificateFile/Path setting). In such a case, a client trusted to access one virtual host may be able to access another virtual host, if SSLStrictSNIVHostCheck is not enabled in either virtual host.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| AlmaLinux:10 | httpd | 0 | 2.4.63-1.el10_0.2 |
| AlmaLinux:10 | httpd-core | 0 | 2.4.63-1.el10_0.2 |
| AlmaLinux:10 | httpd-devel | 0 | 2.4.63-1.el10_0.2 |
| AlmaLinux:10 | httpd-filesystem | 0 | 2.4.63-1.el10_0.2 |
| AlmaLinux:10 | httpd-manual | 0 | 2.4.63-1.el10_0.2 |
| AlmaLinux:10 | httpd-tools | 0 | 2.4.63-1.el10_0.2 |
| AlmaLinux:10 | mod_ldap | 0 | 2.4.63-1.el10_0.2 |
| AlmaLinux:10 | mod_lua | 0 | 2.4.63-1.el10_0.2 |
| AlmaLinux:10 | mod_proxy_html | 0 | 1:2.4.63-1.el10_0.2 |
| AlmaLinux:10 | mod_session | 0 | 2.4.63-1.el10_0.2 |
| AlmaLinux:10 | mod_ssl | 0 | 1:2.4.63-1.el10_0.2 |
| AlmaLinux:8 | httpd | 0 | 2.4.37-65.module_el8.10.0+4044+ea5f78b1.5 |
| AlmaLinux:8 | httpd-devel | 0 | 2.4.37-65.module_el8.10.0+4044+ea5f78b1.5 |
| AlmaLinux:8 | httpd-filesystem | 0 | 2.4.37-65.module_el8.10.0+4044+ea5f78b1.5 |
| AlmaLinux:8 | httpd-manual | 0 | 2.4.37-65.module_el8.10.0+4044+ea5f78b1.5 |
| AlmaLinux:8 | httpd-tools | 0 | 2.4.37-65.module_el8.10.0+4044+ea5f78b1.5 |
| AlmaLinux:8 | mod_http2 | 0 | 1.15.7-10.module_el8.10.0+4044+ea5f78b1.4 |
| AlmaLinux:8 | mod_ldap | 0 | 2.4.37-65.module_el8.10.0+4044+ea5f78b1.5 |
| AlmaLinux:8 | mod_md | 0 | 1:2.0.8-8.module_el8.6.0+2872+fe0ff7aa |
| AlmaLinux:8 | mod_md | 0 | 1:2.0.8-8.module_el8.6.0+3031+fb177b09 |
| AlmaLinux:8 | mod_proxy_html | 0 | 1:2.4.37-65.module_el8.10.0+4044+ea5f78b1.5 |
| AlmaLinux:8 | mod_session | 0 | 2.4.37-65.module_el8.10.0+4044+ea5f78b1.5 |
| AlmaLinux:8 | mod_ssl | 0 | 1:2.4.37-65.module_el8.10.0+4044+ea5f78b1.5 |
| AlmaLinux:9 | httpd | 0 | 2.4.62-4.el9_6.4 |
| AlmaLinux:9 | httpd-core | 0 | 2.4.62-4.el9_6.4 |
| AlmaLinux:9 | httpd-devel | 0 | 2.4.62-4.el9_6.4 |
| AlmaLinux:9 | httpd-filesystem | 0 | 2.4.62-4.el9_6.4 |
| AlmaLinux:9 | httpd-manual | 0 | 2.4.62-4.el9_6.4 |
| AlmaLinux:9 | httpd-tools | 0 | 2.4.62-4.el9_6.4 |
| AlmaLinux:9 | mod_ldap | 0 | 2.4.62-4.el9_6.4 |
| AlmaLinux:9 | mod_lua | 0 | 2.4.62-4.el9_6.4 |
| AlmaLinux:9 | mod_proxy_html | 0 | 1:2.4.62-4.el9_6.4 |
| AlmaLinux:9 | mod_session | 0 | 2.4.62-4.el9_6.4 |
| AlmaLinux:9 | mod_ssl | 0 | 1:2.4.62-4.el9_6.4 |
| Alpine:v3.19 | apache2 | 0 | 2.4.64-r0 |
| Alpine:v3.20 | apache2 | 0 | 2.4.64-r0 |
| Alpine:v3.21 | apache2 | 0 | 2.4.64-r0 |
| Alpine:v3.22 | apache2 | 0 | 2.4.64-r0 |
| Bitnami | apache | 2.4.35 | No fix |
| Bitnami | apache | 2.4.35 | 2.4.64 |
| Chainguard | apache2 | 0 | 0 |
| Chainguard | apache2-compat | 0 | 0 |
| Chainguard | apache2-config | 0 | 0 |
| Chainguard | apache2-config-compat | 0 | 0 |
| Chainguard | apache2-data | 0 | 0 |
| Chainguard | apache2-dev | 0 | 0 |
| Chainguard | apache2-doc | 0 | 0 |
| Chainguard | apache2-oci-entrypoint | 0 | 0 |
| Chainguard | apache2-utils | 0 | 0 |
| Debian:11 | apache2 | 0 | No fix |
| Debian:12 | apache2 | 0 | No fix |
| Debian:13 | apache2 | 0 | No fix |
| Debian:14 | apache2 | 0 | 2.4.64-1 |
| Mageia:9 | apache | 0 | 2.4.65-1.mga9 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP6 | apache2 | 0 | 2.4.58-150600.5.35.1 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP6 | apache2-prefork | 0 | 2.4.58-150600.5.35.1 |
| SUSE:Linux Enterprise Module for Package Hub 15 SP6 | apache2 | 0 | 2.4.58-150600.5.35.1 |
| SUSE:Linux Enterprise Module for Package Hub 15 SP6 | apache2-event | 0 | 2.4.58-150600.5.35.1 |
| SUSE:Linux Enterprise Module for Server Applications 15 SP6 | apache2-devel | 0 | 2.4.58-150600.5.35.1 |
| SUSE:Linux Enterprise Module for Server Applications 15 SP6 | apache2-utils | 0 | 2.4.58-150600.5.35.1 |
| SUSE:Linux Enterprise Module for Server Applications 15 SP6 | apache2-worker | 0 | 2.4.58-150600.5.35.1 |
| SUSE:Linux Enterprise Server 12 SP5-LTSS | apache2 | 0 | 2.4.51-35.69.1 |
| SUSE:Linux Enterprise Server 12 SP5-LTSS | apache2-tls13 | 0 | 2.4.51-35.69.1 |
| SUSE:Linux Enterprise Server LTSS Extended Security 12 SP5 | apache2 | 0 | 2.4.51-35.69.1 |
| SUSE:Linux Enterprise Server LTSS Extended Security 12 SP5 | apache2-tls13 | 0 | 2.4.51-35.69.1 |
| Wolfi | apache2 | 0 | 0 |
| Wolfi | apache2-compat | 0 | 0 |
| Wolfi | apache2-config | 0 | 0 |
| Wolfi | apache2-config-compat | 0 | 0 |
| Wolfi | apache2-data | 0 | 0 |
| Wolfi | apache2-dev | 0 | 0 |
| Wolfi | apache2-doc | 0 | 0 |
| Wolfi | apache2-oci-entrypoint | 0 | 0 |
| Wolfi | apache2-utils | 0 | 0 |
| openSUSE:Leap 15.6 | apache2 | 0 | 2.4.58-150600.5.35.1 |
| openSUSE:Leap 15.6 | apache2-devel | 0 | 2.4.58-150600.5.35.1 |
| openSUSE:Leap 15.6 | apache2-event | 0 | 2.4.58-150600.5.35.1 |
| openSUSE:Leap 15.6 | apache2-manual | 0 | 2.4.58-150600.5.35.1 |
| openSUSE:Leap 15.6 | apache2-prefork | 0 | 2.4.58-150600.5.35.1 |
| openSUSE:Leap 15.6 | apache2-utils | 0 | 2.4.58-150600.5.35.1 |
| openSUSE:Leap 15.6 | apache2-worker | 0 | 2.4.58-150600.5.35.1 |
| openSUSE:Tumbleweed | apache2 | 0 | 2.4.64-1.1 |
Related vulnerabilities
- CVE-2025-58098 Apache HTTP Server 2.4.65 and earlier with Server Side Includes (SSI) enabled and… Also affects httpd
- CVE-2025-65082 Improper Neutralization of Escape, Meta, or Control Sequences vulnerability in Apache… Also affects httpd
- CVE-2025-66200 mod_userdir+suexec bypass via AllowOverride FileInfo vulnerability in Apache HTTP Server. Also affects httpd
- CVE-2025-49812 In some mod_ssl configurations on Apache HTTP Server versions through to 2.4.63, an HTTP… Also affects httpd
- CVE-2024-47252 Insufficient escaping of user-supplied data in mod_ssl in Apache HTTP Server 2.4.63 and… Also affects httpd
- CVE-2025-55753 An integer overflow in the case of failed ACME certificate renewal leads, after a number… Also affects httpd
- CVE-2025-49630 In certain proxy configurations, a denial of service attack against Apache HTTP Server… Also affects httpd
- CVE-2023-44487 The HTTP/2 protocol allows a denial of service (server resource consumption) because… Also affects httpd