diff options
author | Steve Sakoman <steve@sakoman.com> | 2022-11-19 03:58:41 -1000 |
---|---|---|
committer | Steve Sakoman <steve@sakoman.com> | 2022-11-19 03:59:47 -1000 |
commit | 231c073f577cd4aa1899c9adb34003a06466b054 (patch) | |
tree | d39831cc4a6e9bcc694f51d6d41dae22e70cb0a5 | |
parent | 9f78a2b3fd16c8aee398ad95a0fdbb412ac031fd (diff) | |
download | openembedded-core-231c073f577cd4aa1899c9adb34003a06466b054.tar.gz |
Revert "sudo: backport fix for CVE-2022-43995"
Prepare for version bump
This reverts commit a41a5f310246dcd9dbdb4537d59bc0579c3b1052.
-rw-r--r-- | meta/recipes-extended/sudo/files/CVE-2022-43995.patch | 54 | ||||
-rw-r--r-- | meta/recipes-extended/sudo/sudo_1.9.11p3.bb | 1 |
2 files changed, 0 insertions, 55 deletions
diff --git a/meta/recipes-extended/sudo/files/CVE-2022-43995.patch b/meta/recipes-extended/sudo/files/CVE-2022-43995.patch deleted file mode 100644 index 64dca8c9c6..0000000000 --- a/meta/recipes-extended/sudo/files/CVE-2022-43995.patch +++ /dev/null @@ -1,54 +0,0 @@ -CVE: CVE-2022-43995 -Upstream-Status: Backport -Signed-off-by: Ross Burton <ross.burton@arm.com> - -From bd209b9f16fcd1270c13db27ae3329c677d48050 Mon Sep 17 00:00:00 2001 -From: "Todd C. Miller" <Todd.Miller@sudo.ws> -Date: Fri, 28 Oct 2022 07:29:55 -0600 -Subject: [PATCH] Fix CVE-2022-43995, potential heap overflow for passwords < 8 - characters. Starting with sudo 1.8.0 the plaintext password buffer is - dynamically sized so it is not safe to assume that it is at least 9 bytes in - size. Found by Hugo Lefeuvre (University of Manchester) with ConfFuzz. - ---- - plugins/sudoers/auth/passwd.c | 11 +++++------ - 1 file changed, 5 insertions(+), 6 deletions(-) - -diff --git a/plugins/sudoers/auth/passwd.c b/plugins/sudoers/auth/passwd.c -index b2046eca2..0416861e9 100644 ---- a/plugins/sudoers/auth/passwd.c -+++ b/plugins/sudoers/auth/passwd.c -@@ -63,7 +63,7 @@ sudo_passwd_init(struct passwd *pw, sudo_auth *auth) - int - sudo_passwd_verify(struct passwd *pw, char *pass, sudo_auth *auth, struct sudo_conv_callback *callback) - { -- char sav, *epass; -+ char des_pass[9], *epass; - char *pw_epasswd = auth->data; - size_t pw_len; - int matched = 0; -@@ -75,12 +75,12 @@ sudo_passwd_verify(struct passwd *pw, char *pass, sudo_auth *auth, struct sudo_c - - /* - * Truncate to 8 chars if standard DES since not all crypt()'s do this. -- * If this turns out not to be safe we will have to use OS #ifdef's (sigh). - */ -- sav = pass[8]; - pw_len = strlen(pw_epasswd); -- if (pw_len == DESLEN || HAS_AGEINFO(pw_epasswd, pw_len)) -- pass[8] = '\0'; -+ if (pw_len == DESLEN || HAS_AGEINFO(pw_epasswd, pw_len)) { -+ strlcpy(des_pass, pass, sizeof(des_pass)); -+ pass = des_pass; -+ } - - /* - * Normal UN*X password check. -@@ -88,7 +88,6 @@ sudo_passwd_verify(struct passwd *pw, char *pass, sudo_auth *auth, struct sudo_c - * only compare the first DESLEN characters in that case. - */ - epass = (char *) crypt(pass, pw_epasswd); -- pass[8] = sav; - if (epass != NULL) { - if (HAS_AGEINFO(pw_epasswd, pw_len) && strlen(epass) == DESLEN) - matched = !strncmp(pw_epasswd, epass, DESLEN); diff --git a/meta/recipes-extended/sudo/sudo_1.9.11p3.bb b/meta/recipes-extended/sudo/sudo_1.9.11p3.bb index fa9cf48196..ba610ee2e7 100644 --- a/meta/recipes-extended/sudo/sudo_1.9.11p3.bb +++ b/meta/recipes-extended/sudo/sudo_1.9.11p3.bb @@ -4,7 +4,6 @@ SRC_URI = "https://www.sudo.ws/dist/sudo-${PV}.tar.gz \ ${@bb.utils.contains('DISTRO_FEATURES', 'pam', '${PAM_SRC_URI}', '', d)} \ file://0001-sudo.conf.in-fix-conflict-with-multilib.patch \ file://0001-lib-util-mksigname.c-correctly-include-header-for-ou.patch \ - file://CVE-2022-43995.patch \ " PAM_SRC_URI = "file://sudo.pam" |