summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthew Vernon <matthew@debian.org>2014-02-09 16:10:05 +0000
committerColin Watson <cjwatson@debian.org>2018-08-24 17:49:07 +0100
commit97c5d99b8d1957d5a29ca34157a9bfe2ed5c7003 (patch)
treeccb3d48b9661cf17ee3f90761415470a59779412
parent0e0121b6dc0ffc2ec6a171328fea530378df2b3b (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 ab5966066..d3656e47a 100644
--- a/sshconnect.c
+++ b/sshconnect.c
@@ -609,7 +609,7 @@ send_client_banner(int connection_out, int minor1)
609{ 609{
610 /* Send our own protocol version identification. */ 610 /* Send our own protocol version identification. */
611 xasprintf(&client_version_string, "SSH-%d.%d-%.100s\r\n", 611 xasprintf(&client_version_string, "SSH-%d.%d-%.100s\r\n",
612 PROTOCOL_MAJOR_2, PROTOCOL_MINOR_2, SSH_VERSION); 612 PROTOCOL_MAJOR_2, PROTOCOL_MINOR_2, SSH_RELEASE);
613 if (atomicio(vwrite, connection_out, client_version_string, 613 if (atomicio(vwrite, connection_out, client_version_string,
614 strlen(client_version_string)) != strlen(client_version_string)) 614 strlen(client_version_string)) != strlen(client_version_string))
615 fatal("write: %.100s", strerror(errno)); 615 fatal("write: %.100s", strerror(errno));
diff --git a/sshd.c b/sshd.c
index 92d15c82d..ffd3dad6a 100644
--- a/sshd.c
+++ b/sshd.c
@@ -384,7 +384,7 @@ sshd_exchange_identification(struct ssh *ssh, int sock_in, int sock_out)
384 char remote_version[256]; /* Must be at least as big as buf. */ 384 char remote_version[256]; /* Must be at least as big as buf. */
385 385
386 xasprintf(&server_version_string, "SSH-%d.%d-%.100s%s%s\r\n", 386 xasprintf(&server_version_string, "SSH-%d.%d-%.100s%s%s\r\n",
387 PROTOCOL_MAJOR_2, PROTOCOL_MINOR_2, SSH_VERSION, 387 PROTOCOL_MAJOR_2, PROTOCOL_MINOR_2, SSH_RELEASE,
388 *options.version_addendum == '\0' ? "" : " ", 388 *options.version_addendum == '\0' ? "" : " ",
389 options.version_addendum); 389 options.version_addendum);
390 390
diff --git a/version.h b/version.h
index f1bbf00f3..e7df751e1 100644
--- a/version.h
+++ b/version.h
@@ -3,4 +3,9 @@
3#define SSH_VERSION "OpenSSH_7.8" 3#define SSH_VERSION "OpenSSH_7.8"
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