=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/ssh/auth-passwd.c,v retrieving revision 1.44 retrieving revision 1.45 diff -u -r1.44 -r1.45 --- src/usr.bin/ssh/auth-passwd.c 2014/07/15 15:54:14 1.44 +++ src/usr.bin/ssh/auth-passwd.c 2016/07/21 01:39:35 1.45 @@ -1,4 +1,4 @@ -/* $OpenBSD: auth-passwd.c,v 1.44 2014/07/15 15:54:14 millert Exp $ */ +/* $OpenBSD: auth-passwd.c,v 1.45 2016/07/21 01:39:35 dtucker Exp $ */ /* * Author: Tatu Ylonen * Copyright (c) 1995 Tatu Ylonen , Espoo, Finland @@ -63,6 +63,8 @@ #define DAY (24L * 60 * 60) /* 1 day in seconds */ #define TWO_WEEKS (2L * 7 * DAY) /* 2 weeks in seconds */ +#define MAX_PASSWORD_LEN 1024 + static void disable_forwarding(void) { @@ -80,6 +82,9 @@ { struct passwd * pw = authctxt->pw; int ok = authctxt->valid; + + if (strlen(password) > MAX_PASSWORD_LEN) + return 0; if (pw->pw_uid == 0 && options.permit_root_login != PERMIT_YES) ok = 0;