From ae0b64fb08800073bccfffa0e7ba12fa30dbf669 Mon Sep 17 00:00:00 2001 From: emaste Date: Wed, 16 Jan 2019 15:15:04 +0000 Subject: [PATCH] MFC r343043: scp: disallow empty or current directory Obtained from: OpenBSD scp.c 1.198 Security: CVE-2018-20685 Sponsored by: The FreeBSD Foundation --- crypto/openssh/scp.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/crypto/openssh/scp.c b/crypto/openssh/scp.c index b4db851980b..145cdedb15a 100644 --- a/crypto/openssh/scp.c +++ b/crypto/openssh/scp.c @@ -1047,7 +1047,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); } -- 2.45.0