mirror of
https://git.yoctoproject.org/poky
synced 2026-04-21 03:32:12 +02:00
dropbear: Fix CVE-2020-36254
Dropbear shares a lot of code with other SSH implementations, so this is
a port of CVE-2018-20685 to dropbear by the dropbear developers.
Reference:
8f8a3dff70
CVE: CVE-2020-36254
Upstream-Status: Backport
(From OE-Core rev: 10712b736d7cbde897c5aab30e969c04740dce34)
Signed-off-by: Ernst Sjöstrand <ernst.sjostrand@verisure.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
1e13a3f914
commit
11880c6987
@@ -22,7 +22,9 @@ SRC_URI = "http://matt.ucc.asn.au/dropbear/releases/dropbear-${PV}.tar.bz2 \
|
||||
file://dropbear.socket \
|
||||
file://dropbear.default \
|
||||
${@bb.utils.contains('DISTRO_FEATURES', 'pam', '${PAM_SRC_URI}', '', d)} \
|
||||
${@bb.utils.contains('PACKAGECONFIG', 'disable-weak-ciphers', 'file://dropbear-disable-weak-ciphers.patch', '', d)} "
|
||||
${@bb.utils.contains('PACKAGECONFIG', 'disable-weak-ciphers', 'file://dropbear-disable-weak-ciphers.patch', '', d)} \
|
||||
file://CVE-2020-36254.patch \
|
||||
"
|
||||
|
||||
PAM_SRC_URI = "file://0005-dropbear-enable-pam.patch \
|
||||
file://0006-dropbear-configuration-file.patch \
|
||||
|
||||
29
meta/recipes-core/dropbear/dropbear/CVE-2020-36254.patch
Normal file
29
meta/recipes-core/dropbear/dropbear/CVE-2020-36254.patch
Normal file
@@ -0,0 +1,29 @@
|
||||
From c96c48d62aefc372f2105293ddf8cff2d116dc3a Mon Sep 17 00:00:00 2001
|
||||
From: Haelwenn Monnier <contact+github.com@hacktivis.me>
|
||||
Date: Mon, 25 May 2020 14:54:29 +0200
|
||||
Subject: [PATCH] scp.c: Port OpenSSH CVE-2018-20685 fix (#80)
|
||||
|
||||
Reference:
|
||||
https://github.com/mkj/dropbear/commit/8f8a3dff705fad774a10864a2e3dbcfa9779ceff
|
||||
|
||||
CVE: CVE-2020-36254
|
||||
Upstream-Status: Backport
|
||||
|
||||
---
|
||||
scp.c | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/scp.c b/scp.c
|
||||
index 742ae00..7b8e7d2 100644
|
||||
--- a/scp.c
|
||||
+++ b/scp.c
|
||||
@@ -935,7 +935,8 @@ sink(int argc, char **argv)
|
||||
size = size * 10 + (*cp++ - '0');
|
||||
if (*cp++ != ' ')
|
||||
SCREWUP("size not delimited");
|
||||
- if ((strchr(cp, '/') != NULL) || (strcmp(cp, "..") == 0)) {
|
||||
+ if (*cp == '\0' || strchr(cp, '/') != NULL ||
|
||||
+ strcmp(cp, ".") == 0 || strcmp(cp, "..") == 0) {
|
||||
run_err("error: unexpected filename: %s", cp);
|
||||
exit(1);
|
||||
}
|
||||
Reference in New Issue
Block a user