Skip to content

DLPX-97124 Add algif_aead modprobe disable to delphix-platform for CVE-2026-31431 (Copy Fail)#559

Merged
david-mendez1 merged 1 commit into
releasefrom
dlpx/pr/david-mendez1/e2ab9148-1b0b-40ad-a91a-f3b168f60213
May 5, 2026
Merged

DLPX-97124 Add algif_aead modprobe disable to delphix-platform for CVE-2026-31431 (Copy Fail)#559
david-mendez1 merged 1 commit into
releasefrom
dlpx/pr/david-mendez1/e2ab9148-1b0b-40ad-a91a-f3b168f60213

Conversation

@david-mendez1

@david-mendez1 david-mendez1 commented May 5, 2026

Copy link
Copy Markdown
Contributor

Problem

CVE-2026-31431 ("Copy Fail") is a critical Linux kernel local privilege
escalation vulnerability (CVSS 7.8) that allows an unprivileged local
user to gain root by corrupting the page cache of setuid binaries via the
algif_aead module in the AF_ALG crypto API. It has known public exploits
and is listed in CISA's Known Exploited Vulnerabilities catalog.

Ubuntu released a mitigation via USN-8226-1, which updates the kmod
package to version 31+20240202-2ubuntu7.2. That version's postinst
script creates /etc/modprobe.d/disable-algif_aead.conf, blocking the
module from loading. However, engines built from the release branch use an
older apt mirror snapshot (kmod 31+20240202-2ubuntu7.1) that predates
USN-8226-1, so the mitigation file is absent and those engines remain
vulnerable.

No upstream kernel fix is available yet for Ubuntu 24.04 LTS — all
Delphix kernel repos (linux-kernel-aws, linux-kernel-generic,
linux-kernel-azure, linux-kernel-oracle, linux-kernel-gcp) still
carry the vulnerable crypto/algif_aead.c.

Solution

Add /etc/modprobe.d/disable-algif_aead.conf directly to
delphix-platform under files/common/etc/modprobe.d/, containing:

install algif_aead /bin/false

This ensures the algif_aead module is blocked at image build time,
independent of which kmod package version is present in the apt mirror
snapshot used during the build. The fix applies to all platforms (the file
lives under files/common/) and aligns with the mitigation content
already deployed on develop-branch engines via kmod 31+20240202-2ubuntu7.2.

The comment in the file notes that this should be re-evaluated once an
updated kernel containing the upstream fix
(git.kernel.org/stable/c/a664bf3d603d) is deployed.

Testing Done

Manually created /etc/modprobe.d/disable-algif_aead.conf on a release-branch
engine (dm-release.dlpxdc.co, kmod 31+20240202-2ubuntu7.1) and confirmed
the module is blocked:

root@ip-10-110-250-64:/etc/modprobe.d# sudo modprobe algif_aead
modprobe: ERROR: ../libkmod/libkmod-module.c:1084 command_do() Error running install command '/bin/false' for module algif_aead: retcode 1
modprobe: ERROR: could not insert 'algif_aead': Invalid argument

The install algif_aead /bin/false rule is correctly intercepting the load
request and returning a non-zero exit code, preventing the module from being
inserted.

@david-mendez1 david-mendez1 force-pushed the dlpx/pr/david-mendez1/e2ab9148-1b0b-40ad-a91a-f3b168f60213 branch from 4ebc336 to 613a4b3 Compare May 5, 2026 21:15
@david-mendez1 david-mendez1 marked this pull request as ready for review May 5, 2026 21:18

@prakashsurya prakashsurya left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

code changes looks reasonable to me, but we should definitely verify the functionality works as intended.. I don't recall the specific details w.r.t. this file, and how it should be formatted, etc..

can you perhaps copy this file to an existing release VM, and verify it works like we want before landing?

@david-mendez1

Copy link
Copy Markdown
Contributor Author

code changes looks reasonable to me, but we should definitely verify the functionality works as intended.. I don't recall the specific details w.r.t. this file, and how it should be formatted, etc..

can you perhaps copy this file to an existing release VM, and verify it works like we want before landing?

Copied the file and tested. Updated the Testing Done section.

@david-mendez1 david-mendez1 requested review from ShibasishDelphix, lyriclake and nealquigley and removed request for lyriclake May 5, 2026 21:39
@david-mendez1 david-mendez1 merged commit 6e57d1f into release May 5, 2026
16 of 17 checks passed
@david-mendez1 david-mendez1 deleted the dlpx/pr/david-mendez1/e2ab9148-1b0b-40ad-a91a-f3b168f60213 branch May 5, 2026 22:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

4 participants