summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthew Vernon <matthew@debian.org>2014-02-09 16:10:05 +0000
committerColin Watson <cjwatson@debian.org>2017-10-04 13:54:48 +0100
commit326b09bce8058629980cc92f289fd7912269eb98 (patch)
tree6608b92fbb5cb51006bb7b9d7724d76332b5d6cf
parent19be4218cdb262f7b584b0104ee430de0e24eeb8 (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: 2017-10-04 Patch-Name: package-versioning.patch
-rw-r--r--sshconnect.c2
-rw-r--r--sshd.c2
-rw-r--r--version.h7
3 files changed, 8 insertions, 3 deletions
diff --git a/sshconnect.c b/sshconnect.c
index 7ce2716cf..3280b310d 100644
--- a/sshconnect.c
+++ b/sshconnect.c
@@ -517,7 +517,7 @@ send_client_banner(int connection_out, int minor1)
517{ 517{
518 /* Send our own protocol version identification. */ 518 /* Send our own protocol version identification. */
519 xasprintf(&client_version_string, "SSH-%d.%d-%.100s\r\n", 519 xasprintf(&client_version_string, "SSH-%d.%d-%.100s\r\n",
520 PROTOCOL_MAJOR_2, PROTOCOL_MINOR_2, SSH_VERSION); 520 PROTOCOL_MAJOR_2, PROTOCOL_MINOR_2, SSH_RELEASE);
521 if (atomicio(vwrite, connection_out, client_version_string, 521 if (atomicio(vwrite, connection_out, client_version_string,
522 strlen(client_version_string)) != strlen(client_version_string)) 522 strlen(client_version_string)) != strlen(client_version_string))
523 fatal("write: %.100s", strerror(errno)); 523 fatal("write: %.100s", strerror(errno));
diff --git a/sshd.c b/sshd.c
index af1ec3376..eccf81bbe 100644
--- a/sshd.c
+++ b/sshd.c
@@ -378,7 +378,7 @@ sshd_exchange_identification(struct ssh *ssh, int sock_in, int sock_out)
378 char remote_version[256]; /* Must be at least as big as buf. */ 378 char remote_version[256]; /* Must be at least as big as buf. */
379 379
380 xasprintf(&server_version_string, "SSH-%d.%d-%.100s%s%s\r\n", 380 xasprintf(&server_version_string, "SSH-%d.%d-%.100s%s%s\r\n",
381 PROTOCOL_MAJOR_2, PROTOCOL_MINOR_2, SSH_VERSION, 381 PROTOCOL_MAJOR_2, PROTOCOL_MINOR_2, SSH_RELEASE,
382 *options.version_addendum == '\0' ? "" : " ", 382 *options.version_addendum == '\0' ? "" : " ",
383 options.version_addendum); 383 options.version_addendum);
384 384
diff --git a/version.h b/version.h
index e093f623b..b7c5ad2a0 100644
--- a/version.h
+++ b/version.h
@@ -3,4 +3,9 @@
3#define SSH_VERSION "OpenSSH_7.6" 3#define SSH_VERSION "OpenSSH_7.6"
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