Apache CVE-2026-119618: check if HTTP/2 is enabled and turn it off
A critical mod_http2 flaw in Apache 2.4.55 through 2.4.70, fixed in 2.4.71. How to check whether your server loads mod_http2, on a plain install, RunCloud and ServerPilot, and how to switch it off until you can patch.
Apache released 2.4.71 on November 11 to fix CVE-2026-119618, a critical flaw in mod_http2 that can lead to remote code execution. Versions 2.4.55 through 2.4.70 are affected. Details are on the Apache 2.4 vulnerabilities page (opens in a new tab).
A server is exposed only when all three are true:
- Apache is 2.4.55 through 2.4.70
mod_http2is loaded- a
Protocolsline offersh2orh2c
A server that only speaks HTTP/1.1 never reaches the vulnerable code. So if you can’t upgrade today, turning HTTP/2 off closes the hole.
Check the version
apachectl -vOne of my dev servers, on Ubuntu 24.04, reported Apache/2.4.58, inside the affected range.
Distributions backport fixes without bumping the upstream version, so on a distro package the version string alone doesn’t tell you whether you’re patched. Check your distribution’s security tracker for a fixed package. At the time of writing, Ubuntu had no fix out yet for 24.04 or 22.04.
Check if mod_http2 is loaded
The command depends on how Apache was installed:
# Plain Debian/Ubuntu installapache2ctl -M | grep http
# RunCloudapachectl -M | grep http
# ServerPilot/opt/sp/apache/bin/apachectl -M | grep httpIf http2_module (shared) shows up in the output, the module is loaded.
Turn it off on RunCloud
RunCloud keeps its Apache config in /etc/apache2-rc/. Find where the module is loaded and where Protocols is set:
grep -RnE 'http2_module|^\s*Protocols' /etc/apache2-rc/On my server:
/etc/apache2-rc/original/httpd.conf:140:#LoadModule http2_module modules/mod_http2.so/etc/apache2-rc/httpd.conf:89:LoadModule http2_module modules/mod_http2.soThe copy under original/ is already commented out. The live one is httpd.conf, line 89. Comment it out:
vi /etc/apache2-rc/httpd.conf#LoadModule http2_module modules/mod_http2.soTest the config, then reload:
apachectl configtestservice apache2-rc reloadservice apache2-rc statusapachectl -M | grep httpconfigtest must say Syntax OK before you reload. Afterwards http2_module should be gone from the module list.
A leftover Protocols h2 ... line can stay. Without the module nothing can speak h2, so Apache serves HTTP/1.1.
Turn it off on a plain Debian/Ubuntu install
a2dismod http2apache2ctl configtestsystemctl reload apache2apache2ctl -M | grep httpWhat you lose
Browsers fall back to HTTP/1.1, which is a bit slower on pages with many assets. If the site sits behind Cloudflare, visitors still get HTTP/2 or HTTP/3 from the edge, since Cloudflare talks to the origin over HTTP/1.1 by default anyway.
Once your distribution ships the fix, or you’re on 2.4.71, uncomment the line and reload.