viernes, abril 16, 2021

Si has probado el macramé y no te gusta, hazte un BootCamp profesional como Full Stack Developer con beca y todo #HackYourCareer

No sé si lo sabías, pero el término Bootcamp que hoy en día se utilizan en las formaciones intensivas y de alto carácter práctico y orientación profesional, tiene un origen militar. Viene de los famosos entrenamientos en los que se adiestraba a los soldados de manera intensiva para adquirir rápidamente una condición física apropiada, unas habilidades especializadas y una disciplina ejemplar... y en un tiempo récord.

Figura 1: Si has probado el macramé y no te gusta,
hazte un BootCamp profesional como
Full Stack Developer con beca y todo.

En el mundo de la tecnología, los Bootcamps se hacen de Ciberseguridad, de Inteligencia Artificial, de Big Data, y cómo no, de programación. Todos estos "Bootcamps" tienen el mismo objetivo, ponerle las pilas a los asistentes para que puedan ir a la "guerra" en el mundo profesional. En el Bootcamp de Full Stack Developer de GeeksHubs Academy es lo mismo, pero aplicado al código como forma de sacar proyectos tecnológicos, de crear plataformas, productos, servicios que puedan ser el motor de una startup basada en tecnología, y la disciplina se tiene que construir con uno mismo, con una buena planificación personal para sacar con éxito los objetivos.

En el Bootcamp Full Stack Developer de GeeksHub Academy la disciplina de superación es fundamental, porque es una formación intensiva de 12 semanas pero sobre un proyecto full-time que requiere el 100% o el 120% de tu dedicación para conseguir sacarlo, superar la formación y estar listo para graduarte en el campo de batalla real, es decir, trabajando, ya que está totalmente enfocado a una inmersión laboral en el sector tecnológico - ya sea en un gran equipo o una startup tecnológica -, poniendo en práctica desde el primer día metodologías ágiles de trabajo y dinámicas propias de un profesional.

Además, la mayor diferencia que tiene este Bootcamp Full Stack Developer es su compromiso con tu aprendizaje y tu inmersión laboral, hasta tal punto que GeeksHubs Academy beca tu formación y comenzarás a pagar el curso cuando hayas "hackeado tu carrera profesional", ya que lo harás solo cuando te incorpores al mercado laboral como programador/a. Es decir, que solo cuando empieces a estar en el campo de batalla, listo, es cuando pagas esta formación.

Esta es una actividad como parte del compromiso social y la misión de esta Coding School cuyo objetivo es transformar el futuro de la educación tecnológica y ser parte de tu transformación. Y cada hora de este Bootcamp ha sido planificada con una metodología orientada a que seas capaz de transformar tu perfil profesional con un modelo disruptivo de formación que será cómo funcionarán las escuelas del futuro: Compartiendo tú éxito, por lo que se pone mucho foco en actitud, constancia y pasión, que son los tres grandes pilares sobre los que se basa gran parte del secreto de los que consiguen sus sueños. Soñar, con los ojos abiertos.

Figura 2: Alumnos del BootCamp de Full Stack Developer

Es posible que te hayan dicho, o que pienses que con estas premisas este Bootcamp de Full Stack Developer es muy duro. Pues sí, lo es, pero si crees que la vida profesional va a ser menos intensa y dura...¿has probado el macramé?... Por eso es tan importante hacerlo de la mano de profesionales con experiencia y casos de éxito que demuestran la validez de este método. Eso sí, vas a trabajar duro en esta formación sí o sí. Pero si crees que Chaume Sánchez - CEO de GeeksHub -,  o que yo, o que la gran mayoría de los que he tenido la suerte de trabaja con ellos en los últimos 20 años en el mundo de la tecnología no se han dejado las pestañas, de verdad, mira lo del macramé.

Figura 3: Todas las formaciones llevan un libro de 0xWord y 500 Tempos de MyPublicInbox

Mirando los datos, esta formación no se paga hasta que no tengas trabajo, porque el nueve de cada diez de los "cadetes" que pasan por GeeksHubs Academy encuentra trabajo tras este Bootcamp, pero para ello no hay magia. Hay que trabajar para estar listo y poder ir al campo de batalla. Y si has soñado en ser un creador de tecnología, en montar tu startup tecnológica, en ser un gran creador de tecnología, cuanto antes te pongas en forma mejor.


La próxima edición comienza en Madrid el 10 de Mayo, y son 12 semanas a razón de 40 horas a la semana con el proyecto, así que si querías algo intenso y rápido, esta es tu formación. En tres meses has pasado de calzarte las botas a estar listo para tus proyectos de creación de tecnología. Pero si tienes alguna duda puedes consultar con Javier Rodríguez que es el CTO  en GeeksHub y uno de los que lideran de esta formación y le tienes en MyPublicInbox. Nota: Hay una edición en Valencia que comienza el día 26 de Abril, pero creo que estaba ya completa. No obstante, si tienes interés pregunta por si hubiera una plaza de última hora.

Además, todos los que estén en este Bootcamp de Full Stack Developer, estarán conmigo en la charla que tendremos para hablar de cómo hackear tu carrera profesional, de cómo emprender en tecnología y de las dudas y cuestiones que los asistentes hagáis, que esas charlas siempre son divertidas, sorprendentes e insospechadas.

jueves, abril 15, 2021

WhatsApp y la desactivación de cuentas con un mensaje de e-mail

Hace un par de días publiqué en el blog el artículo de "WhatsApp: Cómo un atacante puede bloquear tu cuenta sin que la puedas desbloquear" escrito por Luis Márquez Carpintero y Ernesto Canales Pereña en el que se "weaponizan" dos características de seguridad de WhatsApp, para convertirlo en un ataque para la personas.

Figura 1: WhatsApp y la desactivación de cuentas con un mensaje de e-mail

Esto no es la primera que sucede, y es algo bastante más habitual de lo que las personas se pueden imaginar. En este tipo de escenarios, una medida de seguridad mal diseñada acaba convirtiéndose en un problema - en este caso de disponibilidad del servicio - para un usuario. Si quieres ver muchos ejemplos de esto, di una conferencia el año pasado sobre justo este tema que se llamaba "Weaponizing Features", donde explicaba muchos ejemplos de estas mismas características.

Figura 2: Conferencia de Weaponizing Features

En el caso concreto del bloqueo de la cuenta de WhatsApp, lo que hacen los investigadores es explotar o "weaponizar" de dos medidas de seguridad. Por un lado la de medida de seguridad que evita los ataques de fuerza bruta o adivinación de los códigos de activación de enviados por SMS, con una protección temporal para hacer inviable prácticamente en tiempo útil un ataque de esas características, y una segunda medida de protección - y esta es la más curiosa - por la que un usuario (cualquier) puede desactivar cualquier cuenta de WhatsApp, sea la suya o no, con un simple mensaje de correo electrónico.

Figura 3: Luis Márquez Carpintero, uno de los investigadores de este bug.

La explicación de cómo funciona este correo electrónico para desactivar una cuenta está en la web de WhtasApp, y existe para proteger la privacidad de un terminal ante robos o pérdidas de dirección de e-mail. Basta con que se envíe un mensaje de e-mail al la dirección de WhatsApp, y listo, la cuenta se desactiva.

La explicación de esta medida es fácil. Un usuario sufre el robo de su teléfono desbloqueado, y lo que debe hacer automáticamente es llamar para bloquear la SIM, urgentemente, y evitar así que se reciban llamadas o códigos de verificación por SMS, y luego pedir un cierre de sesión siguiendo el mecanismo antes explicado.
Lo que hace endiabladamente sutil y peligroso es esa regla de "usabilidad", por la que desde cualquier dirección de e-mail se pueda bloquear cualquier sesión en cualquier número de teléfono registrado en WhatsApp. Es verdad que, una dirección de e-mail solo puede usare una vez y para un solo número de teléfono, lo cual es un acierto como forma de mitigar un poco el ataque descrito en el artículo de hace dos días, con lo que una persona que quiera estar cerrando sesiones de WhatsApp debe estar creando mensajes de correo electrónico nuevos cada vez.

Figura 5: Sesión de WhatsApp cerrada por un e-mail

Por supuesto, esta medida es también fácilmente saltable para un atacante con hacer un poco de spoofing de e-mail, suplantando en cada petición una dirección de correo diferente, lo que la hace un poco inútil. Y es algo curioso, pues de nuevo, el correo electrónico - ese caos maravilloso que digo yo - se ha convertido no en un sistema de comunicación sino en algo más, que como ya explicaba en el artículo de "El e-mail ha muerto. ¡Larga vida al e-mail!", le hemos ido dando atribuciones más allá de la de ser un buzón de comunicación.

Llegados a este punto, lo que pasaba por mi cabeza durante el día de ayer, era... ¿cómo puede WhatsApp mitigar este ataque de una manera más racional? Pues usando características extras de protección a la cuenta y mitigación de weaponización.

Por ejemplo, si el usuario tiene un 2FA de WhatsApp asociado a un e-mail, que solo pueda ser desactivada la cuenta de esa dirección de e-mail. Esto dificultaría al atacante la explotación porque tendría que conocer y adivinar cuál es la dirección de e-mail configurada como 2FA. Cuando se configura ese 2FA ya se asocia, implícitamente, la seguridad de la cuenta a la seguridad del e-mail, y además es una solución bastante curiosa, porque realmente no es demasiado práctica si el e-mail está protegido por un 2FA basado en SMS, como os expliqué en el artículo de "WhatsApp y la paradoja de la SIM como Verificación en 1 paso", pero al menos sirve para eso, para asociar un e-mail a un cuenta de WhatsApp, que en este caso puede tener mucho sentido.
Luego, se pueden buscar otras soluciones de mitigación, como por ejemplo hacer un desafío al e-mail para garantizar que no es un correo electrónico suplantado. Para ello, el proceso de desactivación debería ser en dos pasos. Paso uno, se pide la desactivación de la cuenta. WhatsApp genera un OTP y se lo devuelve por e-mail a la dirección de correo electrónico que pide la petición de desactivación. El solicitante de la desactivación envía la confirmación de la desativación con el OTP, para así garantizar que ese correo existe y no está suplantado. Esto reduciría la facilidad de "weaponización" de este ataque.

Y por supuesto, buscar otras soluciones por las que la re-activación no se pueda ver bloqueada por un esquema similar, dando al usuario alguna otra forma de reactivar la cuenta y evitar el bloqueo de los códigos de verificación de forma tan sencilla y automatizable. 

En cualquier caso, este es un ejemplo de una medida de seguridad que se convierte en un problema para la vida del usuario, no solo para su usabilidad, sino también para la disponibilidad, por lo que debe servirnos como ejemplo y muestra del cuidado que debemos tener en cada implementación de una nueva medida de seguridad, que nuestro objetivo es hacerle la vida más segura y fácil, y no nada de lo contrario.

miércoles, abril 14, 2021

Qué es una DLL y en qué consiste el DLL Hijacking

La primera vez que nos topamos con el concepto de DLL Hijacking puede resultar un poco tedioso o difícil de comprender. Es habitual acudir a tutoriales y vídeos sobre este ataque para luego replicarlo - y en El lado del mal se ha hablado muchas veces de DLL Hijacking - y comprender en qué consiste. Aunque esto es una buena idea, creo que merece la pena invertir algo de tiempo en comprender algunos fundamentos teóricos relacionados con las DLLs y la forma en la que impacta en la seguridad de Windows.

Figura 1: Qué es una DLL y en qué consiste el DLL Hijacking

Además, como los más expertos saben, esta técnica de DLL Hijacking es una de las utilizadas en esquemas de elevación de privilegios, bypass de AMSI, evadir AppLocker, y, por supuesto, para escapar del User Account Control, en proyectos de Red Team que necesitan de realizar un Hacking de Windows, por lo que hay que conocer los detalles de esta técnica para avanzar en nuestros proyectos de Ethical Hacking.

Figura 2: Libro de Hacking Windows en 0xWord
de Valentín Martín, Carlos García y Pablo González

Para entender lo que es una DLL y la función que cumple vamos a prestar atención a su nombre: Biblioteca de Enlace Dinámico. Si programas en algún lenguaje compilado, como los de la familia del lenguaje de programación C, sabrás que una biblioteca no es otra cosa que un archivo que contiene código (como un conjunto de funciones) ya compilado y listo para ser usado en nuestros propios desarrollos.

Esto nos permite reutilizar código optimizado, testado y bien documentado para ahorramos trabajo y no “reinventar la rueda” como se suele decir. Para hacer uso de una biblioteca, un programa llamado "linker" tiene que enlazar (o vincular) esa biblioteca con nuestro código. Este enlace puede hacerse de dos formas distintas: de forma estática (Static Linking) o de forma dinámica (Dinamic Linking).

Enlace estático (Static Linking)

En este caso el "linker" enlaza la biblioteca justo después de compilar nuestro código y como resultado de este enlazamiento se obtiene el ejecutable final. A efectos prácticos se puede entender este proceso como si el "linker" hiciese un “copia y pega” de las funciones de la biblioteca estática directamente a nuestro código.

Esta forma de enlazar una biblioteca tiene sus ventajas y sus inconvenientes. Imagina que en tu sistema están corriendo diez programas que hacen uso de una misma biblioteca. Cada uno de esos programas tendría que haberse compilado y enlazado con la biblioteca, aumentando el peso de cada ejecutable en el disco y el espacio que ocupa el proceso en la memoria. Que cada uno de estos programas cargue la misma biblioteca en memoria es algo que no parece muy eficiente, por esta razón existe el enlace dinámico.

Enlace Dinámico (Dinamic Linking)

Para solucionar esta duplicidad de bibliotecas cargadas en la memoria y obtener ejecutables más ligeros se hace uso de bibliotecas compartidas o de enlace dinámico: las famosas DLLs de Windows o los archivos .so (shared object) que tan importantes son también para la seguridad y la explotación de vulnerabilidades en GNU/Linux

Figura 3: Diferencias entre el enlace estático y el enlace dinámico de bibliotecas

En esencia, estas bibliotecas se cargan en un espacio propio de la memoria del sistema y pueden ser accedidas por uno o varios procesos en tiempo de ejecución. Siguiendo con el ejemplo anterior; esos diez procesos harían uso de una misma biblioteca compartida que se ha cargado una sola vez en una partición de la memoria. En la figura anterior se ve más claramente las diferencias entre estas dos formas de vinculación:

La búsqueda predefinida de DLLs en Windows

En posteriores artículos de esta serie profundizaremos más en la manera en la que se vinculan los ejecutables de Windows con las DLLs, pero de momento nos basta con saber que hay dos formas de hacerlo: mediante la vinculación implícita y la explícita.
  • Vinculación implícita (Implicit linking): las DLLs se cargan en la memoria a la vez que el programa que las usa. Es decir, Windows busca las DLLs que tiene que cargar al ejecutar el programa.
Figura 4: Prototipos para LoadLibraryW y LoadLibraryExW
  • Vinculación explícita (Explicit linking): en este caso el sistema carga las DLLs cuando son llamadas por el programa mientras éste se está ejecutando. Esto se consigue mediante el uso de las funciones LoadLibrary y LoadLibraryEx cuyos prototipos son los de la figura anterior.
Lo importante aquí es el parámetro lpLibFileName que reciben estas funciones y que puede hacer referencia a la ruta absoluta o también al nombre de la DLL que el sistema debe cargar. Si la DLL se vincula implícitamente o si en la vinculación explícita no se especifica una ruta en la función LoadLIbrary/LoadLibraryEx, el sistema operativo Windows se encarga de buscar la DLL siguiendo un orden preestablecido. Conocer este comportamiento de Windows es el primer paso para entender el DLL Hijacking, por eso merece la pena prestarle atención a la siguiente figura:

Figura 5: Orden de búsqueda de DLLs de Windows

Antes de buscar la DLL en los archivos del sistema Windows hace dos cosas. Primero comprueba si la DLL está ya cargada en memoria. En caso afirmativo el proceso de búsqueda, se para aquí. Después comprueba si la DLL pertenece a una lista conocida como "Known DLLs". Si está en esa lista, el sistema usará su propia copia de la DLL (incluyendo las dependencias de esa DLL). Puedes encontrar la lista de los "Known DLLs" para tu sistema en el registro:

Figura 6: HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\KnownDLLs.

En cualquiera de estos dos casos la DLL se vinculará con el programa y no existirá oportunidad para un ataque de DLL Hijacking. De otra forma, cuando la DLL no está cargada en memoria y no pertenece a las Known DLL Windows buscará la DLL en los directorios en el orden especificado en la figura anterior.

Figura 7: Máxima Seguridad en Windows Gold Edition
de Sergio de los Santos en 0xWord

De todos estos directorios los más interesantes de cara a un ataque DLL Hijacking son los sombrados en rojo: el propio directorio de la aplicación y aquellos directorios definidos en la variable del sistema %PATH%, ya que son aquellos que tienen mayor probabilidad de contar con permisos mal configurados.

¿Qué es el secuestro de DLL o DLL Hijacking?

Llegados a este punto podemos definir el DLL Hijacking como el abuso de esta búsqueda sistemática de Windows mediante la detección de permisos mal configurados en los directorios en los que se buscan las DLLs. El objetivo de un ataque de DLL Hijacking es aprovechar permisos de escritura en uno de estos directorios para depositar en él una DLL con el mismo nombre que la DLL legítima pero que contenga código malicioso. 

De esta manera el sistema encontrará y cargará esa DLL antes que la DLL legítima que se pretendía cargar. El código malicioso que se introduce en la DLL suele tener el objetivo de elevar privilegios en el sistema, si el proceso que carga esa DLL se ejecuta con privilegios altos, o de generar persistencia si es un proceso que se ejecuta frecuentemente o al iniciarse el sistema.


Figura 8: DLL Hijacking para hacer un bypass de UAC en Windows 10

Aunque el concepto es siempre el mismo, se puede hablar de diferentes variantes o técnicas de DLL Hijacking. Al buscar información sobre este ataque es probable que te encuentres con términos como DLL Sideload o Phantom DLL Hijacking:
  • DLL Sideload: Cuando se cuenta con permisos de escritura en un directorio que aparece en el orden de búsqueda antes que el directorio donde se encuentra el DLL legítimo. En ese directorio se pondrá la DLL maliciosa.
  • Phantom DLL Hijacking: Cuando el DLL no se encuentra en ninguno de los directorios donde se busca y se tienen permisos de escritura en alguno de estos directorios, por lo que se depositará la DLL maliciosa ahí.
Cómo protegerse del DLL Hijacking

Desde el punto de vista de un programador puedes proteger tu programa del DLL Hijacking teniendo en cuenta algunas buenas prácticas de desarrollo:

1) Usar el Full Path de la DLL en las funciones LoadLibraryW / LoadLibraryA y consultar la documentación de las funciones LoadLibraryExW / LoadLibraryExA ya que permiten usar flags para modificar el comportamiento de búsqueda de DLLs por defecto. También hay que tener en cuenta que, cuando la DLL que se va a cargar tiene dependencias, éstas dependencias van a ser buscadas por Windows mediante la búsqueda sistemática habitual incluso cuando hemos especificado el Full Path para esa DLL.

2) Siempre que sea posible se deberían usar DLL firmadas y verificar esa firma antes de cargar la DLL en la memoria. Otra opción es comprobar el hash de la DLL para evitar cargar un DLL cuya integridad ha sido comprometida.

3) No es recomendable instalar programas en la raíz de una partición (por ejemplo: “C:\”) ya que por defecto los directorios creados en la raíz conceden permisos de escritura a cualquier usuario autenticado y es fácil olvidar configurarlos correctamente.

Y, por supuesto, una vez desarrollada tu aplicación conviene analizar su comportamiento para saber si es vulnerable al DLL Hijacking. Esto mismo es lo que haremos en el siguiente artículo de la serie, junto a una demostración del ataque en una aplicación vulnerable.

martes, abril 13, 2021

WhatsApp: Cómo un atacante puede bloquear tu cuenta sin que la puedas desbloquear

No es la primera vez que en se habla en El lado del mal de “puntos flacos”, debilidades o leaks que WhatsApp ha sufrido y sufre con respecto a la privacidad y seguridad de sus usuarios. Desde debilidades que WhatsApp ya ha arreglado, como la que permitía desbloquearse con un servicio, trucos para esquivar el check azul o para lo contrario, para saber si un usuario ha leído o no un mensaje.

Figura 1: WhatsApp: Cómo un atacante puede bloquear
tu cuenta sin que la puedas desbloquear

También se han visto problemas más serios, como el bypass del SceenLock con FaceID en una versión de WhatsApp, o el posible de robo de una cuenta mediante el acceso a los códigos de recuperación enviados al buzón de voz, como nos contó Yaiza Rubio, pasando por leaks como el que permite saber el nombre de cualquier usuario que te ha enviado un mensaje, los ataques a las empresas mediante el robo de cuentas o mil y un trucos para espiar WhatsApp que se han podido utilizar a lo largo del tiempo.

Figura 2: Libro de Hacking iOS:iPhone & iPad (2ª Edicón) en 0xWord de
Chema Alonso, Ioseba Palop, Pablo Gonzáleez y Alejandro Ramos entre otros.

Y son más que recomendables los artículos de Proteger WhatsApp a prueba de balas: Seguridad y Privacidad, además de entender bien cómo se puede hackear un sistema operativo iOS de iPhone&iPad, al igual que un sistema Android, que al final es en ellos en los que recae la seguridad del sistema, como cuando se explicó cómo robar una cuenta de WhatsApp de un sistema Android comprometido.

D.o.S. a una cuenta de WhatsApp

Hoy vamos a centrarnos en un ataque de Denegación de Servicio (D.o.S.: Denial of Service) que puede hacer que tu cuenta de WhatsApp se quede inutilizada durante un tiempo indefinido, gracias a que la app de WhatsApp permite realizar intentos infinitos a cualquier atacante sobre un número de teléfono asociado a una cuenta de WhatsApp de su víctima.

Esto es sencillo de entender, porque como ya sabe todo el mundo, la forma en la que WhatsApp verifica la propiedad de una cuenta es mediante un SMS de verificación, o una llamada de voz asociada a un número de teléfono.


Figura 3: Solicitud de Código de la validación de WhatsApp

De esta forma, al introducir el código recibido en la aplicación somos capaces de verificar que ese usuario efectivamente es el poseedor de la línea y quiere iniciar sesión o registrarse en WhatsApp.  Conociendo este sistema, es fácil que surja la siguiente pregunta, ¿sería posible realizar un ataque de fuerza bruta introduciendo infinidad de códigos SMSs en la aplicación hasta dar con el correcto? 

Pues bien, para que esto no suceda, tras el octavo intento WhatsApp pone un temporizador de 12 horas en el que se impide introducir códigos de SMS para ese número, desde cualquier dispositivo (incluido el de la víctima).

Figura 4: Advertencia de no poder probar más códigos

Esto, tiene cierto sentido, de esta manera evitaríamos que un atacante con dispositivos ilimitados pudiese probar códigos de SMS ilimitados, pero también, como vamos a ver, tiene un problema que puede ser explotado por una atacante para hacer un ataque de D.o.S.

Figura 5: Demo de bloqueo de códigos de verificación de víctima

Como se ha visto en el ejemplo, pedir códigos SMS hasta que WhatsApp bloquee los SMS de verificación durante un periodo largo de 12 horas es, por separado, un ataque bastante "inofensivo", pues solo afectaría a la víctima en caso de ella quisiera iniciar sesión en otro móvil en esas primeras 12 horas, algo poco habitual. Sin embargo, y como hemos explicado en Forbes esto puede ser más peligroso de lo que parece.

Figura 6: Envío a WhatsApp notificando la perdida de nuestro terminal.

El problema de este ataque es que, con la combinación que habilita WhatsApp para cerrar la sesión de tu móvil sin autenticación previa, de forma remota y de manera automatizada, con simplemente enviar un e-mail a la dirección support@whatsapp.com con el contenido de mensaje:

"Lost/Stolen: Please deactivate my account +34 XXX XX XX XX"

La única "limitación" es que solo se puede enviar un e-mail de este estilo por cuenta de correo y por número de teléfono. Pero aún así, con solo un mensaje de este tipo, llegados a este paso la víctima verá el siguiente mensaje, en el que presionando cualquiera de los botones se pedirá que se vuelva a validar.

Figura 7: Notificación de que te han expulsado de la sesión actual de WhatsApp

Ahora, al probar con cualquier código de verificación de cuenta, incluso el último correcto que haya recibido, la víctima estará fuera de WhatsApp y no podrá iniciar sesión hasta pasadas 12 horas, que es cuando podrá pedir un nuevo código de verifación que se utilizable.

Figura 8: Advertencia al introducir el código correcto.

El problema es que, si el atacante quiere que esto sea permanente solo deberá realizar el mismo ataque de fuerza bruta probando SMSs hasta en tres ocasiones, una vez transcurran las 12 horas, para conseguir otro bloqueo de igual periodo de tiempo. En este momento la cuenta atrás dejará de marcar 12 horas para marcar -1 segundos, habiendo bloqueado la cuenta permanentemente.

Figura 9: Tras el tercer intento el contador marcará “-1 segundos” siendo permanente.

Si eres un lector de este blog probablemente te guste tener tus cuentas lo más protegidas posibles, eso incluye, las que ya hemos comentado previamente. No obstante, y hasta que WhatsApp solucione el fallo, todos somos vulnerables a un tipo de ataque en el que ni la verificación en dos pasos podría ayudarnos, así que ten mucho cuidado con quién compartes tu número de teléfono.

Saludos,

lunes, abril 12, 2021

Máster Online en DevSecOps: Hasta el 27 de Abril puedes apuntarte #DevSecOps #SecDevOps

Como ya os había dicho en la entrada anterior, uno de los roles profesionales que más demandados se han hecho en los últimos cinco años y que tiene que ver con la ciberseguridad es el de DevSecOps o SecDevOps, que de las dos formas lo han estado solicitando las empresas. Este rol busca tener especialistas que automaticen los despliegues de los entornos, los entornos de seguridad, los desarrollos realizados, utilizando scripts automatizados que cubran todas las fases de ciclo de desarrollo y puesta en producción de un servicio con, por supuesto, todas las fases de seguridad.

Figura 1: Hazte un "Máster" en DevSecOps

De este tipo de actividades hemos hablado mucho por aquí, como hablaba hace poco del trabajo de SecDevOps y las Linux Capabilities, o el artículo que debes leer para entender bien este trabajo que se llama "SecDevOps: una explicación en 5 minutos (o alguno más)" donde vas a ver cómo se aplican los conocimientos de estos profesionales a las diferentes fases de la construcción de tecnología en las empresas. Esta, como ya he dicho es una profesión de las más demandadas hoy en día.
Como ya sabéis, nosotros hicimos el libro de Docker: SecDevOps escrito por Fran RamírezElías Grande y Rafael Troncoso en 0xWord precisamente por esta alta demanda para roles de ciberseguridad, y en el Campus Internacional de Ciberseguridad se ha diseñado el Máster en DevSecOps que dirigen nuestros compañeros Pablo González y Juanjo Salvador. La nueva fecha de inicio será el próximo 27 de Abril de 2021.
Para este Máster Online de DevSecOps, el temario que se ha trabajado cuenta desde la parte pura de operaciones, hasta la parte pura de seguridad, para mezclar ambas con automatización de scripts en entornos de gestión de infraestructura, gestión de aplicaciones, y cumplimiento normativo, con un Trabajo Final de Máster que hemos diseñado los profesores. Estos son los módulos.

Módulo 1.- DevOps: Filosofía e Introducción.
Módulo 2.- DevOps: Construyendo la base.
Módulo 3.- DevSecOps: Ciclo de vida de desarrollo seguro.
Módulo 4.- DevSecOps: Monitorización.
Módulo 5.- SAST: Pruebas de seguridad a aplicaciones estáticas.
Módulo 6.- DAST: Pruebas de seguridad a aplicaciones dinámicas.
Módulo 7.- Infraestructura y Compliance.
Módulo 8.- Gestión de Vulnerabilidades.
Módulo 9.- Trabajo Final de Máster.

Dentro del Trabajo Fin de Máster yo, que como sabéis estoy de Mentor en el Campus Internacional de Ciberseguridad, he propuesto varios trabajos para diferentes Másters, así que lo mismo uno de estos trabajos acabas haciéndolo conmigo, si te gusta lo que yo propuesto, lógicamente.
El profesorado de este Máster Online DevSecOps, pues es de envidiar, por supuesto. Pablo González al que ya conocéis de muchos años conmigo por aquí, Fran Ramírez, Elías Grande y Rafael Troncoso que son los autores del libro de Docker:SecDevOps, Javier Espinosa, Head of Software de Movistar Home y Living Apps en mi unidad CDCO de Telefónica, Juanjo Salvador, Daniel Echeverry, escritor de los libros de Python para Pentesters [2ª Edición], Hacking con Python y DeepWeb: Tor, FreeNet e I2P, y Ricardo García, QA de seguridad en Telefónica.
Figura 5: Libro de Docker:SecDevOps

Además, todos los alumnos de este Máster Online de DevSecOps tendrán como material de complemento para su formación, el libro de Docker:SecDevOps de Fran Ramírez, Elías Grande y Rafael Troncoso que hemos publicado en 0xWord y 500 Tempos de MyPublicInbox para poder consultar con ellos con cualquiera de nosotros cualquier duda, así que después de esta formación, si la aprovechas estudiante, sales listo para empezar a trabajar en estos roles tan demandados. Si quieres más información para convertirte en un "máster" en DevSecOps puedes pedirla en la web de Máster Online DevSecOps.

¡Saludos Malignos!

domingo, abril 11, 2021

La trilogía de Mara Turing en @0xWord : "El despertar de los hackers", "El renacer del mal" y "Los archivos perdidos de Falko"

Desde hoy ya puedes conseguir los libros de la Trilogía de Mara Turing en 0xWord - formada por "Mara Turing 1: El despertar de los hackers", "Mara Turing 2: El renacer del mal" y "Mara Turing 3: Los archivos perdidos de Falko" -  junto con el resto de los libros de nuestra editorial. Hemos llegado a un acuerdo con Javier Padilla, escritor y creador de Mara Turing, para que formen parte del catálogo de libros técnicos, cómics, y novelas de hackers y hacking que tenemos en 0xWord, 0xWord Cómics y 0xWord Pocket.
Tienes la trilogía completa disponible y si compras los libros dentro de cualquier pedido que incluya cualquier otro material, no tendrán ningún coste de envío extra, ya que irán todos dentro del mismo paquete, con lo cual puedes pedirlo junto al resto de los libros que hay en el catálogo.


De los libros ya os hablé en el pasado, son libros fascinantes y emocionantes para que los jóvenes se metan en este mundo, conozcan más del mundo de los hackers, del hacking de la tecnología y de las aventuras, de la mano de una niña llamada "Mara Turing" y sus amigos.


Mi hija mayor, de doce años, escribió un artículo sobre ellos que os publiqué hace tiempo en el post de "El despertar de los hackers" de diciembre del año pasado, así que podéis ver, más o menos, que para esas edades son lecturas más que recomendadas.


El autor de esta saga de novelas es Javier Padilla, emprendedor, escritor y amante de la tecnología, que además ha tenido la suerte de recibir por "Mara Turing 1: El despertar de los hackers" el Premio al mejor libro de ficción para jóvenes adultos en los Latino Book Awards de Los Ángeles.
Desde hoy puedes solicitar la Trilogía completa de Mara Turing en 0xWord, y si quieres contactar con el equipo de Mara Turing o con Javier Padilla, puedes hacerlo a través de MyPublicInbox, donde tienen abiertos sus buzones públicos. 


También, si lo deseas, puedes utilizar Tempos de MyPublicInbox para comprar los libros de 0xWord, o para solicitar códigos descuentos, tal y como os contamos en este artículo el verano pasado. Si tienes que hacer un regalo a un niño o niña de 10 a 16 años que le gusta la tecnología y el hacking, este es una buena opción para educar, entretener y animarle al mundo de la lectura.

¡Saludos Malignos!

sábado, abril 10, 2021

Entrevista a Nico Castellano, fundador de "No cON Name", la primera CON de Hacking en España

Hoy os dejo por aquí una pequeña entrevista que le he hecho a Nico Castellano, fundador de No cON Name, la más longeva CON de Hacking en España, que nació en Mallorca, que ha pasado una década desde que le hice la última entrevista. Yo, por supuesto, miraba con admiración el nacimiento de este movimiento, y por supuesto estuve participando en algunas ediciones como ponente.

Figura 1: Entrevista a Nico Castellano, fundador de "No cON Name",
la primera CON de Hacking en España

Nico Castellano es una persona de fuertes convicciones, heredado sin duda de su padre al que tuve la suerte de conocer, y ha dejado su impronta en la comunidad de hackers de este país. Constante, trabajador y luchador, ahora lleva su propia empresa de ciberseguridad y hacking en Barcelona, llamada Andubay.
En la charla de la entrevista de hoy hablamos de cómo fue el inicio, de cómo es la No cON Name hoy, y sobre la propuesta de hacer esa asociación de CONs en España de la que os hablaba hace poco. Pero si quieres conocerlo más, puedes contactar con Nico Castellano en su buzón público de MyPublicInbox. Aquí tienes las preguntas y respuestas.


1.- Crear la primera CON de Hackers en España no debió ser sencillo, ¿cómo surgió la idea y cómo lo sacasteis adelante?

Sabíamos que en España se habían celebrado CONs bajo invitación, y aún éramos unos chavalillos (20 años) con las hormonas disparadas, muchas ganas de aprender y ganas de desvirtualizarnos (a nosotros y a otros hackers que habíamos conocido en el IRC, que pienso que ahora podría ponerme a contar historietas pero podríamos dejarlas para un Hackstory II si Mercè se anima). 

Las dificultades para asistir a esas CONs eran evidentemente, el mar y nuestro poder adquisitivo. El primer intento en 2001 llegamos a ser unos 20 en un local de copas de plaza de la reina en Palma (con barman incluido). En 2002 ya fuimos en serio, me acuerdo que un conocido me "vendió la moto" que le había pedido a VISA (la de las tarjetas de crédito) que nos esponsorizara la CON (para pagar los gastos y meter a 120 personas en una sala de actos, lo habíamos vestido todo como que era un evento que las empresas se beneficiarían de ello). 

A dos meses y medio de la celebración partíamos de cero, los que organizábamos salvo otros dos y yo hicieron bomba de humo (más adelante se volvieron a unir cuando vieron que se solucionó todo). Pude entonces tirar de amigos y aprovechar unas instalaciones que habían costado muchísimo dinero de todos los contribuyentes y que... ¡oye! las estrenamos nosotros con mucho gusto. A parte del Staff, se unieron a echar un cable un equipo de gente con el que estuve bastante unido y que organizaba lan-partys: Balearikus-Party.

2.- La llegada de las CONs de Hacking a España han cambiado nuestra profesión, y esto es algo que no ha sucedido en otras disciplinas profesionales, ¿erais conscientes de estar comenzando un camino que impactaría tanto en la vida de las personas o era solo pura diversión?

Es innegable que las CONs han dado un impulso y una visibilidad importante a muchos hackers que han participado, pero hay que reconocer ellos mismos se lo han currado. Nosotros seguimos organizando las CONs con el mismo espíritu, cuando se hacen los mejores proyectos es porque lo haces por pura diversión! ¿No? :D

3.- La No cON Name se ha quedado como un nombre de referencia de la decana de las CONs, pero... ¿qué futuro le espera a corto?

¿Tú crees? A ver... es innegable que los tiempos cambian y que no somos el lado del mal ni Chema Alonso ;-). Ahora lo que vemos que triunfa son los CTFs, Canales de Youtubers y las certificaciones de Ciberseguridad que te dan los tricks para obtener trabajo o ser BugBounter; el rollo hacker del CCC de Alemania a los españoles les va poco la verdad, quiero decir que nosotros nos hemos adaptado y hemos avanzado en este último año en cosas como:

* Aparte de una mailing list para estar actualizado, tenemos un grupo en Telegram donde se comentan temas de actualidad y se debaten (y no un SyberSalsaRosa) t.me/noconname

* Desde mediados de marzo/2020 hemos abierto No cON Name TV en Twitch, estamos ahí cada sábado invitando a hackers de la oldschool y a nuevos dando WorkShops de cosas chulas, el sábado pasado estuvo The Dark Raver analizando el Malware Flubot. (A ver cuando tu empresa te deja pasarte como invitado guiño guiño jeje) twitch.tv/noconname

* En nuestras CONs presenciales tenemos un espacio para las charlas improvisadas que cualquiera puede ir allí y hablar de cualquier cosa que quiera compartir.

* Mediamos con algunas empresas y administraciones públicas de forma responsable para avisarles de vulnerabilidades graves (ahora mismo recuerdo de un iDOR a una app de covid de cierta ccaa y un potencial caso de espionaje de estado a España a través de cierta linea de productos de una empresa de aspiradoras)

4.- Muchos de los que pasaron por aquellas CON iniciales se han convertido en referentes profesionales de la seguridad informática y el hacking, y tú sigues en el mundo con tu iniciativa profesional en Andubay. ¿Ha cambiado mucho lo que hacías entonces y lo que haces hoy?

Profesionalmente en aquellos tiempos me dedicaba a dirigir áreas y proyectos de ciberseguridad, y ahora tanto te puedo compilar un muro como levantar un kernel, jajaja. En serio: ahora lo que llevo es un emprendimiento en Ciberseguridad (Andubay) y como todo emprendedor, cuesta mucho y la felicidad va a ratos. Dirijo un SOC en Barcelona, viajo de vez en cuando a Chile donde tenemos otra sede de la empresa y dirijo un desarrollo de producto para mitigar ciertas amenazas.

5.- En una de las primeras CONs de No cON Name tuvisteis a Chris Anley, con el que muchos - incluido yo que lo usé en algunas cosas para escribir el libro de Hacking Web Aplications: SQL Injection - aprendimos, ¿sigues viendo SQL Injections en las auditorías de seguridad web que hacéis en Andubay?

¿SQL-Injections? Toooooooooooodos los días (y cosas peores) Lo curioso del tema es la cantidad de aplicaciones web que se siguen desarrollando sin elegir desde el principio un framework, que aparte de solucionarte la vida en muchas cosas, está pensado para evitar 95% de los errores de seguridad más comunes. Equipos de desarrollo escogen un lenguaje de desarrollo y a picar tecla...

6.- Has sido un referente para muchos jóvenes, Nico, ¿qué consejos les darías a los que quieran comenzar en este mundo del pentesting, el hacking y el research?

Vaya elogio, muchas gracias Chema :-D . Sobretodo desde fuera puede parecer que el mundo de los hackers, virus y ciberataques es un mundo muy de película donde desde fuera se ve muy emocionante y entretenido, pero la realidad es que para muchos de los que parten de cero, se quedan por el camino. En mi opinión porque no están acostumbrados al fracaso. Si te aburres de aprender en este mundo, es que para ti este mundo es algo pasajero. No esperes que una certificación o un curso te descubra más que una puntita de lo que en realidad es todo este mundo. Mis tips:

1- Aprende sobre la historia de otros hackers y sobre los que se escribió sobre la biblia de los hackers (The jargon file) 
 
2- Aprende a desarrollar en varios lenguajes, aunque luego el desarrollo no sea tu meta diaria. Intenta bajar proyectos de código de github e intenta hacer tus hacks para otros propósitos que imagines. 
 
3- Aprende a leer documentación de software y aplicaciones de distintos sistemas operativos, tanto windows como linux u otros. 
 
4- Rompe todas las veces que puedas los softwares y sistemas que te puedas instalar en máquinas virtuales: experimenta, equivócate, desquíciate (madurarás también en algunas facetas de tu personalidad) 
 
5- Practica alguna distracción o distracciones para no volverte loc@.

El resto vendrá solo...

7.- En el mundo del hacking has visto a grandes ponentes, ¿qué charlas recuerda Nico Castellano de todas las que has visto?

A ver, no quiero dejar a nadie sin mencionar porque son bastantes las que recuerdo en todo tipo de c0ns, todas con un recuerdo especial, pero recuerdo algunas demos graciosas o prácticas bastante chulas como por ejemplo el hack de WhatsApp de Pablo SanEmeterio y Jaime Sánchez, a José Picó y David Pérez Atacando 3G, las charlas de interceptación de comunicaciones de aviones por Hugo Teso, los 0days que soltó @osxreverser sobre el kernel de MacOSX, a Silverhack y Dr. Maligno en la charla de Terminal Hackpplications, a Santiago Hernández hablando sobre cómo inyectar código remotamente en el registro de windows, a @Fatuo infectando ficheros haciendo MiTM, los famosos SQL-Injection y vulnerabilidades de Oracle o SQL Server que pudieron presentar Chris Anley o César Cerrudo... Y me dejo un montón...

8.- Y por último, ¿para cuándo una asociación de CONS en España para hacer acciones conjuntas como un CTF nacional entre todas las CONS, un calendario anual, una coordinación de charlas y un premio a las mejores charlas del año?

La asociación de CON puede ser buena si mejora la casuistica actual, como los solapamientos en determinadas fechas clave del calendario, que es algo nos ha afectado en cierta medida en pasadas ediciones. También podría evitar que se acabe dando una misma charla en varias CON distintas, algo que desde No cON Name se ha puesto como requisito ya desde hace un tiempo, que esa misma conferencia no se haya realizado anteriormente.

Por citar un ejemplo, en la última No cON Name virtual #2k20 uno de los ponentes presentó una charla con algunos 0days en varios webservers que no se conocían hasta ese momento. De hecho todos los miembros de la asociación pensamos que es lo que hay que potenciar, charlas únicas y de calidad. Por otra parte también nos hemos enfocado en atraer ponentes de renombre internacional como una manera de dar una visibilidad fuera del ámbito meramente local y como parte de la evolución natural de las propias CONs.

Además, hace un par de años decidimos dejar atrás los patrocinios y evitar así las charlas con sesgo comercial, lo que nos da una mayor libertad a la hora de elegir charlas o temas, sin temer molestar a nadie...

Espero que os haya entretenido la entrevista, que os haya motivado para emprender proyectos que ningún otro ha hecho antes, y que os animéis a seguir haciendo grandes las CONS.

¡Saludos Malignos!

viernes, abril 09, 2021

Las imágenes espía en las mensajes de correo electrónico

Actualmente, el correo electrónico se ha convertido en el centro de absolutamente todo lo que hacemos, la gran mayoría de sitios web requieren que, al registrarnos, introduzcamos una dirección de correo electrónico para sacarnos una cuenta. Un caos maravilloso que explicaba Chema Alonso en su artículo de "El e-mail ha muerto. ¡Larga vida al e-mail!". Pero algunos sitios, además de utilizarlo como identificación, lo usaran para contactar con nosotros para darnos el información del servicio, o, tal vez, enviarnos publicidad o spam.

Figura 1: Las imágenes espía en las mensajes de correo electrónico

Afortunadamente existen multitud de herramientas ya integradas en los agentes de correo más conocidos como puede ser Gmail u Outlook que evitan en gran medida que recibamos spam, o que nos manden continuamente correo que no nos interesa. Por supuesto, eso no nos garantiza los falsos positivos - correos legítimos que son marcados como spam - y que proteja nuestro tiempo contra corres no spam, pero si molestos o peligrosos. Para eso es mejor una solución como MyPublicInbox.  En el correo electrónico, si quieres afinar bien los herramientas anti-spam para que funcionen mejor, hay que configurar manualmente los filtros para poder ignorar mensajes u ordenarlos de la forma que queramos intentando resolver los problemas citados antes.
Pero, en los últimos años, una gran cantidad de empresas han comenzado a querer mas información de lo que pasa con el correo electrónico, y se las han ingeniado para crear métodos para sacarnos información con solo abrir el mensaje de los más variopinta, uno de ellos es del cual os voy a hablar hoy, como son las imágenes espía que se pusieron de moda para vigilar si se había abierto o no un correo que tú habías enviado, y de lo que ya se habló por aquí en el caso de Gmail.

Figura 3: Un e-mail de Wallmart con imagen de vigilancia

Las tiendas online, sobre todo, les interesa saber qué productos son los que cada usuario tiene mas interés. Por eso cuando nos mandan algún correo con ofertas, cada producto suele tener un enlace larguísimo el cual es único para cada usuario y permite identificarlo, para añadir el producto al que ha hecho clic a tus posibles compras futuras y personalizar aun mas la publicidad que te va apareciendo en el navegador.

Figura 4: Ejemplo de publicidad dirigida

Para evitar esto lo mas sencillo es simplemente ignorar los hipervínculos de las ofertas que nos llega por correo y buscarlo nosotros mismos en un buscador. Pero, existen mas formas de poder espiarnos sin ni si quiera dar un solo clic, para ello se aprovechan de la propia carga de las imágenes.

En un correo electrónico, todas las imágenes no van adjuntas, es decir, cada vez que se abre el correo, se cargan desde el servidor donde están alojadas para mostrarse, esta simple acción permite a los comercios recopilar información, como, por ejemplo, cuando lo hemos abierto, que sistema operativo tenemos, su versión, la versión del navegador si usa el cliente web, etcétera.

Para demostrarlo he montado una pequeña herramienta que simula un servidor que sirve una imagen, mediante el envío de un correo se consigue toda esta información:

Figura 5: Simulación del servidor de imágenes. ¬¬¬

Como se puede ver, se ha filtrado la hora exacta a la que se ha accedido a la imagen, el titulo del correo al que se ha accedido, el correo electrónico, que navegador y su versión, el sistema operativo que se estaba usando y su versión y la dirección IP desde la que se ha accedido (En este caso es una dirección local ya que se ha probado en el entorno del laboratorio).

Pero, ¿cómo se vería un correo así?¿Habría alguna manera de evitar esto? La respuesta es algo complicada, el correo podría estar camuflado de cualquier forma, por ejemplo, en la siguiente captura, ¿se ve alguna imagen incrustada?

Figura 6: Mensaje con imagen espía incrustada

No se ve ninguna, ya que la imagen que se ha insertado es transparente y mide 1x1 píxeles, permitiendo una carga instantánea de la misma. Para evitar esto, clientes de correo como por ejemplo Gmail - hoy en día - , descargan la imagen en su servidor y te la sirven ellos mismos, evitando que puedan espiarte mediante este método. Otros clientes como por ejemplo Microsoft Outlook de escritorio o la versión móvil, no cargan las imágenes de los correos sospechosos hasta que se lo permitamos, evitando de nuevo esta situación.

Pero, ¿qué peligro real tiene esto? Además de saber si has abierto un correo o no, le estamos diciendo a un atacante que nuestro correo funciona y que esta activo, imagina que esta persona decide con una lista con millones de correos electrónicos enviar a cada uno un correo con una imagen, el atacante va a saber cuales correos son funcionales y están en uso de forma regular, por lo que podría mandar ataques mas dirigidos y peligrosos, ya que debido a que se filtra la información de la versión de nuestro sistema operativo y del navegador.

Figura 7: Demo de captura de info con imágenes ocultas

Por otro lado, debido a la filtración que hace el navegador, también se nos puede reconocer de forma más o menos exacta, mediante técnicas de WebBrowser Fingerprinting como la de (Cross)Browser Fingerprinting, por ejemplo. Resumiéndolo de forma rápida, debido a las distintas configuraciones tanto del dispositivo, del sistema operativo, del navegador y del propio hardware, se puede sacar información de tu equipo que va a permitir reconocernos de forma muy exacta, entre millones de otras personas.
 
Figura 8: Libro de "Cómo protegerse de los peligros en Internet"
de José Carlos Gallego en 0xWord

Como habéis podido comprobar, cada día es más complicado proteger nuestra privacidad y hay que estar siempre atentos a este tipo de intentos para obtener información. Aunque sólo sea para saber si un buzón de correo electrónico está activo por ejemplo, este detalle es de enorme interés para algunas empresas y organizaciones. Por eso, configura en tu cliente de correo electrónico que la carga de imágenes sea solo para remitentes de confianza y que por defecto esté desactivada, que te ayudará a protegerte de los peligros en Internet.
 
Saludos,

Autores:  Guillermo Peñarando Sánchez, Developer en Ideas Locas CDCO de Telefónica.

Entrada destacada

ESET te consigue 100 Tempos de MyPublicInbox para consultar con los expertos de seguridad informática @eset_es @mypublicinbox1

La compañía de seguridad ESET , especializada en soluciones de seguridad personal y empresarial, ha puesto activa una campaña de concienciac...

Entradas populares