Compare commits

...

11 Commits

Author SHA1 Message Date
Vladimír Čunát
c89d27cd4f [Backport staging-26.05] krb5: 1.22.1 -> 1.22.2 (#528358) 2026-06-05 18:24:00 +00:00
Vladimír Čunát
da38d3003c [Backport staging-26.05] libpng: 1.6.56 -> 1.6.58 (#528367) 2026-06-05 18:21:12 +00:00
Vladimír Čunát
3fbfc3a7d4 [Backport staging-26.05] libxml2: 2.15.2 -> 2.15.3 (#528361) 2026-06-05 18:20:54 +00:00
Vladimír Čunát
9b87df5e52 [Backport staging-26.05] libde265: 1.0.19 -> 1.1.0 (#528156) 2026-06-05 12:49:32 +00:00
Vladimír Čunát
034f2a4018 [Backport staging-26.05] ghostscript: 10.07.0 -> 10.07.1 (#527846) 2026-06-05 12:47:47 +00:00
Vladimír Čunát
2d355d1aba libpng: 1.6.56 -> 1.6.58
Fixes: CVE-2026-34757 and CVE-2026-40930 (#528286)
(cherry picked from commit 316db7c96c)
2026-06-05 11:40:13 +00:00
Grimmauld
2c2c8a3587 libxml2: 2.15.2 -> 2.15.3
Changelog: https://gitlab.gnome.org/GNOME/libxml2/-/blob/v2.15.3/NEWS

Fixes CVE-2026-6732
Other security issues fixed here seem to not have CVEs assigned (yet)

(cherry picked from commit efef7d2661)
2026-06-05 11:36:26 +00:00
Robert Schütz
3cff9ef0a7 krb5: patch CVE-2026-40355 and CVE-2026-40356
(cherry picked from commit a42608a7a8)
2026-06-05 11:34:26 +00:00
Robert Schütz
b3a92ec281 krb5: 1.22.1 -> 1.22.2
Changelog: https://web.mit.edu/Kerberos/krb5-1.22/
(cherry picked from commit 5a91325042)
2026-06-05 11:34:26 +00:00
Robert Schütz
ca8d5775de libde265: 1.0.19 -> 1.1.0
Diff: https://github.com/strukturag/libde265/compare/v1.0.19...v1.1.0

Changelog: https://github.com/strukturag/libde265/releases/tag/v1.1.0
(cherry picked from commit eb64ffdbce)
2026-06-04 22:45:27 +00:00
Robert Schütz
cab7cf2acd ghostscript: 10.07.0 -> 10.07.1
Changelog: https://ghostscript.readthedocs.io/en/gs10.07.1/News.html
(cherry picked from commit 6f5cb5357c)
2026-06-04 04:49:42 +00:00
6 changed files with 81 additions and 13 deletions

View File

@@ -67,13 +67,13 @@ let
in
stdenv.mkDerivation (finalAttrs: {
pname = "ghostscript${lib.optionalString x11Support "-with-X"}";
version = "10.07.0";
version = "10.07.1";
src = fetchurl {
url = "https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs${
lib.replaceStrings [ "." ] [ "" ] finalAttrs.version
}/ghostscript-${finalAttrs.version}.tar.xz";
hash = "sha256-3azk4XIflnpVA5uv9WSEAiXguqHU9UMiR8oczRRzt8E=";
hash = "sha256-HNt2bejbjx5YnIF/CcWFXqX2XfyFQORlpprBTBhBYCU=";
};
patches = [
@@ -233,6 +233,7 @@ stdenv.mkDerivation (finalAttrs: {
meta = {
homepage = "https://www.ghostscript.com/";
changelog = "https://ghostscript.readthedocs.io/en/gs${finalAttrs.version}/News.html";
description = "PostScript interpreter (mainline version)";
longDescription = ''
Ghostscript is the name of a set of tools that provides (i) an

View File

@@ -0,0 +1,61 @@
From acea6182e46fff3d1d64a3172cdff307b07ca441 Mon Sep 17 00:00:00 2001
From: Greg Hudson <ghudson@mit.edu>
Date: Wed, 8 Apr 2026 17:57:59 -0400
Subject: [PATCH] Fix two NegoEx parsing vulnerabilities
In parse_nego_message(), check the result of the second call to
vector_base() before dereferencing it. In parse_message(), check for
a short header_len to prevent an integer underflow when calculating
the remaining message length.
Reported by Cem Onat Karagun.
CVE-2026-40355:
In MIT krb5 release 1.18 and later, if an application calls
gss_accept_sec_context() on a system with a NegoEx mechanism
registered in /etc/gss/mech, an unauthenticated remote attacker can
trigger a null pointer dereference, causing the process to terminate.
CVE-2026-40356:
In MIT krb5 release 1.18 and later, if an application calls
gss_accept_sec_context() on a system with a NegoEx mechanism
registered in /etc/gss/mech, an unauthenticated remote attacker can
trigger a read overrun of up to 52 bytes, possibly causing the process
to terminate. Exfiltration of the bytes read does not appear
possible.
(cherry picked from commit 2e75f0d9362fb979f5fc92829431a590a130929f)
ticket: 9205
version_fixed: 1.22.3
---
lib/gssapi/spnego/negoex_util.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/lib/gssapi/spnego/negoex_util.c b/src/lib/gssapi/spnego/negoex_util.c
index edc5462e844..a65238e5730 100644
--- a/lib/gssapi/spnego/negoex_util.c
+++ b/lib/gssapi/spnego/negoex_util.c
@@ -253,6 +253,10 @@ parse_nego_message(OM_uint32 *minor, struct k5input *in,
offset = k5_input_get_uint32_le(in);
count = k5_input_get_uint16_le(in);
p = vector_base(offset, count, EXTENSION_LENGTH, msg_base, msg_len);
+ if (p == NULL) {
+ *minor = ERR_NEGOEX_INVALID_MESSAGE_SIZE;
+ return GSS_S_DEFECTIVE_TOKEN;
+ }
for (i = 0; i < count; i++) {
extension_type = load_32_le(p + i * EXTENSION_LENGTH);
if (extension_type & EXTENSION_FLAG_CRITICAL) {
@@ -391,7 +395,8 @@ parse_message(OM_uint32 *minor, spnego_gss_ctx_id_t ctx, struct k5input *in,
msg_len = k5_input_get_uint32_le(in);
conv_id = k5_input_get_bytes(in, GUID_LENGTH);
- if (in->status || msg_len > token_remaining || header_len > msg_len) {
+ if (in->status || msg_len > token_remaining ||
+ header_len < (size_t)(in->ptr - msg_base) || header_len > msg_len) {
*minor = ERR_NEGOEX_INVALID_MESSAGE_SIZE;
return GSS_S_DEFECTIVE_TOKEN;
}

View File

@@ -34,16 +34,20 @@
stdenv.mkDerivation (finalAttrs: {
pname = "krb5";
version = "1.22.1";
version = "1.22.2";
__structuredAttrs = true;
src = fetchurl {
url = "https://kerberos.org/dist/krb5/${lib.versions.majorMinor finalAttrs.version}/krb5-${finalAttrs.version}.tar.gz";
hash = "sha256-GogyuMrZI+u/E5T2fi789B46SfRgKFpm41reyPoAU68=";
hash = "sha256-MkP/vI6k1Kwi3cfdKh3FTFeHTEBki2D/lwCXY1VOrxM=";
};
patches = lib.optionals stdenv.hostPlatform.isFreeBSD [
patches = [
# https://github.com/krb5/krb5/pull/1506
./CVE-2026-40355-and-CVE-2026-40356.patch
]
++ lib.optionals stdenv.hostPlatform.isFreeBSD [
(fetchpatch {
name = "fix-missing-ENODATA.patch";
url = "https://cgit.freebsd.org/ports/plain/security/krb5-122/files/patch-lib_krad_packet.c?id=0501f716c4aff7880fde56e42d641ef504593b7d";
@@ -170,6 +174,7 @@ stdenv.mkDerivation (finalAttrs: {
];
meta = {
changelog = "https://web.mit.edu/Kerberos/krb5-${lib.versions.majorMinor finalAttrs.version}/";
description = "MIT Kerberos 5";
homepage = "http://web.mit.edu/kerberos/";
license = lib.licenses.mit;

View File

@@ -15,14 +15,14 @@
}:
stdenv.mkDerivation (finalAttrs: {
version = "1.0.19";
version = "1.1.0";
pname = "libde265";
src = fetchFromGitHub {
owner = "strukturag";
repo = "libde265";
tag = "v${finalAttrs.version}";
hash = "sha256-77OIclR2TwOigo/k5ps9S0TrDNvEjf290PqZyqBcydo=";
hash = "sha256-QhBi23HttVdIJCueSeKj3ZKwqX1iFcuAX7GmnMRCyN8=";
};
nativeBuildInputs = [
@@ -43,6 +43,7 @@ stdenv.mkDerivation (finalAttrs: {
meta = {
homepage = "https://github.com/strukturag/libde265";
changelog = "https://github.com/strukturag/libde265/releases/tag/${finalAttrs.src.tag}";
description = "Open h.265 video codec implementation";
mainProgram = "dec265";
license = lib.licenses.lgpl3;

View File

@@ -11,10 +11,10 @@
assert zlib != null;
let
patchVersion = "1.6.56";
patchVersion = "1.6.58";
patch_src = fetchurl {
url = "mirror://sourceforge/libpng-apng/libpng-${patchVersion}-apng.patch.gz";
hash = "sha256-nOMtSidjoqxfJYcmui9J6QETJ8HujDCGKjLQ8wiJ++g=";
hash = "sha256-7ufeoi7VAoaAF5cchsY8TtHmCF3guuv9zD0zIvAPPrA=";
};
whenPatched = lib.optionalString apngSupport;
@@ -24,11 +24,11 @@ let
in
stdenv'.mkDerivation (finalAttrs: {
pname = "libpng" + whenPatched "-apng";
version = "1.6.56";
version = "1.6.58";
src = fetchurl {
url = "mirror://sourceforge/libpng/libpng-${finalAttrs.version}.tar.xz";
hash = "sha256-99i/FgG3gE9YOiVKs0OmVJymzyfSVcMCxHry2dNqbxg=";
hash = "sha256-KOtAP1Hw90BSSRMs7P6C6lwO+X8bMsWmWCiBSuDTR3U=";
};
postPatch =
whenPatched "gunzip < ${patch_src} | patch -Np1"

View File

@@ -46,13 +46,13 @@ let
};
};
libxml2 = callPackage ./common.nix {
version = "2.15.2";
version = "2.15.3";
src = fetchFromGitLab {
domain = "gitlab.gnome.org";
owner = "GNOME";
repo = "libxml2";
tag = "v${packages.libxml2.version}";
hash = "sha256-k5dZ75D/BOouYAjrof9Jm2lY29XZhOqS1kudDGmGY9Q=";
hash = "sha256-fDntZDyITs223by8n7ueOXiO7yyzshtANoWbY0+yeqo=";
};
extraMeta = {
maintainers = with lib.maintainers; [