summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthew Vernon <matthew@debian.org>2014-02-09 16:10:05 +0000
committerColin Watson <cjwatson@debian.org>2015-12-03 17:05:06 +0000
commit9ec138d98fbf662ccac8458fe96a9783eb43a0d3 (patch)
tree51a30b06452e992f16de1449af4a541751fb1b4b
parentf4b3ccb275ef86eba749ab1eb61f8d17623a20d9 (diff)
Include the Debian version in our identification
This makes it easier to audit networks for versions patched against security vulnerabilities. It has little detrimental effect, as attackers will generally just try attacks rather than bothering to scan for vulnerable-looking version strings. (However, see debian-banner.patch.) Forwarded: not-needed Last-Update: 2013-09-14 Patch-Name: package-versioning.patch
-rw-r--r--sshconnect.c4
-rw-r--r--sshd.c2
-rw-r--r--version.h7
3 files changed, 9 insertions, 4 deletions
diff --git a/sshconnect.c b/sshconnect.c
index bbde8afef..0ec1e54e9 100644
--- a/sshconnect.c
+++ b/sshconnect.c
@@ -524,10 +524,10 @@ send_client_banner(int connection_out, int minor1)
524 /* Send our own protocol version identification. */ 524 /* Send our own protocol version identification. */
525 if (compat20) { 525 if (compat20) {
526 xasprintf(&client_version_string, "SSH-%d.%d-%.100s\r\n", 526 xasprintf(&client_version_string, "SSH-%d.%d-%.100s\r\n",
527 PROTOCOL_MAJOR_2, PROTOCOL_MINOR_2, SSH_VERSION); 527 PROTOCOL_MAJOR_2, PROTOCOL_MINOR_2, SSH_RELEASE);
528 } else { 528 } else {
529 xasprintf(&client_version_string, "SSH-%d.%d-%.100s\n", 529 xasprintf(&client_version_string, "SSH-%d.%d-%.100s\n",
530 PROTOCOL_MAJOR_1, minor1, SSH_VERSION); 530 PROTOCOL_MAJOR_1, minor1, SSH_RELEASE);
531 } 531 }
532 if (roaming_atomicio(vwrite, connection_out, client_version_string, 532 if (roaming_atomicio(vwrite, connection_out, client_version_string,
533 strlen(client_version_string)) != strlen(client_version_string)) 533 strlen(client_version_string)) != strlen(client_version_string))
diff --git a/sshd.c b/sshd.c
index 0537bc90d..0d4fb7f33 100644
--- a/sshd.c
+++ b/sshd.c
@@ -443,7 +443,7 @@ sshd_exchange_identification(int sock_in, int sock_out)
443 } 443 }
444 444
445 xasprintf(&server_version_string, "SSH-%d.%d-%.100s%s%s%s", 445 xasprintf(&server_version_string, "SSH-%d.%d-%.100s%s%s%s",
446 major, minor, SSH_VERSION, 446 major, minor, SSH_RELEASE,
447 *options.version_addendum == '\0' ? "" : " ", 447 *options.version_addendum == '\0' ? "" : " ",
448 options.version_addendum, newline); 448 options.version_addendum, newline);
449 449
diff --git a/version.h b/version.h
index d917ca1f6..5c22d9067 100644
--- a/version.h
+++ b/version.h
@@ -3,4 +3,9 @@
3#define SSH_VERSION "OpenSSH_7.1" 3#define SSH_VERSION "OpenSSH_7.1"
4 4
5#define SSH_PORTABLE "p1" 5#define SSH_PORTABLE "p1"
6#define SSH_RELEASE SSH_VERSION SSH_PORTABLE 6#define SSH_RELEASE_MINIMUM SSH_VERSION SSH_PORTABLE
7#ifdef SSH_EXTRAVERSION
8#define SSH_RELEASE SSH_RELEASE_MINIMUM " " SSH_EXTRAVERSION
9#else
10#define SSH_RELEASE SSH_RELEASE_MINIMUM
11#endif