lsh daemon (lshd) does not properly return from certain functions in (1) readline.c, (2) channelcommands.c, or (3) client_keyexchange.c when long input is provided, which could allow remote attackers to execute arbitrary code via a heap-based buffer overflow attack.