viernes, 24 de febrero de 2017

Buena CACHÉ tiene tu DNS
Ataque DNS Spoofing

Sería interesante saber a que páginas web está accediendo tu vecino, tu pareja, tu hij@ o tu empleado en horas de ocio (o quizás en horas de trabajo).

Mas interesante sería si pudiéramos hacerlo sin necesidad de tener su ordenador, su clave o incluso sin estar en la misma red.

¿Y si os dijera que es posible? ¿Y si os dijera que encima no hace falta "vulnerar" ninguna seguridad?

No me creeríais sin verlo ¿Verdad? ¿Hacemos una prueba?

¿En que consiste la prueba? ¿Cómo funcionan brevemente los servidores DNS?

Antes de empezar con la prueba, tenemos que entender en que consiste el "ataque" y como se obra el "milagro".

Los ordenadores llevan un microprocesador y estos tienen una pequeña memoria llamada "caché" donde se almacena temporalmente (o hasta que alguien la borre) para realizar tareas mas rápidamente.

Las DNS son direcciones IP que están "camufladas" por nombres (HOST) y que se utilizan para conectar a otra máquina o servidor sin conocer el número IP que lleva dicha máquina o servidor. 


Explicación del proceso que vamos hacer:

Leyenda: 1 = Atacante (Yo) | 2 = Servidor DNS | 3 = Cliente (Vecino, pareja, empleado...).

Como no tenemos el dispositivo de esta persona en nuestras manos, tiraremos a preguntarle al servidor DNS (2) de la empresa desde donde se está conectando dicha persona (3) ya que estoy seguro de que la memoria caché no la han borrado y el CPU de dicho servidor DNS (2) tendrás las direcciones web almacenadas en su memoria.

Un ejemplo:

Juan (3) entra en Google Chrome y escribe la web www.google.com. Mientras espera a que cargue la web su servidor DNS (2) hace una consulta al servidor DNS de google.com y este la responde con la dirección IP, ahora el servidor DNS (2) de su empresa le pasa la dirección IP al Google Chrome de Juan (2), y este ya puede visualizar la página web.

Para preguntarle al servidor sólo debemos de preguntarle si tiene en su memoria caché la siguiente web.

Ej. www.google.com. En este caso el servidor nos devolverá un "True" porque Juan ha visitado la web y su servidor la ha guardado en su memoria por si Juan quisiera entrar de nuevo al sitio, ya tendría la IP y conectaría mas rápidamente. En caso de que la dirección web no se encuentra en su memoría nos devolvería un "False".


Ejemplo afirmativo:

Juan escribe en su navegador web www.google.com -> DNS hace su petición y se la devuelve, guarda dicha petición en su caché -> Juan está visualizando la web.

Atacante (1) le pregunta el servidor DNS (2) si tiene en su memoria la siguiente web www.google.com y su servidor responde TRUE (SI).

Ejemplo negativo:

Juan escribe en su navegador web www.google.com -> DNS hace su petición y se la devuelve, guarda dicha petición en su caché -> Juan está visualizando la web.

Atacante (1) le pregunta al servidor DNS (2) si tiene en su memoria la siguiente web www.bing.com y su servidor responde FALSE (NO).

Se entiende ¿No? Podemos preguntarle al servidor si tiene en su memoria caché una web que le digamos y él nos responderá con si o con no.

Para que me entendáis, vamos a jugar al "¿Quién es Quién?" (¿Es rubio? ¿Lleva gorra? jejeje)

Creo que ya es hora de dejar la teoría y hacer algo práctico.

Luces, cámaras y acción!

Vamos a preguntarle al servidor DNS de alguna empresa conocida por las direcciones web que han visitado sus empleados.

Tengo una lista con unas 500 direcciones web mas visitadas según Alexa (Si! también hay porno).


Le vamos a preguntar al servidor DNS de MRW si tiene algunas de estas 500 paginas web en su memoria caché.

Os lo pongo en varios fotos, ya que la lista es algo "extensa".


Pues nada, si observamos la primera foto ya empezamos a ver las direcciones webs, tenemos a Taringa por lo que alguno estaría buscando algo para descargar, también tenemos Youtube, posiblemente algún vídeo que le hará falta en su trabajo, otro usuario se conecto a Netflix por lo que al igual alguna serie estaría viendo en horas de trabajo (diablillo!).


Ya empieza a parecer Twitter, tenemos Ikea la hostia!, alguien que se está mirando algún mueble...


También se encuentra Marca es bueno saber que la empresa cuenta con gente deportistas y que quieren estar actualizados en el deporte. También aparece Apple por lo que nos hace suponer que los salarios en la empresa también son buenos y llegan para comprar iPhones/iPad.


Ahí vemos un gran fallo de seguridad ya que en la lista tenemos a Paypal por lo que alguien ha utilizado su cuenta para pagar desde un dispositivo de la empresa y no el suyo personal (Muy mal!). También vemos a Mediafire eso eso, que no falte el warez y para rematar vemos a Mybrowserbar una barra de malware, por lo que ya nos hace suponer que usan Windows y encima tienen el dispositivo infectado.


Por supuesto que no puede faltar "porno" a nuestra lista! Con dos "kinders" la web de cam4, tenemos también la de HP por lo que también nos indica que disponen de alguna impresora HP en la oficina y por supuesto Tuenti, algún joven empleado buscando "rollo" para la noche.


La lista continua, pero creo que ya es suficiente la gran información que dispone la memoria caché de un servidor DNS.

Menos mal que esto no os puede pasar a vosotros, ya que seguro que borráis la memoria caché de vuestro navegador web y los temporales de vuestro equipo antes de apagarlo. ¿A que sí?

miércoles, 15 de febrero de 2017

Me entra SPAM! Y me tiene SPAMTADO!

Muchos os haréis la famosa pregunta: ¿Por qué me entra Spam?

Te llega propaganda de todo tipo:

- Bulos (Hoax): Tengo una enfermedad terminal, hazme el favor de compartir o donar tu dinero.
- Productos farmacéuticos ilegales: Viagra o Cialis.
- Cadenas (Chain letters): De la "nada" te aparece un email de que te ha tocado un coche o un iPhone, y tu vas y te lo crees.
- Estafas (Scam): Soy una chica rumana que estoy tremenda, me he enamorado de ti y necesito que me pagues el pasaporte y el viaje para ir a hacerte una visita. Al final la chica rumana no viene y te quedas sólo y con tu viagra. :P
- Timos (Phishing): Te llega un email de tu "supuesto" banco donde te pide con falta de ortografías y con enlaces sospechosos escondidos en un hipervínculo de un botón para escribir tu DNI, contraseña se acceso, CVC/CVV, número tarjeta, etc...

Después de conocer los tipos de spam que nos llega, vamos a descubrir desde donde procede el problema.

¿Cómo saben mi correo?

Muchos de vosotros pensaréis que habéis sido infectado con algún gusano o troyano que os está mandado estos correos. Podría ser, pero el 90% de los casos suelen ser tus propios "contactos". Si si, tus contactos están infectados por algún troyano o bien, les han robado sus cuentas y las están utilizando para hacer spam. Por eso, mucho del spam entra en tu bandeja de entrada (inbox) saltándose el filtro de tu proveedor de correos (Gmail, hotmail, yahoo...), ya que tus contactos tienen un trato "especial" y como son tus contactos tienen los permisos necesarios para enviarte cualquier correo.

Estoy seguro de que no mandas tus correos a través de ninguna VPN (Virtual Private Network) o con un cifrado PGP (Pretty Good Privacy) con dos claves (una pública y otra privada) ¿Verdad?

El correo electrónico no se inventó para ser seguro, por lo que la única seguridad que cuenta el correo electrónico es sólo a la hora de enviar dicho email (autenticando la cuenta con el servidor SMTP) pero el texto o mensaje se envía en "texto plano". ¿Lo vemos?


En el recuadro grande rojo, os marco como el mensaje va en "text/plain" (Texto plano). En el recuadro negro fino sería el servidor SMTP que han utilizado si miráis con atención no corresponde con el nombre del dominio que me lo ha mandado.

Emisor: info@mayoristasinformatica.es
Receptor: informaticocastellon@gmail.com (el menda)
Servidor SMTP: smtp9d0.consultorpc.com

Ya puesto que me está haciendo SPAM voy a ayudarle dándole publicidad yo también en mi blog... Allí van los datos de su WHOIS:


Como podemos observar tiene sus propias DNS, por lo que no utiliza su propio servidor de SMTP (chico listo!) Y utiliza otro servidor por varios motivos:

1. No consume recursos de su alojamiento web. 
2. En caso de baneos o blacklist su sitio web no estaría en la lista de SPAMMERS de los ISP (Internet Service Provider, Vodafone, Ono, Movistar...) y podría seguir operando con normalidad.
3. Los principales proveedores de correo electrónico (Gmail, Outlook, Yahoo..) también disponen de software o filtros con inteligencia artificial que bloquean estos correos. Por lo que tampoco le interesaría que no le llegaran sus emails a sus clientes que utilizan estos servicios.

Un ejemplo de Phishing:


Está cantado que no es BBVA, de hecho me ha llegado a mi lista de spam, tiene un archivo adjunto y a parte, un botón que me invita a que lo "Pruebe gratis" que majos!

Vemos el código fuente:  

 
 Si entras al sitio web está caído.... ¿Tapadera?

Tu máquina posible BOTNET

Pues si, posiblemente tu máquina esté troyanizada y/o tengan tus credenciales de tu correo y el SPAMMER la esté utilizando como su plataforma de spam. Utilizará el servidor SMTP de tu alojamiento web autenticándose con tu nombre de usuario y clave, enviando spam "a tutiplén" por los siguientes motivos:

- Para que pagar una fortuna si te puede usar a ti y de gratis!
- Consume tu correo y tu eres el que vas a la blacklist.
- De paso, pueden usar tu agenda de contactos (recuerda que tus contactos tienen un trato especial y su filtro de anti-spam se lo dejará pasar porque para eso sois amigos/conocidos ¿No?)

¿Cómo me han colado esta maravilla?

- Usando redes WIFI abiertas, donde has metido tu usuario y contraseña.
- Entrando en páginas de descargas y/o porno y has hecho clic en algún banner, botón y te has descargado e instalado algún plugin en tu navegador o app en tu smartphone.
- Con ingeniería social: Compartiendo y entrando en bulos, supuestos premios o concursos que has ganado en redes sociales, emails de tu supuesto banco o paypal que te pedían tus datos....
- Conectando un pendrive o disco duro de algún amig@ que tuviera algún malware o gusano que haya podido infectar tu máquina.

Son muchas las posibilidades, pero no es complicado detectarlo si tomas las siguientes medidas:

1. Nunca uses redes WIFI abiertas, y si las usas, nunca accedas a ninguna web o app que requiera el uso de usuarios y contraseñas. NUNCA!
2. Si descargas software pirata puedes ser infectado por un supuesto "crack" o "serial" para activar ese software. Hay un mundo de software "libre" y "gratuito" como alternativa a tus programas, encima son multiplataforma (Windows, GNU/Linux, MAC, ...) y te olvidas de infectar tu equipo.
3. Déjate de compartir chorradas por la red social, nadie te va a regalar un iPhone, ni un coche, ni un viaje... Lo único que harás será "animar" a tus contactos y ellos a los suyos y cuando el "ciberdelicuente" tenga las visitas que quiere, cambiará en enlace por uno malicioso y todo el que entre infectado.

Recuerda... "Si algo de pago te lo dan gratis.... es que tu eres el producto".

4. Antes de conectar un pendrive a tu equipo (y mas si es de un desconocido) ten por lo menos un buen antivirus actualizado y tu equipo actualizado al día. Escanea el usb antes de ejecutar archivos que contenga el dispositivo y sobretodo si algún archivo te parece "sospechoso" busca en internet.

5. Si te llegan correos de algún contacto, pues sé buen/a amig@ y avísale/a, ya que probablemente no lo sepa, que acuda algún profesional para que le asesore y desinfecte su máquina.

6. Si quieres mandar correos seguros deberás de cifrarlos y por supuesto, ten activada la "verificación en dos pasos". (Programas y verificación en dos pasos está todo aquí)


El SPAM es imposible de remediar, pero podemos ponérselo difícil al ciberdelincuente.

domingo, 5 de febrero de 2017

Hackeando un PLC Siemens S7-1200
Vivimos en una época que todo (o casi todo) ya está conectado a internet, el post que os traigo hoy me ha llamado mucho la atención, ya que no me imaginaba que un PLC instalado y configurado en una industria (fábrica cerámica por ejemplo) pudiera/debiera estar conectado a internet. 

Claro que es normal, es uno de los objetivos de los técnicos y/o fabricante, poder acceder al dispositivo y auditarlo a distancia sin tener que desplazarse ningún técnico. Pero... ¿Y si fuera una puerta trasera? ¿Os imagináis la maleza que podría causar a una industria tener parada una línea por problemas con el autómata?

¿Cómo he descubierto esto?

Sinceramente, me he tropezado con él, estaba haciendo una barrido aparatos estaban conectados a internet para conocer un número "aproximado" de cuantos estarían en riesgo, simplemente para implementarlo en una charla sobre seguridad que estoy preparando.

Al escanear me encontré con una IP, rápidamente la chequeé y este fue el resultado:


Era accesible por la menos dos puertos (80 para administrarlo vía web y 102 para accesos por control remoto o troyanos).


Con estos datos me saltó mi sentido "arácnido" y no me quedó mas remedio que seguir indagando.


Ahí lo tenemos, le hice un escaneo de puertos para saber si existía alguna forma mas (si!! con esos dos puertos abierto era mas que suficiente tener acceso a él).




Si os fijáis en la barra de desplazamiento, toda esa lista de puertos tienen abiertos el dispositivo, por lo que me hace pensar que el PLC no incorpora ningún firewall o si lo lleva, lo tiene de "broma" (desactivado). :P


Lo siguiente que hice fue probar a identificarme con el aparato, simplemente para ver el nivel de seguridad y de ser así, que tipo de autenticación y cifrado utiliza. 

La verdad, al parecer no lleva ni contraseña o está en "blanco" ya que el VMAUTHD en fuerza bruta entró sin problemas.... Al parecer la seguridad no es un fuerte para Siemens, o al menos, para este aparato.


Hasta aquí lo dejé, porque ya entrar en él o hacer alguna acción "delictiva" no es mi filosofía, ni era la intención al crear este artículo.

¿Que conclusión puedo sacar?

Mi opinión personal sobre esto es que Siemens tiene en sus aparatos (o al menos en este) puertas traseras instaladas y posiblemente, sin informar a sus clientes sobre estas acciones.

No creo que sea para robar información a la empresa, porque la función de un autómata como este es simplemente de configuración de una máquina.

Pero... ¿Y si la usaran para estropear el dispositivo y tener que ir sus técnicos a solucionarlo?

La respuesta os la dejo a vosotros. ;)