Mostrando entradas con la etiqueta MITM. Mostrar todas las entradas
Mostrando entradas con la etiqueta MITM. Mostrar todas las entradas

miércoles, 10 de octubre de 2012

Cain y sus ficheros de texto


Esta entrada es una de esas que, sin estar escrita, lleva muchiiiisimo tiempo en la bandeja de borradores. Y me da la sensación de que va siendo hora de escribirla. ¿No? Incluso, me da la sensación de que no va a ser muy larga. ¡A ver qué sale!

También recordar lo típico: cualquier cosa aquí expuesta, el que la haga, que apechugue con las consecuencias, que yo no me hago responsable. Puede ser legar, puede no serlo... Lo dicho: yo no me responsabilizo de nada. He dicho.

Ahora. Empecemos.

Lo primero de todo. ¿Sabemos qué es el Cain (& Abel)? Supongo que sí, ¿no? Entre otras cosas, permite hacer ataques MITM, obtener hashes de contraseñas, obtener sus correspondencias con el texto claro... Y seguro que tiene muchas más de las que desconozco.

Ahora bien. Para algunas cosas cuesta bastante utilizarlo. Otra forma de verlo es que tiene algunas opciones que no son tan conocidas, y le dan más versatilidad.

Por ejemplo:

Queremos intentar realizar un ataque MITM. Para ello, se necesita hacer un escaneo de toda la red, y, una vez tengamos el listado los equipos "victima", realizar el ataque.

Cain escaneando la red


Al final, después de acabar la operación, obtendremos el listado de las direcciones IP encontradas junto con sus direcciones MAC. Además, también nos mostrará el fabricante (teniendo en cuenta que se obtiene a partir de la MAC). La historia está en que ese scan puede cantar mucho en una red. ¿Qué podemos hacer? Existe una fórmula. Nos cogeremos una consola, por ejemplo, un cmd. Con éste, iremos haciendo ping a cada una de las direcciones IP que se correspondan con nuestro netid. Y tomaremos nota de la dirección IP que corresponda con la dirección física que nos de el comando arp.

¿Has entendido todo hasta aquí? ¿Tienes todo listo?

Muy bien. Ahora, con el Cain cerrado, vamos a su carpeta de instalación

C:\Program Files (x86)\Cain

y abrimos, con permisos administrativos, el fichero HOSTS.LST.

Por lo tanto, con una modificación como esta:

Fichero HOSTS.LST con un resultado más

Obtendríamos un resultado como este, que, a todos lo efectos es un elemento más en la lista que ya teníamos:

Nuevo equipo, con su hostname

En este caso, aparece el hostname, que es el tercer campo con el que trabaja este fichero, separando cada uno de los campos por "punto y coma" (;).

Tenemos más cosas que se pueden manipular con los ficheros de texto. De hecho, lo anterior es un relleno que no tenía pensado contar. En realidad, este post viene por lo siguiente. Por ejemplo, se han publicado un montón de hahses de MD5. Por lo tanto, vamos a insertarlos desde la aplicación. Seleccinamos cracker, escogemos MD5 (es el ejemplo, se escogerá el que tenga que ser), botón derecho sobre el listado de la derecha, add to list,...

Introducir hash MD5

Te permite introducir sólo un hash, en un instante determinado. ¡Pero quiero poner 200.000! ¿Qué hago? Repetiré la misma opción anterior, pero, en esta ocasión, el fichero a manipular será el MD5.LST.

Hashes MD5 en el MD5.LST

Ahora, después de haber puesto unos pocos hashes, conseguimos:

Cain y los hashes puestos en el MD5.LST

Como habréis observado, he dicho que tenían que ser "unos pocoshashes. ¿Por qué? Porque estos ficheros se cargan en memoria cuando arrancas el programa. Si intentas cargar un fichero que ocupe 200MB, o más (por poner un ejemplo. podrían ser 100MB o 1GB, lo mismo da), podrías no conseguir lanzarlo y te quedarías... a verlas venir. 

Hay más opciones que me gustaría explorar: saber en qué fichero se utiliza el caracter de tab para separar las columnas, en cuál el "punto y coma" (;)... qué carácter se utiliza para que separe las contraseñas de los hahses...

Pufff!! Lo que ha dado de si el hecho de que en una ocasión quisiera abrir un archivo gigantesco para romper un montón de MD5. 

¿Conocéis más truquitos en Cain que no sean tan conocidos (por los que llevamos poco tiempo en esto)?

jueves, 23 de febrero de 2012

YouPorn comprometido

A lo largo del día se ha hecho público que YouPorn ha tenido un problema de seguridad que ha permitido que bastantes cuentas de usuario (se habla de más de un millón, en otros sitios de "tan solo" ~6500) han sido comprometidas y se han hecho públicas.

Parece ser que el problema estaba en su sistema de chat. Pero, la verdad, no he podido buscar mucho más sobre lo que ha pasado. Algunos datos que he podido encontrar sobre las características de las contraseñas han sido los siguientes (fuente en Pastebin):


YouPorn Account Analysis - 2012-02-21
Total entries = 6428
Total unique entries = 4062
Top 10 passwords
123456 = 115 (1.79%)
123456789 = 78 (1.21%)
12345 = 30 (0.47%)
melinda = 23 (0.36%)
fuck = 20 (0.31%)
1234567890 = 18 (0.28%)
Nightmare = 17 (0.26%)
allzen = 16 (0.25%)
password = 15 (0.23%)
anal = 15 (0.23%)
Top 10 base words
qwerty = 42 (0.65%)
youporn = 25 (0.39%)
melinda = 24 (0.37%)
password = 23 (0.36%)
fuck = 20 (0.31%)
nightmare = 18 (0.28%)
allzen = 16 (0.25%)
anal = 15 (0.23%)
qwer = 15 (0.23%)
asdfgh = 14 (0.22%)
Password length (length ordered)
1 = 2 (0.03%)
2 = 6 (0.09%)
3 = 35 (0.54%)
4 = 196 (3.05%)
5 = 219 (3.41%)
6 = 1223 (19.03%)
7 = 904 (14.06%)
8 = 1375 (21.39%)
9 = 957 (14.89%)
10 = 729 (11.34%)
11 = 311 (4.84%)
12 = 204 (3.17%)
13 = 111 (1.73%)
14 = 71 (1.1%)
15 = 47 (0.73%)
16 = 26 (0.4%)
17 = 6 (0.09%)
18 = 16 (0.25%)
19 = 2 (0.03%)
20 = 3 (0.05%)
21 = 2 (0.03%)
22 = 2 (0.03%)
25 = 2 (0.03%)
26 = 2 (0.03%)
27 = 2 (0.03%)
Password length (count ordered)
8 = 1375 (21.39%)
6 = 1223 (19.03%)
9 = 957 (14.89%)
7 = 904 (14.06%)
10 = 729 (11.34%)
11 = 311 (4.84%)
5 = 219 (3.41%)
12 = 204 (3.17%)
4 = 196 (3.05%)
13 = 111 (1.73%)
14 = 71 (1.1%)
15 = 47 (0.73%)
3 = 35 (0.54%)
16 = 26 (0.4%)
18 = 16 (0.25%)
2 = 6 (0.09%)
17 = 6 (0.09%)
20 = 3 (0.05%)
25 = 2 (0.03%)
19 = 2 (0.03%)
1 = 2 (0.03%)
21 = 2 (0.03%)
22 = 2 (0.03%)
26 = 2 (0.03%)
27 = 2 (0.03%)

Y es que la gente no aprende... ¡¡¡Las direcciones de correo personales no se usan para estas!!! El hecho de repetir las contraseñas en distintos sitios es secundario. xD En serio. No es secundario. Es tan importante lo uno como lo otro.

lunes, 26 de septiembre de 2011

Apagar Windows con comandos I

***
Entrega I (esta)
Entrega II
***

Una vez más, voy a hacer una comparación de un comando muy útil que se encuentra tanto en Linux como en Windows. De hecho, en Windows no estoy muy seguro de que se utilice tanto. Ese comando es el shutdown. Sí, en Linux tenemos halt y reboot. Pero, la gracia está ahí, en que también podemos un tercero que tiene su equivalente en el sistema operativo de los ventanucos (como decía un compañero de clase).

Nos vamos a Linux. Pedimos la ayuda con

shutdown -?

devolviéndonos la siguiente captura:

shutdown -?

Luego, si probamos a hacer 

shutdown 3 apago el sistema

el resultado será que se apagrá en 3 minutos con el mensaje introducido:

shutdown 3 apago el sistema

Es decir, que es la forma más básica de usar este comando. Ahora. ¿Y si quisiéramos ver la ayuda de Windows? Para pedir la ayuda de Windows ejecutamos

shutdown -?

con el siguiente resultado

Shutdown -?

Y el apagado similar al que he mostrado antes es poniendo en la consola

shutdown -s -t 0 /c "Adiooooos"


Ahora, pongamos que queremos cancelar el apagado estando en Linux. ¿Qué haríamos? Ejecutaríamos 

shutdown -c

shutdown -c


Y en Windows... Es que se me ha colado el Melissa, Sasser, MyDoom (¿eran estos?) y me sale un cartelito diciendo que se me va a apagar en un minuto... y no se pararlo. No me deja quitarlo. Para poderlo quitar, vamos a usar

shutdown -a

El otro comando que nos va a ser de utilidad va a ser el de reiniciar. En Windows podemos usar directamente

shutdown -r -t 0

y ya está, en unos instantes debería de estar reinciándose. Si hubiese algún problema, siempre se puede añadir la opcion -f para forzar el cierre de las aplicaciones.

Como se podréis observar, los parámetros se pueden usar con el guión (-) o con la barra (/).

¿Cómo se podría hacer en Linux? Hay dos formas. Una, ya comentada es usar

reboot

La otra, que es la que nos ocupa, es seguir usando shutdown.

shutdown -r 1 adioooossss

y saldría algo parecido a lo del pantallazo:

shutdown -r 1 adioooossss

Vamos a recopilar. Porque parece mucho, pero han sido dos cosas: apagar, reiniciar, y parar cualquiera de las dos acciones.

Nos queda otra opción muy interesante. Y es hibernar. La verdad, no se cómo pedirle al shutdown de Linux que hiberne. Ahora lo busco y os lo cuento. En Windows lo descubrí escribiendo este post por casualidad. Como nunca lo había hecho, se me ocurrió escribir

shutdown  -h

para volver ver la ayuda... y se me apagó el equipo. Así es como descubrí que le había pedido que lo hibernara.

En Linux... ni idea. He encontrado alguna cosa rápido y corriendo pero no me acaba de convencer. Hay una opción más que quería contar, pero he visto que hacía muy largo el post, por lo que he decidido montarlo en 2 entregas. Como siempre, si queréis comentar algo al respecto, sois bienvenidos.

viernes, 16 de septiembre de 2011

3G y man in the middle

No se fue en el último Asegur@IT Camp (el tercero) o si fue el año pasado. Vamos a lanzar una pregunta al aire: ¿cuántos de vosotros usáis la tarifa de datos del móvil en vez de activar el Wifi del móvil en los lugares públicos, por evitar aplicaciones del tipo Firesheep o sniffers y todo ese tipo de parafernalia? Seguro que muchos. Espero.

En alguno de estos eventos, en ese tipo de conversaciones que suele haber en la mesa cuando se come, o de camino a las cabañas, se comentan cosas como la siguiente. 

Hubo alguien, que ahora tengo que investigar, que se montó su propia central 3G. ¿Qué consiguió? Lo mismo que se conseguiría con la Wifi, pero en 3G. Vamos a ver (ahora mismo lo busco) cómo se hizo, al menos de una manera resumida. 

Bueno. Me ha costado encontrar un mínimo de información. En el camp me recordaron lo que ya dijeron en SbD:  Fue un MITM con 4G y CDMA.

Con el libro que acaba de sacar Informática 64Hacking y seguridad en comunicaciones móviles GSM/GPRS/UMTS/LTE, y que me llegó ayer, seguro que encuentro cómo se hizo. Porque, según entiendo, no debe de ser del todo fácil spoofear una central de estas. 

Si tuviese más tiempo para buscar, os lo contaba ahora mismo, pero como ando un poco bastante liadillo... También tengo que sacar tiempo para retomar un proyecto que tengo un poco parado y que tiene que ver con las imágenes .wim, que ya visteis que estuve una temporada hablando bastante de ellas. Les he dado un buen respiro, y me toca continuar con ellas. 

lunes, 15 de agosto de 2011

Encontrar WLANs visibles en los SS.OOs

Tal y como dije hace casi un mes, desde Windows se pueden hacer bastantes cosas con respecto a las redes utilizando comandos tal y como se puede hacer en Linux.

Ahora, leyendo Systemadmin, hablan sobre cómo encontrar las WLANs visibles desde línea de comandos usando Linux, Windows y Mac-OS.

La verdad, no  lo he probado, pero creo que en este caso, no hace falta que repita lo que ya han dicho. ¿No?

miércoles, 13 de julio de 2011

ifconfig = Linux. ¿Windows?

¿A que sí? ¿A que es muy críptico el asunto de este post? Creo que hace un tiempo ya publiqué algo sobre solucionar problemas de las conexiones en red de Windows. Además, ya dije que tendríamos más historia al respecto.

¿Cómo averiguas una dirección IP desde un linux? Muy sencillo, ¿verdad? Ejecutas:

ifconfig

y, de manera optativa, puedes poner la interfaz de red si te la sabes. Un ejemplo puede ser el de la imagen:

Resultado de ejecutar: ifconfig eth0

Y, ¿cómo hacemos esto en Windows? En Windows podemos ejecutar el comando

ipconfig

que nos devuelve todas las conexiones de red activas. ¿Cómo obtenemos sólo la información de la interfaz que queremos? Uno de los parámetros que permite obtener el de una de las conexiones en concreto es el comando:

netsh

Ya lo usamos la anterior vez para resetear la pila de TCP/IP. En este caso he ejecutado:

netsh int ipv4 show addresses name="Local Area Connection"

que, si lo he transcrito bien, se debería de obtener un resultado como el de la imagen:

Resultado de ejecutar un: netsh int ipv4 show addresses

El resultado es similar a hacer el ipcofig, pero permite filtrar por los datos que queremos. 

¿Qué más podemos hacer? 

En linux, con ifconfig, se puede configurar una dirección IP con un script, o "a mano", con un comando parecido al siguiente:

ifconfig eth0 192.168.116.14 netmask 192.168.116.254 up

De hecho, ese "up" sólo sería necesario si la interfaz en cuestión no estuviera levantada. ¿Y si quisiéramos hacer lo mismo en Windows? Aaah, amigo. Ahí la cosa cambia. Y es donde quería llegar. El problema es que estamos acostumbrados a hacer esa configuración la bonita interfaz gráfica que nos trae el sistema operativo:

Interfaz gráfica para configurar TCP/IP en Windows

¿Y si quisiera configurarla con un fichero por lotes (léase, un batch)? Bueno. Pues volvemos al netsh. Podríamos ejecutar algo como esto:

netsh int ipv4 set address name="Local Area Connection" dynamic dhcp

para que la dirección IP se configure sola. ¡Y yo probando dynamic! La otra opción es especificarla estática:

netsh int ipv4 set address name="Local Area Connection" static 192.168.116.110 255.255.255.0 

¿Y para indicarle los DNSs? Si nos vamos a linux, tenemos un fichero de texto que se encuentra en /etc/resolv.conf

/etc/resolv.conf

Si nos metiésemos en Windows sería algo parecido a lo siguiente:

netsh int ipv4 set dnsserver name="Local Area Connection" static 123.45.67.190 

Si quisieramos un segundo DNS tendríamos que añadirlo

netsh int ipv4 add dnsserver "Local Area Connection" 234.56.78.91 

Lo de añadir más de un DNS no lo había hecho nunca. Por me ha costado ponerlo. De hecho, se puede poner un parametro más a esta última línea que es index=2. Si tuviéramos más servidores en la lista, podríamos indicar en qué posición colocarlo.

Tal y como hicimos antes, se pueden establecer con DHCP:

netsh int ipv4 set dnsserver "Local Area Connection" dhcp 

¿Qué más podemos configurar? Podríamos configurar la puerta de enlace. Muy importante si queremos salir al Interné. En linux, para recordar un poco cómo se hacía, se puede poner esto:

route add default gw 192.168.116.1

¿Y si queremos seguir el mismo sistema en Windows? Podemos hacer el siguiente comando:

netsh int ipv4 set address name="Local Area Connection" gateway=192.168.116.1

Así, podemos establecer estos valores automáticamente. 

No se si hace falta que ponga pantallazos de la ejecución de los otros comandos que no he incluido. Si hiciese falta, por favor, decirlo, y buscaré un hueco para montarlos. También, si queréis aportar algo sobre este tema, no os cortéis. Que para eso está la opción de los comentarios, ¿eh?

P.D: En la vista previa estoy viendo que aunque he cambiado la fuente para los comandos, parece que no se distingue mucho. ¿Qué creéis? Bueno. De momento le pongo este color anaranjado. Así resalta los comandos y no queda muy chillón. De todas formas, por favor, comentadme lo que opináis. Así puedo intentar utilizar siempre el mismo criterio. Muchas gracias.  



martes, 2 de noviembre de 2010

A vueltas con... contraseñas en Windows

A lo largo de la semana tendría que haber jugado un poco más con el tamper data o con las cabeceras. Y, al final, he acabado haciendo otras cosas, que, aunque puede que no sean igual de interesantes, son válidas para escribir aquí. Por lo tanto, voy a la carga.

Hace meses escribí varias veces sobre las contraseñas en Windows: I, II, otro y... otro más. Pues, una vez más, tengo algo que decir al respecto.

Hace unos minutos un amigo ha enviado un correo de un sitio, que, una vez más, enlaza a otro mucho más interesante.

Como ya comentamos en su momento, cuando se almacena una contraseña lo que se hace es guardar su hash. Así, si este hash viaja por la red, se podría capturar, por ejemplo, con un ataque man in the middle y, después, buscar la contraseña que corresponda con ese hash.

Recordando un poco lo que comenté en su momento, hay varias formas de buscar esa correspondencia. O furza bruta: ir probando a pelo todas las combinaciones posibles hasta que una contraseña case con ese hash. O utilizar un diccionario de datos, lo mismo que la posibilidad anterior, pero buscando la posible contraseña en un fichero de texto. O con las rainbow tables.

Todas estas opciones pueden llevar su tiempo. Bastante tiempo. Pero, los sitios que acabo de enlazar lo tienen todo hecho. Le pasas el hash, y te devuelve la contraseña en apenas unos segundos.

He probado un hash al azar y no ha sido capaz de encontrar la contraseña. ¿Qué le vamos a hacer? La cosa está en que este servicio ayudará bastante a a la hora de buscar estas correspondencias.

Ya que estamos. Otro serivio de este estilo, pero para MD5, se puede encontrar en una comparativa que hizo SbD.

miércoles, 1 de septiembre de 2010

Tarjetas de crédito y débito

Resulta que cuando estuve en el Asegur@IT 7 el pasado marzo, uno de los compas comentó la misma anterior al evento sobre un ataque muy curioso. El ataque que nos comentaba era un MITM relacionado con tarjetas de pago.

¿En qué consistía el ataque? Bueno. La verdad, no contó mucho porque simplemente fue un comentario que hizo al salir del local donde cenamos, tanto el equipo perteneciente al evento como algunos asistentes. La idea, en resumen, es engañar al terminal haciéndole creer que se ha introducido el PIN de la tarjeta correctamente, cuando no realmente no es así, y a la tarjeta se le dice que no hay que introducir ninguna contraseña. Bueno. ¿Y cuáles son los detalles? Los detalles los da la Universidad de Cambridge, en un documento que me tengo que leer.

También hay un vídeo de la BBC, un tanto sensacionalista, en el que entrevistan al equipo de la investigación y muestran una demo en la cafetería de la universidad.

Aún así, es importante remarcar que, mientras que buscaba datos sobre este tema en concreto, el mismo sitio donde he encontrado estos enlaces, hay otro en el que remarcan que hacen un poco de trampa.

Una de estas trampas es que parece ser que en fotograma de la demo de la BBC, se paga con una tarjeta VISA, pero, parece ser (que no lo acabo de ver), el ticket muestra que se ha usado una MasterCard (Según he visto en el primer comentario, de uno de los autores de la investigación, hicieron varias pruebas para distintas grabaciones en distintos ángulos. No tiene desperdicio leérselo).

El otro truco parece ser que radica en el protocolo que están usando. Según he podido entender, el protocolo que se emplea en estas transacciones, establece que los resultados relativos a la tarjeta se guardan en un dato llamado CVR, y es obligatorio enviarlo. El terminal indicará en su CVM que el PIN es correcto. el problema está en que el CVM no es obligatorio, es optativo. Si se enviaran los dos, al compararlos, habría algo que no cuadraría, y la transacción junto al ataque acabarían sin más.

Ya se. No he contado mucho al respecto. Sólo he contado lo que he llegado a entender de lo que he leído.

Pero, aún hay otra cosa que quisiera contar con respecto a las tarjetas de pago. Y es que, buscando información sobre lo comentado arriba, me he encontrado con otra cosa muy curiosa.

Ya sabemos que muchas veces, cuando se va a comprar algo por Internet, nos piden datos de la tarjeta. En principio, deberían de ser datos de tipo (o nivel) 2. Es decir, comúnmente lo que se dice como "algo que tenemos". Porque haría falta la tarjeta para saber los datos que nos piden, que suelen ser el número completo, la fecha de caducidad, y, últimamente, los dígitos de seguridad que están en la parte trasera de la tarjeta (algunos piden 4 números, otros piden 3). Pero, ¿realmente se necesita la tarjeta? Con tal de sabérselo de que alguien lo haya apuntado, ya la hemos liado.

Bueno, pues parece ser que se está ideando un sistema para convertir nuestra tarjeta en una especie de token. Así,

viernes, 18 de junio de 2010

Chinitos en la consola

Sí. Así es. Chinitos en la consola. ¿Qué son chinitos en la consola? Son caracteres raros. Y donde digo raros, me refiero a muy, muy raros:

Chinitos en consola

A esto es a lo que  me refiero. Como se puede ver, el resultado de un cat sobre alguno de esos ficheros binarios es esa serie de chinitos.

Ahora, a veces el sistema se queda pillado. Y, por esa mala pata que tengo, no consigo hacer que suceda. ¿Qué quiero conseguir? Quiero que se produzca un error. Esta captura que veis aquí no es un problema en absoluto. Se muestran los caracteres raros, hacemos un Ctrl+c o esperamos a que finalice... Y punto. El problema está después. Que, a veces no sucede nada (tal y como se puede ver, una vez más, en el pantallazo) y otras veces, continua mostrando la información con "esas cosas" inteligibles. 

Es más, todo se seguiría mostrando mal: El prompt, nuestras entradas, los resultados de nuestros comandos...

¿Cómo se soluciona eso? Se solucionaría ejecutando:

reset

Y ya está. La pantalla la estarías resetenado y perderías toda la información, pero volverías a poder utilizar esa consola otra vez.

Y... De momento nada más. Estoy montando algún que otro escenario para los siguientes posts, pero me están saliendo rana. A ver si consigo solucionarlo. 

jueves, 25 de febrero de 2010

Man in the ...

Lo primero, siento mucho no haber escrito en toda esta semana y media. A ver si puedo preparar mucho material para cuando no tenga tiempo para escribir o para cuando tenga dificultades para contar algo.

Y ahora... ¡Empezamos!

Hacía tiempo que leí una cosa con la que hemos estado trabajando estos días en el FTSAI. Se trata de un ataque llamado Man In The Middle (MITM).

¿De qué trata un ataque de estas características? Bueno. Lo voy a resumir mucho porque quiero guardar temario para otros posts.

Pongamos como ejemplo un escenario como el que sigue:

Escenario 1: Red de ordenadores conectados a Internet

Como podemos ver, este escenario consta de:
  • Dos equipos: E1_A  y E1_B.
  • Un router: E1_R conectado a Internet.
Estos equipos están conectados entre sí utilizando un enlace ethernet y ambos pueden acceder a Internet a través del router. Para que este tipo de ataques sea viable  tienen que existir switches, no deberían de haber hubs ni comportarse como tales. (Esto está actualizado: puse todo lo contrario) .

Pongamos un ejemplo: E1_A está visitando una página que requiere un loguearse. El usuario de E1_B es malvado y curioso. Quiere saber qué está visitando E1_A y, además, sacar alguna que otra contraseña que salga de ese equipo.

Una de las razones por las que no se puede usar conmutación es porque ésta se encuentra a nivel de enlace. ¿Qué significa esto? Los switches tienen un pequeño conocimiento de quién le está enviando un paquete y el puerto por donde tiene que enviarlo. En caso de que no sepa por dónde enviarlo, lo enchufará por todos aquellos por donde no han entrado. Volviendo al nivel de enlace. Al saber por dónde hay que enviar las solicitudes, la red sabrá que si E1_A quiere Internet, se lo tiene que enviar al puerto donde está conectado E1_R. Y viceversa: las respuestas del router irán al puerto donde está conectado E1_A. Si hubiera hubs, sería un lío con los paquetes que van y vuelven del emisor al receptor.

Este tipo de ataques lo que buscan es que E1_B hará creer a E1_A que es el router. Leerá los datos que esta última envía y a su vez se lo re-enviará al router E1_R haciéndole creer que es E1_A. En cuanto el router responda se producirá el efecto inverso.

Con esto, se puede llegar a ver los sitios donde se está metiendo. Incluso, se podrían llegar a ver las contraseñas. Y, si están llevan algún hash determinado, se podría llegar a sacar la contraseña en claro. Algo más complicado, que intentaré montar para otra ocasión, es conseguir capturar los datos HTTP que van por SSL.

Por cierto. Ayer, leyendo un post en F-Secure que habla de otro tipo de ataque al que ha denominado Man In The Browser. Éste tipo de ataques se basa, según he podido entender, en interceptar al navegador, no al equipo. Esto es así por la encriptación SSL de la que acabo de hablar. 


P.D: Vale, lo he explicado como el culo. Espero que no me vuelva a pasar. 


martes, 20 de octubre de 2009

LiveCDs II

Hace poco hablaba sobre los LiveCDs. Y un sitio con una extensa colección que nos va a venir que ni al pelo.

Según se puede ver en el listado los CDs que nos efrece son muy variados. He de reconocer que no me voy a poner a leerle una a una cada una de las cosas que hay en la lista, pero, a simple vista, casi todos los elementos que nos ofrece pertenecen a sistemas Linux.

Si se selecciona un elemento al azar, nos lleva a otra página, en el mismo sitio, con algunos datos propios de ese sistema seleccionado. Entre los que puedo ver en el que he cogido para probar, hay alguna que otra estadística, enlaces al sitio oficial, enlaces para la descarga de la imagen... Y poco más.

A la izquierda aparecen datos interesantes: el propósito para el que está pensado, la arquitectura para la que se ha hecho (para un usuario de a pie, con tal de que salga algo así como x86 o ia64 como mucho vale), sistema operativo que lleva (Linux, Windows...), idioma por defecto.

Y poco más voy a contar al respecto. Creo que de una pequeña entrada de otra referencia, he conseguido crear dos posts.



lunes, 19 de octubre de 2009

LiveCDs

Me hubiera encantado que mi primera entrada de verdad hubiese sido exclusivamente mía. Sin ningún intermediario. Sin que ninguna otra fuente que sigo (y que no sólo se encuentra en los enlaces aquí a la derecha). Pero... No he podido. Intentaré no caer en las garras de esta mala rutina. A ver si lo consigo. De todas maneras, si os veis que sigo en esta dinámica muy a menudo, me gustaría saberlo.

Una vez he escrito la parrafada enorme que no venía al caso, comienzo. Desde "Diario de un hacker" nos muestran un página con una recopilación muy interesante: LiveCDs.

Para aquellos que no lo sepan un LiveCD (/laif cd/) es un CD (nooooo, es un chuletón) que tiene un sistema ya instalado. ¿Cómoooo? Bien. Pongamos un ejemplo. Cuando queremos usar nuestro ordenador, ¿qué sucede?. En una forma un tanto resumida:
a) Le damos al botón de encendido... Y, evidentemente se enciende. No nos vamos a ir por las ramas de si no hay corriente ni nada similar.
b) Se carga un programita de que se llama POST. Power On SelfTest. Este programita es que el que muestra un númerito muy rápido, qué unidades ha localizado. Aunque nos podemos encontrar con que no se vea por alguna imagen de la placa base, sucede.
c) Una vez ha pasado el POST se cargará otro programita que se llama bootstrap. Este es el que se encarga de buscar los sectores de arranque para el sistema operativo.
d) El sistema operativo que tengas se carga (o se carga su gestor de arranque, pero esto ya es otra historia).

El sistema operativo suele estar instalado en un disco duro. Es donde comúnmente la máquina lo utiliza. Pues bien. Imagínate que en vez de querer utilizar el sistema operativo desde el disco duro, quieres utilizarlo desde un CD. Eso sí, hay que tener alguna cosa en cuenta. Como, por ejemplo, que todo lo que hagas en la misma unidad del CD no será posible grabarlo. Será de sólo lectura. Pero sí podrás manipular, si ese sistema operativo te lo permite, cosas de los discos duros que encuentre en tu ordenador.

¿Y para qué sirve una cosa así? ¿No sería mejor instalarlo que así sí te deja manipular las cosas? Sí y no.
- Sí, siempre y cuando quieras usarlo asiduamente. No es obligatorio pero sí recomendable.
- No siempre y cuando quieras probar un sistema antes de instalarlo. Para ver cómo funciona, puedes probarlo antes de machacar alguna cosa importante de tu disco duro. O, si quieres utilizar alguna herramienta que te permita analizar tu sistema en busca de problemas, soluciones, errores, etc, etc también es muy útil.

¿Y cuál ese famoso sitio del que hablabas antes de enrollarte tanto? Pues es este. Recordarme algún que otro día que vuelva al tema para comentar alguna cosa más sobre el contenido de este sitio. Que este post (entrada) se me ha hecho muy largo.