COMMAND
inetd
SYSTEMS AFFECTED
Linux
PROBLEM
Zo0mer posted following. He found local DoS that crashes telnetd
(tested on Slackware 4.0, RH 5.2). Type:
telnet localhost | telnet localhost | telnet localhost ......
about 50 times result will be 'Connection Refused', telnetd crash.
This was tested on Debian 2.1 and it crashes there too. This
however is inetd problem:
Sep 9 17:55:05 server inetd[186]: telnet/tcp server failing (looping),
service terminated
Sep 9 17:55:28 server inetd[186]: auth/tcp server failing (looping),
service terminated
So, what this does is get the telnetd service kicked out by
inetd..by using a similar method with numerous rapid connections,
you can shut-down any tcp service running under inetd, ie. ftpd,
identd, etc, just by connecting to the port each service is
listening on.
SOLUTION
Until a fix is out, it might be wise to crontab a HUP to inetd
every few minutes, so that if somebody takes out your telnet
service, you can log back in eventually. The default is to
shutdown the service if more than 40 instances are started in a 60
second period. *Any* service under inetd will halt if more than
the max number of instances are started. Change this line in
inetd.conf:
telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd
To:
telnet stream tcp nowait.256 root /usr/sbin/tcpd in.telnetd