Public bug reported:

Title:
nginx workers segfault after upgrade to 1.24.0-2ubuntu7.10 when headers-more 
module is loaded

1) Ubuntu release

No LSB modules are available.
Description:    Ubuntu 24.04.4 LTS
Release:        24.04

2) Package versions

nginx:
  Installed: 1.24.0-2ubuntu7.10
  Candidate: 1.24.0-2ubuntu7.10
  Version table:
 *** 1.24.0-2ubuntu7.10 500
        500 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 Packages
        500 http://security.ubuntu.com/ubuntu noble-security/main amd64 Packages
        100 /var/lib/dpkg/status
     1.24.0-2ubuntu7 500
        500 http://archive.ubuntu.com/ubuntu noble/main amd64 Packages
nginx-common:
  Installed: 1.24.0-2ubuntu7.10
  Candidate: 1.24.0-2ubuntu7.10
  Version table:
 *** 1.24.0-2ubuntu7.10 500
        500 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 Packages
        500 http://security.ubuntu.com/ubuntu noble-security/main amd64 Packages
        100 /var/lib/dpkg/status
     1.24.0-2ubuntu7 500
        500 http://archive.ubuntu.com/ubuntu noble/main amd64 Packages
nginx-extras:
  Installed: 1.24.0-2ubuntu7.10
  Candidate: 1.24.0-2ubuntu7.10
  Version table:
 *** 1.24.0-2ubuntu7.10 500
        500 http://archive.ubuntu.com/ubuntu noble-updates/universe amd64 
Packages
        500 http://security.ubuntu.com/ubuntu noble-security/universe amd64 
Packages
        100 /var/lib/dpkg/status
     1.24.0-2ubuntu7 500
        500 http://archive.ubuntu.com/ubuntu noble/universe amd64 Packages
libnginx-mod-http-headers-more-filter:
  Installed: 1:0.37-2build1
  Candidate: 1:0.37-2build1
  Version table:
 *** 1:0.37-2build1 500
        500 http://archive.ubuntu.com/ubuntu noble/universe amd64 Packages
        100 /var/lib/dpkg/status

Currently installed relevant packages:

nginx                                  1.24.0-2ubuntu7.10
nginx-common                           1.24.0-2ubuntu7.10
nginx-extras                           1.24.0-2ubuntu7.10
libnginx-mod-http-headers-more-filter  1:0.37-2build1

The nginx packages were upgraded automatically from 1.24.0-2ubuntu7.8 to
1.24.0-2ubuntu7.9 and later to 1.24.0-2ubuntu7.10.

The headers-more package did not appear in the apt history upgrade
entries at the same time.

3) What I expected to happen

nginx should continue to run normally after the Ubuntu package upgrade.

The Ubuntu-packaged nginx/nginx-extras should not segfault when the
Ubuntu-packaged headers-more dynamic module is loaded and used with
simple more_set_headers directives.

4) What happened instead

Shortly after the automatic package upgrade, nginx workers started
segfaulting repeatedly.

The system was running Ubuntu-packaged nginx and nginx-extras.

The headers-more module was loaded through:

load_module modules/ngx_http_headers_more_filter_module.so;

The only active headers-more directives found in the configuration were:

more_set_headers "Server: origin";
more_set_headers "Access-Control-Allow-Origin: *";

Example kernel log entries:

Jun 09 06:03:02 media kernel: nginx[2794682]: segfault at a0d3b297d20 ip 
00005d2906aee623 sp 00007ffdb7882a48 error 4 in nginx[5d2906ae9000+d3000] 
likely on CPU 0 (core 0, socket 0)
Jun 09 06:03:06 media kernel: nginx[2794803]: segfault at 0 ip 0000640db8e17623 
sp 00007ffcd326cc28 error 4 in nginx[640db8e12000+d3000] likely on CPU 0 (core 
0, socket 0)
Jun 09 06:03:08 media kernel: nginx[2794885]: segfault at 0 ip 0000640db8e17623 
sp 00007ffcd326cc68 error 4 in nginx[640db8e12000+d3000] likely on CPU 0 (core 
0, socket 0)
Jun 09 06:04:02 media kernel: nginx[2800198]: segfault at a0d3b297d20 ip 
000060ccb40ff623 sp 00007ffc543eedc8 error 4 in nginx[60ccb40fa000+d3000] 
likely on CPU 0 (core 0, socket 0)

A previous kernel log entry on another affected host explicitly
referenced the dynamic module:

nginx[764425]: segfault at 5a8c734a6ebb ip 000071da65a6597c sp
00007ffdd54beed8 error 7 in
ngx_http_headers_more_filter_module.so[71da65a65000+3000]

Workaround:

Removing the headers-more directives and unloading the dynamic module
stopped the crashes.

The CORS header was replaced with native nginx configuration:

add_header Access-Control-Allow-Origin "*" always;

The Server header rewrite was dropped and server_tokens off is used
instead.

Impact:

This can cause nginx service instability or outage after unattended
upgrades on systems using nginx-extras together with libnginx-mod-http-
headers-more-filter.

This appears to be a regression/stability issue. I have not confirmed
whether it is externally triggerable by a specific request.

ProblemType: Bug
DistroRelease: Ubuntu 24.04
Package: libnginx-mod-http-headers-more-filter 1:0.37-2build1
ProcVersionSignature: Ubuntu 6.8.0-106.106-generic 6.8.12
Uname: Linux 6.8.0-106-generic x86_64
ApportVersion: 2.28.1-0ubuntu3.8
Architecture: amd64
CasperMD5CheckResult: unknown
CloudArchitecture: x86_64
CloudID: nocloud
CloudName: unknown
CloudPlatform: nocloud
CloudSubPlatform: seed-dir (/var/lib/cloud/seed/nocloud-net)
Date: Tue Jun  9 07:12:50 2026
ProcEnviron:
 LANG=en_US.UTF-8
 PATH=(custom, no user)
 SHELL=/bin/bash
 TERM=xterm-256color
RebootRequiredPkgs: Error: path contained symlinks.
SourcePackage: libnginx-mod-http-headers-more-filter
UpgradeStatus: Upgraded to noble on 2025-03-27 (439 days ago)

** Affects: libnginx-mod-http-headers-more-filter (Ubuntu)
     Importance: Undecided
         Status: New


** Tags: amd64 apport-bug noble

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2155999

Title:
  nginx workers segfault after automatic upgrade from 1.24.0-2ubuntu7.8
  -> .9 -> .10.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/libnginx-mod-http-headers-more-filter/+bug/2155999/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to