s/%.100s/%s/ in SSH- banner construction as there's no reason to
authordjm <djm@openbsd.org>
Wed, 11 Oct 2023 04:46:29 +0000 (04:46 +0000)
committerdjm <djm@openbsd.org>
Wed, 11 Oct 2023 04:46:29 +0000 (04:46 +0000)
limit its size: the version string bring included is a compile time
constant going into an allocated banner string.

usr.bin/ssh/kex.c

index a414f96..f0178ef 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: kex.c,v 1.181 2023/08/28 03:28:43 djm Exp $ */
+/* $OpenBSD: kex.c,v 1.182 2023/10/11 04:46:29 djm Exp $ */
 /*
  * Copyright (c) 2000, 2001 Markus Friedl.  All rights reserved.
  *
@@ -1293,7 +1293,7 @@ kex_exchange_identification(struct ssh *ssh, int timeout_ms,
        sshbuf_reset(our_version);
        if (version_addendum != NULL && *version_addendum == '\0')
                version_addendum = NULL;
-       if ((r = sshbuf_putf(our_version, "SSH-%d.%d-%.100s%s%s\r\n",
+       if ((r = sshbuf_putf(our_version, "SSH-%d.%d-%s%s%s\r\n",
            PROTOCOL_MAJOR_2, PROTOCOL_MINOR_2, SSH_VERSION,
            version_addendum == NULL ? "" : " ",
            version_addendum == NULL ? "" : version_addendum)) != 0) {