summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthew Vernon <matthew@debian.org>2014-02-09 16:10:05 +0000
committerColin Watson <cjwatson@debian.org>2015-08-19 17:11:48 +0100
commitc3a4906692ddd85d8530d2fdb74822ae793f18db (patch)
tree2b5f3ff1f5907b79f029dd91ea4bbbb95f984b3c
parentf948cb2d089ebf70b70db3d483d09ad97a0cf371 (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 0c9fc6c36..988f4efe6 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 9ff9e8ba6..96e75c6d7 100644
--- a/sshd.c
+++ b/sshd.c
@@ -442,7 +442,7 @@ sshd_exchange_identification(int sock_in, int sock_out)
442 } 442 }
443 443
444 xasprintf(&server_version_string, "SSH-%d.%d-%.100s%s%s%s", 444 xasprintf(&server_version_string, "SSH-%d.%d-%.100s%s%s%s",
445 major, minor, SSH_VERSION, 445 major, minor, SSH_RELEASE,
446 *options.version_addendum == '\0' ? "" : " ", 446 *options.version_addendum == '\0' ? "" : " ",
447 options.version_addendum, newline); 447 options.version_addendum, newline);
448 448
diff --git a/version.h b/version.h
index b58fbe1eb..bff2b3bbb 100644
--- a/version.h
+++ b/version.h
@@ -3,4 +3,9 @@
3#define SSH_VERSION "OpenSSH_6.9" 3#define SSH_VERSION "OpenSSH_6.9"
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