[Eisfair] sshd segfault bei logout vom Terminal (Abmeldung Putty)

Ansgar Püster ansgar.puester at netcologne.de
So Dez 8 09:08:22 CET 2019


Hallo,

Am 07.12.2019 um 16:55 schrieb Marcus Roeckrath:
> Hallo Rene,

[...]

> Wir haben keine Idee, woher das kommt - wahrscheinlich wird man das
> kleinlich debuggen müssen.

Naja, so keine Idee ist nicht ganz korrekt.

Zumindest die Procedure, in der der segfault passiert,
konnte ich ermitteln:

-- schnipp --

gdb /usr/sbin/sshd /tmp/core-sshd-11-0-0-5318-1574779439

Core was generated by `sshd: root at notty                         '.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  0xb7711438 in cipher_free ()
(gdb) bt
#0  0xb7711438 in cipher_free ()
#1  0xb7715e26 in ssh_packet_close_internal ()
#2  0xb76c2b38 in main ()

-- schnipp --

Aus der Source [openssh-8.1p1/cipher.c]:

void
cipher_free(struct sshcipher_ctx *cc)
{
         if (cc == NULL)
                 return;
         if ((cc->cipher->flags & CFLAG_CHACHAPOLY) != 0)
                 explicit_bzero(&cc->cp_ctx, sizeof(cc->cp_ctx));
         else if ((cc->cipher->flags & CFLAG_AESCTR) != 0)
                 explicit_bzero(&cc->ac_ctx, sizeof(cc->ac_ctx));
#ifdef WITH_OPENSSL
         EVP_CIPHER_CTX_free(cc->evp);
         cc->evp = NULL;
#endif
         explicit_bzero(cc, sizeof(*cc));
         free(cc);
}

Nach der Ursache forsche ich noch ... derzeit fehlt mit aber
die Zeit dazu.

Gruß,
Ansgar



Mehr Informationen über die Mailingliste Eisfair