Skip to content

Commit 52bc5fd

Browse files
authored
Merge pull request #90 from rapier1/dev_minor
Resolve CVE aka regreSSHion bug.
2 parents 783d8b2 + ad1e018 commit 52bc5fd

File tree

3 files changed

+6
-4
lines changed

3 files changed

+6
-4
lines changed

clientloop.c

+3-2
Original file line numberDiff line numberDiff line change
@@ -616,8 +616,9 @@ obfuscate_keystroke_timing(struct ssh *ssh, struct timespec *timeout,
616616
if (timespeccmp(&now, &chaff_until, >=)) {
617617
/* Stop if there have been no keystrokes for a while */
618618
stop_reason = "chaff time expired";
619-
} else if (timespeccmp(&now, &next_interval, >=)) {
620-
/* Otherwise if we were due to send, then send chaff */
619+
} else if (timespeccmp(&now, &next_interval, >=) &&
620+
!ssh_packet_have_data_to_write(ssh)) {
621+
/* If due to send but have no data, then send chaff */
621622
if (send_chaff(ssh))
622623
nchaff++;
623624
}

log.c

+2-1
Original file line numberDiff line numberDiff line change
@@ -458,12 +458,13 @@ void
458458
sshsigdie(const char *file, const char *func, int line, int showfunc,
459459
LogLevel level, const char *suffix, const char *fmt, ...)
460460
{
461+
#ifdef SYSLOG_R_SAFE_IN_SIGHAND
461462
va_list args;
462-
463463
va_start(args, fmt);
464464
sshlogv(file, func, line, showfunc, SYSLOG_LEVEL_FATAL,
465465
suffix, fmt, args);
466466
va_end(args);
467+
#endif
467468
_exit(1);
468469
}
469470

version.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,5 @@
33
#define SSH_VERSION "OpenSSH_9.7"
44

55
#define SSH_PORTABLE "p1"
6-
#define SSH_HPN "-hpn18.4.1"
6+
#define SSH_HPN "-hpn18.4.2"
77
#define SSH_RELEASE SSH_VERSION SSH_PORTABLE SSH_HPN

0 commit comments

Comments
 (0)