El término troll describe a una persona provoca intencionadamente a los usuarios para enfrentarlos entre sí o desviar los temas de las discusiones y confundir a sus participantes (Wikipedia).
Este artículo describe algunas técnicas para alterar el tráfico y engañar a los usuarios en una red local. El fin podría ser divertirse gastando o engañar a los usuarios con intenciones más peligrosas.
Vamos a utilizar el programa Ettercap para aplicar filtros al tráfico de la red para alterar el contenido de una página web.
Imaginemos que haciendo "Sniffing" en un segmento de red tenemos a un usuario visitando el diario marca, entonces podemos visitarlo primero para echar un vistazo a las noticias que presenta y cambiar la que nos interese. Por ejemplo vamos a cambiar el nombre de "Cristiano", jugador del Real Madrid, por el de "Cristina", y podemos cambiar también alguna imagen.
Para que podemos alterar el tráfico tendremos que ser capaces de hacer un ataque MITM. Para hacer de "man in the middle" utilizaremos la técnica ARP spoofing utilizando Ettercap. Esta ténica que aplica sobre la capa de enlace y red pero se puede realizar siguiendo una serie de pasos muy sencillos con la aplicación Ettercap.
Abrimos Ettercap y tras escanear las máquinas en nuestro dominio de difusión lanzamos un ARP Poisoning entre la víctima y la puerta de enlace.
El siguiente paso es crear nuestro filtro, siguiendo el formato aceptado por etterfilter. Utilizamos el siguiente filtro:
replace("Cristiano", "Cristina");
También podemos cambiar las imágenes usando un filtro como el siguiente:
replace("img src=URL de la imagen a cambiar", "img src=URL de nuestra imagen " ");
Finalmente cargamos el filtro en Ettercap, no tiene mucho más misterio, aunque los filtros son una potente herramienta y se pueden hacer cosas mucho más interesantes.
Trolleando en la red
domingo, 14 de agosto de 2011
SHODAN
miércoles, 27 de julio de 2011
SHODAN es un buscador muy de moda últimamente en los medios sobre seguridad informática.

Aunque Cortexa es lo más buscado en SHODAN con respecto a casas domóticas, se puede buscar por más software también de domótica, y buscar en sus manuales el usuario y contraseña.

Basta una búsqueda por ip camera o webcam, el módelo de la cámara suele ser devuelto en las cabeceras http, y luego se puede buscar el usuario y contraseña por defecto para ese modelo con Google e ir probando si no la han cambiado. La "gracia" de esto está en restringir la búsqueda por zonas, o por rangos de IP conocidos (de tu centro académico por ejemplo).





Por supuesto conviene no entrar a interfaces de sistemas para los que obviamente no deberíamos estar autorizados, y conviene mucho menos jugar con estos interfaces. Más allá de los delitos en los que se puede incurrir está la responsabilidad y consecuencias de realizar estas acciones para nosotros mismos y para los demás.
Esteganografía
domingo, 10 de julio de 2011
La esteganografía es la disciplina en la que se estudian y aplican técnicas que permiten el ocultamiento de mensajes u objetos de modo que no se perciba su existencia (Wikipedia). Mientras que la criptografía intenta hacer ilegible el mensaje excepto para aquel que tiene que leerlo, la esteganografía intenta ocultar su existencia.
A lo largo de la historia ha habido trucos realmente ingeniosos para hacer trasladar un mensaje al destinatario de forma oculta, en esta entrada nos centraremos en algunas de las técnicas más usadas para ocultar información digital.
La esteganografía y el estegoanálisis conforman todo un estudio de técnicas más o menos sofisticadas y para hablar de ellas en profundidad se necesitaría entrar en ámbitos como la estadística. Esta entrada aspira a ser solo un esbozo general y además yo no soy especialista.
Técnica sustitutiva LSB
Empezaremos hablando sobre técnicas sustitutivas LSB (Least singnificant bit) en ficheros, que consiste en modificar el bit menos significativo de los bytes que conforman la secuencia de bytes de un fichero. Por ejemplo, si el mensaje a ocultar consiste en una cadena de caracteres codificada en n bytes, podemos ocultar el mensaje en un fichero de imagen RGB modificando los bits menos significativo de cada octeto en el rojo de un pixel por los bits del mensaje.
Veamos un ejemplo muy concreto obtenido de una práctica que realicé en la universidad:
Tenemos un fichero mp3, y queremos ocultar un mensaje en él. El proceso de ocultación consiste en ir cambiando el bit de menos peso de cada byte del fichero de audio por un bit del mensaje, hasta que se haya ocultado todo el mensaje. Es decir, para todos los caracteres del mensaje a ocultar, se irá cogiendo bit a bit, empezando siempre por el de mayor peso, y se irán incrustando como el bit de menos peso en el correspondiente byte del fichero de audio:
- Los primeros 2048 bytes del fichero de audio corresponden a la cabecera de un fichero mp3, la cabecera contiente información sobre el tamaño, tipo de fichero... Estos primeros 2048 bytes no se alteran y pasan directamente al fichero resultante.
- Los dos primeros bytes a ocultar, aunque no forman parte, propiamente hablando, del mensaje, indicarán el nº total de bytes del mensaje que se va a ocultar.
- Para todos los caracteres del mensaje de texto, se irán tomando grupos de dos bits, que sustituirán a los dos bits de menos peso del correspondientes byte del fichero de audio y se dejará el siguiente byte de éste sin modificar.
Este proceso se repetirá hasta ocultar todos los bits del fichero que contiene el mensaje. Es decir, cada byte de texto se ocultará en 8 bytes del fichero de audio, pero de éstos, sólo 4 ocultarán bytes y los otros 4 permanecerán sin alterar.
En la siguiente figura se muestra gráficamente el proceso:
Para obtener el mensaje se irán obteniendo, de dos en dos bits, los bits ocultos según el método anterior y se reconstruirá el mensaje, que se irá almacenando en el fichero resultante.
He subido los ficheros fuente escritos en C y compilados con GCC al siguiente enlace para quien quiera echarlos un vistazo o probarlos http://www.megaupload.com/?d=H54D1W4.
Alterar los bits menos significativos de los bytes que conforman un pixel o un mp3 no es detectable por la vista ni el oído humano respectivamente, cualquiera puede hacer la prueba con los programas que he subido.
La detección de técnicas sustitutivas consisten en algorítmicos estadísticos que usan estimadores y test basados en distribuciones para estudiar frecuencias en los valores de los bytes. Cuanto menos sea la información a ocultar y se hayan elegido de manera más aleatoria los bits a modificar, más difícil es la detección. De hecho, los programas actuales de estegoanálisis funcionan bastante mal.
Esteganografía de red
Consiste en ocultar información a nivel de protocolo de comunicación, algunos de los cuales permiten introducir cierta redundancia, que nos facilitan la elaboración de un canal secreto.
Uno de los algoritmos esteganográficos puede ser la manipulación de los campos sobrantes en las cabeceras del paquete. Con frecuencia no todos los campos en la cabecera de un protocolo son necesarios a lo largo de toda la transmisión, como por ejemplo el campo de FLAGS (banderas) del protocolo TCP. Incluso se puede ocultar información en los campos obligatorios para hacer más difícil su detección.
Una técnica muy útil que además permite enviar datos a redes protegidas es la siguiente:
El destinatario se encuentra en una red protegida y puede recibir solamente datos de cierto servidor, pero no establecer conexión con el remitente. El remitente puede enviar el paquete con números IP falsos poniendo como dirección de origen la del destinatario, y números falsos como puertos de origen y de destino, y oculta el mensaje a enviar en el segmento SYN.
Envía este paquete a un servidor que responde con el segmento SYN/RST o SYN/ACK junto con los datos modificados contenidos en un segmento SYN aumentado en uno a la dirección falsa de origen, que es como hemos dicho la dirección del destinatario, y este recibe el paquete y descifra el mensaje.
Un programa sencillo que nos permite ocultar información en protocolos de comunicación es la aplicación covert_tcp, creada por Craig H. Rowland.