- J.J.F. / Hackers Team - Security Advisory
        =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

  Fecha: 09/05/1999
  Publicado: 14/05/1999
  Autor: Zhodiac <zhodiac@jjf.org>
  URL: http://www.jjf.org
  Aplicacion: sshd2 up to 2.0.11
  Sistema Operativo: Unix 
  Peligrosidad: Medio, a largo plazo posible acceso remoto al sistema.

  -=-=-=-=-=-=-=-=
   Introduccion
  -=-=-=-=-=-=-=-=

	En la instalacion por defecto del sshd2 (hasta la version 2.0.11),
  se deja una puerta libre a un ataque de brute force sin loguear la ip
  atacante por parte del sshd. A partir de la version 2.0.12 ya se loguea
  la conexion.

  -=-=-=-=-=-=-=-=
   En Detalle
  -=-=-=-=-=-=-=-= 

	El demonio sshd al conectar con un cliente ssh tiene un numero
  definido de intentos para que le envien la correcta password antes de
  desconectar. En la instalación  por defecto este numero de intentos es 3. Si
  antes de agotar los intentos rompemos la conexion, el sshd no logueara los
  intentos de conexion, y es mas, tampoco logueara la ip del cliente que
  conecto con el demonio.

	Un claro ejemplo:

  [zhodiac@piscis zhodiac]$ ssh -l zhodiac piscis
  zhodiac's password: 
  zhodiac's password:
  zhodiac's password:

  Disconnected; authentication error.
  [zhodiac@piscis zhodiac]$  

  En /var/log/messages:

     May  9 12:42:53 piscis sshd2[1391]: User authentication failed:
     'Authentication method disabled. (user 'zhodiac', client address
     '192.168.1.1:1344', requested service 'ssh-connection')'
	
	Ahora probemos el bug:

  [zhodiac@piscis zhodiac]$ ssh -l zhodiac piscis
  zhodiac's password:
  zhodiac's password:
  zhodiac's password: FATAL: Received signal 2.
  [zhodiac@piscis zhodiac]$ ssh -l zhodiac piscis
  zhodiac's password:
  zhodiac's password:
  zhodiac's password: FATAL: Received signal 2.
  [zhodiac@piscis zhodiac]$ ssh -l zhodiac piscis
  zhodiac's password:
  zhodiac's password:
  zhodiac's password: FATAL: Received signal 2.
  [zhodiac@piscis zhodiac]$  
 
	Esos "FATAL: Received signal2." son la respuesta a la interrupcion
  del programa mediante ^C.
 
	Veamos que salio por syslog:

  May  9 12:44:41 piscis sshd2[1403]: Remote host disconnected: Connection
  closed.
  May  9 12:44:44 piscis sshd2[1405]: Remote host disconnected: Connection
  closed.
  May  9 12:44:47 piscis sshd2[1407]: Remote host disconnected: Connection
  closed.

	Ninguna ip, ninguna muestra de los intentos de password fallidos!
  Un bruteforce podria dar sus frutos... Sorry script-kiddies, no program
  available!

  -=-=-=-=-=-=-=-=
   Quick Fix
  -=-=-=-=-=-=-=-=

	Editar el fichero sshd2_config (normalmente en /etc/ssh2) ajustar
  el campo "PasswordGuesses" con el valor 1. De este modo cada vez que se
  intente una password y se falle el sistema logueara via syslog de la
  siguiente manera: 

	 May  9 12:46:07 piscis sshd[1308]: User authentication failed:
  'Authentication method disabled. (user 'zhodiac', client address
  '192.168.1.1:1527', requested service 'ssh-connection')'

	Dicho mensaje ya loguea la ip atacante. Tambien es recomendable
  ajustar el valor del campo "ListenAddress" y asi no dejar acceso libre
  al servicio ssh desde cualquier ip.

	Una solucion mejor seria hacer el upgrade a una version 2.0.12 o
  superior, las cuales al conectar manda un mensaje via syslog del modo:

     May  9 15:23:33 piscis sshd2[7184]: connection from "192.168.1.1"

  -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  zhodiac@jjf.org

  http://www.jjf.org
  - J.J.F. / Hackers Team - Security Advisory
  =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=