Vulnerabilidad Viapolis.com
///IRC Gateway - Versión 2.0 Copyright (c) 2000 Lleida Networks Serveis Telemātics,S.L. \\\

Cuando un usuario accede al Irc-Hispano empleando Viapolis.com, el usuario aparece con IP
origen chat.viapolis.com, siendo más intimo que emplear la conexión directa al irc.

Los bugs de seguridad de viapolis son:

* Cada vez que uno conecta al HISPANO mediante Viapolis.com nos asigna un IDENT diferente, siendo imposible banear una conexión. Si alguien banea a alguien banea a todos los usuarios de Viapolis.com.

* Tabla de sesiones incorrecta: Uno puede conectar al IRC mediante viapolis.com y luego tener una comunicación anónima mediante un proxy! La razón del problema estriba en que una sesión determinada no va asociada a una IP.

* Suplantación de personalidad de usuarios: Se podría hablar por ellos, controlarlos si conectan desde viapolis.com. Actualmente en el Irc-hispano se oculta la IP origen (salvo para ircops) pero es importante destacar que en el campo nombre, si usan viapolis pone "http://www.viapolis.com" con lo que su detección no es complicada.

Veamos los detalles de estos problemas viendo el protocolo de comunicación empleado por Viapolis.
(programado por Lleida Networks S.L)

Conexión - acceso al IRC:

se emplea un formulario que apunta a un CGI con método GET. Por si alguno no conoce este protocolo del HTTP, indicare que en este protocolo se llama al script pasando luego un "?" seguido de los campos y sus respectivos valores separado de un "&".

En este caso: supondremos canal #coruña, nick "tio90" ¿ok?

Hacemos una conexión TCP mediante SOCK_STREAM y pegamos el trozo de código...
GET ... HTTP/1.1
Accept: */*
Accept-Language: es Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 5.0; Windows 98; DigExt)
Host: chat.viapolis.com
Referer: http://chat.viapolis.com/canal.html?can=Coruña
Connection: Conection-closed

(no olvidéis 2 retornos de carro)

Veamos un ejemplo:

Buscamos el SESSION-ID, en este caso: session_id=C50D460014299AD2
Se trata de 16 caracteres de identificación de sesión. Aun no estamos conectados. Este código
html únicamente crea la ventana.

Ahora hacemos realmente accesible el Nick con este código. Aquí tenéis el Log. Fijaros que
usamos el sesion_id devuelto: (la siguiente conexión no debe cerrarse o el nick dejara de existir.)
En esta conexión tenemos un LOG de todo lo que pasa en el canal, respuestas, cambios de nick, etc

A partir de ahora podemos conectar desde otra IP, cada vez que queramos cambiar de canal, mandar mensajes al canal, hacer whois, etc. Usando el siguiente código:

Todas las operaciones anteriores podrían hacerse desde IP's diferentes a las de establecimiento de conexión. Vosotros ya podéis deducir los defectos de seguridad. Primero iría con Anonymizer.com,
pondríais utilizar anonymizer con el trozo de http anterior y así hablar de manera segura. La ip de conexión
origen debe ser anónima. O bien una shell etc.

Por otro lado se destaca que sabiendo el session-id (u obteniendolo intentando averiguar protocolo o por ataque bruto) se podría controlar a cualquier usuario que use viapolis.com ya que la IP de origen no es comprobada.

En fin, espero que os haya interesado el articulo.

Saludos, R.M.G.

En este articulo de R.M.G. se demuestra aparte de como entrar anónimamente, como nuestras conversaciones en el Irc-hispano pueden ser perfectamente manipuladas, ademas fácilmente se puede acceder con ip's ajenas por lo que ninguna conversación debería ser objeto de investigación por parte de las fuerzas de seguridad del estado, ya que ante un juez no son demostrables.

 

 (C) 1997-2001 by !Hispahack
Para ver el web en las mejores condiciones, usa una resolución de 800x600 y Netscape Navigator