diff --git a/package/openssh/0001-fix-logic-error-in-disableforwarding-option.patch b/package/openssh/0001-fix-logic-error-in-disableforwarding-option.patch new file mode 100644 index 0000000000..2c64ec1910 --- /dev/null +++ b/package/openssh/0001-fix-logic-error-in-disableforwarding-option.patch @@ -0,0 +1,49 @@ +From fc86875e6acb36401dfc1dfb6b628a9d1460f367 Mon Sep 17 00:00:00 2001 +From: "djm@openbsd.org" +Date: Wed, 9 Apr 2025 07:00:03 +0000 +Subject: [PATCH] upstream: Fix logic error in DisableForwarding option. + +This option was documented as disabling X11 and agent forwarding but it failed to do so. +Spotted by Tim Rice. + +OpenBSD-Commit-ID: fffc89195968f7eedd2fc57f0b1f1ef3193f5ed1 + +Upstream: https://github.com/openssh/openssh-portable/commit/fc86875e6acb36401dfc1dfb6b628a9d1460f367 + +Fixes the following CVE: + - CVE-2025-32728: In sshd in OpenSSH before 10.0, the DisableForwarding + directive does not adhere to the documentation stating + that it disables X11 and agent forwarding. + +[Titouan: + - Remove diff on OpenBSD comment at the top of the file that does not apply + cleanly on openssh 9.9 +] +Signed-off-by: Titouan Christophe +--- + session.c | 7 ++++--- + 1 file changed, 4 insertions(+), 3 deletions(-) + +diff --git a/session.c b/session.c +index 52a4a3446e6..6444c77f31c 100644 +--- a/session.c ++++ b/session.c +@@ -2171,7 +2171,8 @@ session_auth_agent_req(struct ssh *ssh, Session *s) + if ((r = sshpkt_get_end(ssh)) != 0) + sshpkt_fatal(ssh, r, "%s: parse packet", __func__); + if (!auth_opts->permit_agent_forwarding_flag || +- !options.allow_agent_forwarding) { ++ !options.allow_agent_forwarding || ++ options.disable_forwarding) { + debug_f("agent forwarding disabled"); + return 0; + } +@@ -2566,7 +2567,7 @@ session_setup_x11fwd(struct ssh *ssh, Session *s) + ssh_packet_send_debug(ssh, "X11 forwarding disabled by key options."); + return 0; + } +- if (!options.x11_forwarding) { ++ if (!options.x11_forwarding || options.disable_forwarding) { + debug("X11 forwarding disabled in server configuration file."); + return 0; + } diff --git a/package/openssh/openssh.mk b/package/openssh/openssh.mk index 115290ce13..b5e4645b50 100644 --- a/package/openssh/openssh.mk +++ b/package/openssh/openssh.mk @@ -13,6 +13,9 @@ OPENSSH_SITE = http://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable OPENSSH_LICENSE = BSD-3-Clause, BSD-2-Clause, Public Domain OPENSSH_LICENSE_FILES = LICENCE +# 0001-fix-logic-error-in-disableforwarding-option.patch +OPENSSH_IGNORE_CVES += CVE-2025-32728 + OPENSSH_CONF_ENV = \ LD="$(TARGET_CC)" \ LDFLAGS="$(TARGET_CFLAGS)" \