Como sabéis, Facebook está últimamente en medio de una gran tormenta debido a la decisión de unir los datos de WhatsApp con los datos de la red social Facebook, algo por lo que está bajo investigación en Estados Unidos y, por lo que ha sido obligado ya en Alemania, a parar de realizar esta compartición de datos entre las dos redes. Muchos se preguntan por qué es tan importante para Facebook estos datos, e incluso hemos visto algún artículo al respecto en El Mundo en el que se preguntaban cuál es el valor de los datos del perfil de un usuario en Facebook.
Figura 1: ¿Cuánto dinero gana Facebook cada vez que lo usas?
La cuenta que han hecho en el artículo de El Mundo es bastante sencilla de entender. Han visto cuántos son los ingresos en publicidad que obtienen y los han dividido entre los usuarios registrados de la red social, con lo que vienen a estimar que este valor puede rondar los 10 € al año, más o menos por los servicios de Facebook y una cantidad equivalente más o menos por los de Google.
Es decir, cada compañía está siendo capaz de obtener - en media más o menos - 10 € por tus datos según esa cuenta. Si sumas el número de servicios que usan y que han podido hacer un perfil tuyo, más el número de apps que han podido recoger datos tuyos, crear un perfil y venderlo, podrás estimar, grosso modo, el volumen que sale al año - de media -.
Figura 3: Cálculos hechos con ingresos de publicidad y usuarios de servicios en El Mundo
Sin embargo, la realidad es bien distinta cuando hablamos de cuánto gana un servicio por que tú lo utilices. No solo el beneficio le viene porque haya recogido los datos, sino porque hagas un uso intenso del mismo y con tu perfil pueda sacar más dinero en publicidad dirigida. Y esto es lo que trata de estimar el proyecto Facebook Data Valuation Tool.
Este proyecto es uno de los premiados por las becas del Data Transparency Lab, una institución en la que participan varias empresas y organizaciones como el Instituto Tecnológico de Massachussetts (MIT), Mozilla, Telefónica o AT&T - en el pasado - y que tiene como misión hacer mucho más transparente el uso de los datos que se hace con los datos en Internet. Para ello se abre un proceso de becas que son concedidas para que las organizaciones investigadoras propongan iniciativas que hagan Internet más transparente para todos.
En el año 2015, un grupo de investigación de la Universidad Carlos III presentó el proyecto Facebook Data Valuation Tool y consiguió una beca con la que desarrollaron esta herramienta que permite, en tiempo real, lo que Facebook está ganando según utilizas tu cuenta de la red social. En esta conferencia se explica el concepto completo del proyecto, por uno de los investigadores.
Figura 6: Presentación de Facebook Data Valuation Tool
Figura 7: Configuración de FDVT para calcular el valor de los ads
Una vez configurada la tool, basta con que navegues por la página web de Facebook. La extensión del navegador irá localizando los anuncios que se te van mostrando y va sumando el valor de esa impresión. Por supuesto, además calcula cuando se hace un clic en un anuncio, ya que eso genera automáticamente más dinero a Facebook. En este vídeo tienes un ejemplo de cómo funciona.
Figura 8: Demostración de Facebook Data Valuation Tool
En todo momento puedes ir viendo cuánto estás generando en Facebook por utilizar el servicio. Si eres un usuario medio activo y lo usas durante un mes, te darás cuenta de que el valor que generas en Facebook es mucho más que 10 € al año, ya que en la lista de usuarios hay muchos que no son muy activos o que son de Instagram o WhatsApp, donde no se puede obtener tanto dinero en publicidad como en la web de Facebook.
Figura 9: Un total de 5 ads mostrados a 0.022$ según mi perfil
Al final, este proyecto no intenta más que responder a una pregunta que se hace mucho la gente. ¿Cuánto vale realmente para una empresas como Facebook que yo use sus servicios? Con esta herramienta - que se podría hacer para cualquier otro servicio de Internet - es posible hacerse una pequeña estimación de cuál es la respuesta, pero además tienes que tener presente que el número de usuarios también incide en el valor de las acciones de la compañía, así que no solo es el dinero directo, sino el indirecto que se genera.
Figura 10: Valor generado para Facebook tras pulsar un enlace
Por supuesto, Facebook es una herramienta genial para muchos - incluido yo en esa lista - pero con esta información ya sabes cuál es el valor para ellos, además de que conozcas el valor que tiene para ti usar sus servicios.
Si te gusta la música seguro que eres usuario - o cliente - de Spotify, un servicio que te trae a golpe de clic casi toda la música que te gusta. El trabajo de esta compañía en cuanto a contenido y calidad de las apps siempre ha sido digno de reseñar. No obstante, por casualidad descubrí un pequeño fallo en la aplicación de escritorio de Spotify y - tras comunicárselo a ellos y no recibir respuesta - me he decidido a compartirlo.
Figura 1: Spotify. Un pequeño bug para escuchar música {mucha} sin anuncios
No es un fallo de seguridad ni nada parecido, simplemente parece un bug en la lógica de la aplicación que permite a las cuentas no premium disfrutar de horas y horas de música sin escuchar anuncios, algo que muchos chiringuitos de la playa - que usan la cuenta No Premium - apreciarán. El fallo está en una zona de la app que paso a contaros.
Paso 1: Buscar música de tu artista preferido
En honor a Chema Alonso he elegido a Rosendo -... pa' siempre!! - y obtenemos una lista de resultados clasificados por artistas, canciones, discos, playlist y usuarios.
Figura 2: Resultados de la búsqueda de "rosendo"
Una vez obtenemos esta vista, como se puede ver con una cuenta No Premium pues tenemos un anuncio a la izquierda que nos invita a pasar a Premium, debemos seleccionar al artista tal y como se ve en el recuadro rojo de la imagen y hacer clic.
Paso 2: Seleccionar opción "Aparece en"
Nos aparecerá una ventana nueva, bajamos al final del todo. Y saldrá un apartado que pone "Aparece en" que recoge los albumens en los que hay alguna canción de este artista. En este caso, con el gran Rosendo tenemos una buena cantidad de álbumes con la buena música de esa guitarra carambachelera.
Figura 3: Selección de un album en "Aparece en"
Pinchamos en el primer álbum, escuchamos alguna canción - dónde es probable que aparezca algún anuncio - pero después de ese anuncio, ya no aparece ninguno durante horas y horas.
Figura 4: Escuchamos una canción, y luego otra, y otra y otra.
Con este sencillo proceso ya estamos escuchando música sin anuncios a través del pequeño bug de programación en "Aparece en". ¡Ojo!, cada vez que cerremos Spotify, hay que volver a realizar esta operación.
Paso 3: Go Premium
Yo se lo he comunicado por si lo quieren arreglar, pero a veces los fallos aparecen de casualidad y son difíciles de testear. Eso sí, mi recomendación es que, si te gusta la música y puedes pagar los menos de un disco al mes que cuesta la cuenta, vayas a la versión Premium que te permite muchas opciones extra, como la de disfrutar del contenido desconectado sin consumir datos.
WinPayloads es una herramienta que se presenta en su descripción como que es capaz de generar payloads indetectables para los sistemas operativos Microsoft Windows. La herramienta se encuentra escrita en Python y proporciona una pequeña navaja suiza de automatizaciones útiles en la ejecución del payload y la post-explotación.
Figura 1: WinPayloads. Automatizar la generación y el uso de payloads en máquinas Windows
La herramienta tiene diversas posibilidades para la generación de payloads. Como se puede ver en la imagen tenemos la posibilidad de generar varios tipos de Meterpreter y una shell de tipo inversa. Lo curioso, y potente, es que durante el proceso de creación de los payloads se puede añadir funciones secundarias en forma de post-explotación. Como se ve en la imagen, una Meterpreter puede ejecutar a posteriori, y de forma automática, un script que permita intentar el bypass del UAC, ejecutar persistencia en el equipo y ejecutar una serie de checks sobre la máquina y devuelvan los resultados.
Figura 2: Menú de WinPayloads
Para obtener Winpayloads podemos descargarlo desde su Github. Una vez descargado, debemos ejecutar el fichero setup.sh, el cual llevará a cabo la instalación de las dependencias de la herramienta, por si hubiera alguna que no estuviera instalada.
PoC: Meterpreter con automatización de acciones I
En este ejemplo generamos un binario siguiendo los sencillos pasos de WinPayloads. Al llegar a la opción bypassuac indicamos que sí. Esto genera un script de Powershell y un script de instrucciones de Metasploit. Este último fichero tiene la extensión “rc” y permite configurar de forma automática el binario msfconsole del framework de Metasploit.
Figura 3: Creación de un payload para Windows Meterpreter Reverse HTTPs
Si observamos el fichero bypassuac.ps1 generado, podemos ver como hay un Invoke-Expression de lo obtenido mediante un objeto Net.WebClient que descarga el script de Invoke-BypassUAC desde el repositorio de PowershellEmpire. Es una forma interesante de ejecutar en memoria directamente el script en Powershell y evitar mecanismos de protección en una auditoría.
Figura 4: Script en Powershell creado
En el caso del fichero uacbypass.rc se puede ver el contenido que WinPayloads ejecutará a través de msfconsole -r [nombre fichero RC]. Cargaremos el módulo de post-explotación windows/manage/priv_migrate SESSION=1 y ejecutaremos el módulo de post-explotación denominado windows/manage/exec_powershell SCRIPT=bypassuac.ps1 SESSION=1, siendo el atributo session el adecuado, por lo que quizá hubiera que cambiarlo.
Figura 5: Contenido de ejecución de WinPayloads
Como se puede ver a continuación obtenemos una primera sesión con el EXE generado con WinPayloads. Una vez se consigue la sesión, automáticamente, vemos como se ejecuta el script de Powershell y ejecuta el proceso del bypass UAC. Esto consigue devolvernos una nueva sesión, la cual está identificada como segunda sesión, en este caso, ya con privilegios.
Figura 6: Ejecución del payload
En el caso de no utilizar el bypass UAC, se permite utilizar otros scripts como el de persistencia y el de allChecks.
PoC: Powershell Actions!
WinPayloads dispone de un menú para Powershell y posibles acciones. En la imagen se puede ver cómo se pueden obtener una serie de payloads inversos: ScreenWatch, Asks Creds o Invoke Mimikatz. Solo por el nombre, podemos ver que son muy ilustrativos.
Figura 7: Payloads inversos
En el caso de seleccionar la opción ScreenWatch, se solicita al usuario el puerto en el que nos quedaremos a la escucha, por defecto el 4444. Una vez generado el código codificado en base64, se puede copiar y pegar sobre una máquina con acceso físico, o a través de la explotación de alguna vulnerabilidad a través de, por ejemplo, Metasploit.
Figura 8: Explotación del payload SceenWatch
Otras opciones generan scripts preparados para ser lanzados, como Asks Creds que permite realizar un phishing sobre la máquina víctima, en el que se solicita a un usuario que introduzca sus credenciales del sistema. Otra opción es ejecutar un Mimikatz y que los resultados se nos envíen al puerto abierto.
WinPayloads es una herramienta interesante que debemos llevar en nuestra mochila de ethical hacking. Las posibilidades son mucho más amplias, por lo que recomendamos que juegues con la herramienta y veas el potencial de ésta.
Si vives en España es imposible que no hayas oído o leído alguna información sobre la chica que lleva desaparecida desde el 22 de Agosto en este país. Es un caso que está copando gran parte de las informaciones en medios de comunicación como la radio, la televisión y la prensa, pero también Internet. Recientemente las redes sociales hablaban sobre una de las noticias que salieron a la luz estos días en las que se informaba que la Guardia Civil había podido acceder a los mensajes de WhatsApp recibidos pero NO leídos de Diana Quer, la chica desaparecida.
Figura 1: Cómo la Guardia Civil ha accedido a "algunos" de ellos
Como os podéis imaginar, la pregunta que se hace mucha gente es "¿Cómo han accedido a esos mensajes de WhtasApp?" pensando más en si hay alguna implicación que pueda ser utilizada de alguna forma para que a alguien le puedan espiar su WhatsApp. Yo no tengo ninguna información más allá de las que se han publicado en los medios de comunicación, pero viendo lo que se ha compartido con la opinión pública os voy a dejar mis reflexiones de cómo lo han podido hacer y las suposiciones que hago en referente a los casos de qué situaciones se han podido dar y cómo se han podido dar.
Para empezar a entender el caso, hay que comenzar por explicar que un juez está llevando la investigación y ha pedido toda la información y colaboración a la operadora de la línea de teléfono que utilizaba la chica desaparecida. Para ello, evaluando la situación concreta, el juez ha tenido que tomar la decisión que más beneficiase a la chica, haciendo premiar su derecho a la vida - ya que puede estar en una situación de peligro - antes que su privacidad, y ha solicitado que se le de toda la colaboración a la operadora de telecomunicaciones que para ayude a localizar a la persona.
Para ello, según explican los artículos, el juez ha accedido al historial de los mensajes SMS, el historial de las llamadas y el historial de posición del terminal, que se conoce por medio de las antenas de telefonía a las que está conectado el teléfono para tener cobertura.
Con esta información se puede saber que el teléfono fue visto por última vez el día 22 de Agosto en una ubicación concreta, lo que quiere decir que la persona dueña del mismo no ha vuelto a encender ese dispositivo - por decisión propia, porque el terminal se ha destruido o porque se lo ha impedido algo o alguien -.
Con el historial de SMS se podría saber quién y a qué hora tuvo una comunicación vía este sistema con ese número de teléfono. Siendo una chica joven, no es de prever que hiciera mucho uso de este medio para enviar mensajes cortos, pero los SMS se siguen utilizando a día de hoy para muchas cosas, desde comunicaciones bancarias hasta recuperación de cuentas de servicios de Internet. El análisis de estos es importante para que los investigadores puedan entender un poco más los últimos días de actividad de la chica desaparecida.
¿Se puede acceder a los mensajes de WhatsApp?
Ahora viene la parte más llamativa para los usuarios medios de Internet. ¿Ha sido capaz la operadora de darle acceso a los mensajes de WhatsApp? No, ni mucho menos, pero sí que le ha dado algo que tiene mucho valor: Un duplicado de la SIM.
Conseguir este duplicado de SIM permite que se puedan recuperar todas las cuentas de servicios en Internet que tengan como protección el número de teléfono. Es decir, que los mensajes SMS se conviertan en el primer factor de autenticación en lugar de ser el segundo como muchos creen. Con solo solicitar una recuperación de contraseña y que se envíe el código de recuperación vía SMS a la nueva SIM bastaría para poder acceder a las cuentas de Internet.
Pero no solo con el clonado de la SIM, también con la portabilidad del número de una operadora a otra, con lo que la nueva operadora generaría una nueva SIM - con claves de seguridad distintas - pero válida en la red con el número de la chica desaparecida. Con cualquiera de estas posibilidades el juez se hubiera hecho con una SIM que tuviera el número de teléfono de Diana en ella.
Con esto, se dan dos posibles situaciones para que la Guardia Civil se haya hecho con los mensajes recibidos pero no leídos de WhatsApp, que os paso a detallar ahora.
Caso 1: De la nube de WhatsApp a la nueva SIM
Como os podéis imaginar, poseyendo el número de teléfono de la chica desaparecida en una nueva SIM, lo más fácil es pensar en registrar de nuevo la cuenta de WhatsApp. Para ello, se instala la app de WhatsApp en un nuevo terminal con la SIM clonada y se solicita el registro. WhatsApp enviará un mensaje SMS a ese número con el código OTP (One-Time Password) de registro y a partir de ese momento esa app será el end-point de WhatsApp para la cuenta asociada al número de teléfono que hay en esa SIM.
Una vez registrado se podrán enviar y recibir mensajes, pero hay que tener en cuenta que desde hace un tiempo las conversaciones de WhatsApp van cifradas extremo a extremo, por lo que desde los servidores de WhatsApp llegarán cifradas con la clave pública que la app de WhatsApp que la chica utilizara en su terminal intercambió en el primer mensaje que se envió con cada contacto antes de desaparecer.
Figura 3: Claves pública de cifrado intercambiada con un contacto
Es decir, supongamos que Diana tiene como contacto de WhatsApp a Persona1 y el 14 de Junio - por elegir un día tiempo atrás - se envía un mensaje por primera vez. En ese momento se produce el intercambio de claves públicas generadas por la app de WhtasApp de Diana y la Persona1. Si Persona1 envía un mensaje el día 23 de Agosto - cuando el terminal ya estaba apagado - este mensaje de WhatsApp irá cifrado con la clave pública que Persona1 tiene de Diana y solo la persona - y app - que tenga la clave privada de Diana podrá descifrarlo. De hecho, si hay un cambio de clave pública, los contactos recibirán una alerta.
Figura 4: Aviso de que se ha cambiado la clave de cifrado de un contacto
Esto quiere decir que, si los mensajes estaban aún en lo servidores de WhatsApp y no se habían enviado al terminal de Diana, entonces aunque se enviaran - que no lo hacen, ya que WhatsApp le dice al destinatario que solicite que se le vuelvan a enviar - no podrían ser descifrados por la app si no se dan otras circunstancias:
1.- Que los servidores de WhatsApp guarden las claves generadas en todas las apps: Esto no es así, porque el sistema está diseñado para que la gente de Facebook no pueda descifrar los mensajes.
2.- Que los investigadores accedan a la app de WhatsApp en el terminal de la chica desaparecida y saquen de él la clave privada. Esto no es así, porque no se ha localizado el terminal. Si se tuviera el terminal, bastaría con poner la SIM clonada en el nuevo y listo.
3.- Que los investigadores accedan a un backup del terminal en el que haya una copia de la app y saquen la clave privada. Podrían hacerlo si hubiera un backup en algún equipo Windows o Mac de la persona o en alguna nube.
Por supuesto, como el terminal no se ha localizado, la única opción posible sería la última, que además coincide con la información que se ha publicado. Sin embargo, no parece que haya sido la opción que se usado ya que al final parece que el resultado va por otro sitio, pero... es una de las opciones viables y tendría un significado de qué paso antes de que se apagara el terminal.
Si esta fue la opción, quiere decir que los mensajes se enviaron después de que se apagara el terminal, y nunca llegaron al teléfono de la chica, por lo que el dispositivo simplemente se apagó manualmente o se quedó sin batería - como parece que decía en alguno de los mensajes que tuvo con su madre -.
Caso 2: De la nube de iCloud al equipo
La chica desaparecida tenía un iPhone, lo que abre un nuevo abanico de posibilidades. Abre la posibilidad de que haya un backup en el equipo Windows o Mac que tuviera en su casa pareado con el dispositivo, por lo que se podrían sacar datos de él - no con el bug que afecta a los nuevos backups de iOS 10 ya que es de una fecha posterior al 22 de Agosto -.
Pero lo más importante es que, con el duplicado de la SIM se podría solicitar recuperar la cuenta de iCloud y acceder al backup del terminal en la nube. La idea es tan sencilla como solicitar recuperar la cuenta asociada a iCloud y pedir la confirmación vía SMS. Si Diana no tuviera activada la Verificación en Dos Pasos se podría haber intentado responder a las preguntas secretas para acceder a una nueva contraseña y, si Apple quisiera colaborar, acceder directamente al backup de iCloud.
Descartando la colaboración de Apple, con la tarjeta SIM clonada o respondiendo a las preguntas secretas se podría haber accedido al backup, donde se ha informado que había 5 GBs de copias de seguridad. Este límite es el máximo gratuito que da Apple, así que sería una cuenta estándar de iCloud que copia datos en la nube. Además, como sabéis, la base de datos de WhatsApp en iPhone está totalmente descifrada, así que los mensajes están en claro.
Figura 6: Una Base de Datos de WhatsApp en iPhone que está en texto claro
Figura 7: Demo de descargar ficheros de backup de iPhone en El Hormiguero
Si Diana, que parece que sí, tenía una copia de su base de datos de WhatsApp en iCloud con mensajes NO leídos, entonces quiere decir muchas cosas:
1.- El mensaje salió de los servidores de WhatsApp y llegó a la app de WhatsApp de Diana donde se descifró.
2.- La app de WhatsApp hizo copia de seguridad en iCloud antes de que Diana lo viera.
3.- Puede que Diana después de se hiciera la copia de seguridad lo viera, pero que no se subiera una copia de seguridad de la base de datos a iCloud más actualizada.
Esto es importante, porque lo más probable es que se dieran estas tres circunstancias, lo que implica que, si el terminal tenía las opciones de iCloud por defecto, Diana tuviera una conexión WiFi cuando se hizo la copia de seguridad, o lo que es lo mismo, que estuviera en una ubicación de la que conocía la clave de la WiFi o una zona con WiFi abierta a la que se conectó voluntariamente. Si no, iCloud no hace copia de seguridad por 3G/4G para no gastar datos en copias de seguridad.
Figura 8: Opciones de copia de seguridad de WhatsApp. Solo con WiFi por defecto
También es importante que los mensajes sí que pudieron ser vistos por Diana y lo más importante, pudo recibir más mensajes después.
Reflexión final sobre WhatsApp
Con esta información, lo que a mí me parece es que, para recomponer la historia de los mensajes de WhatsApp hay cuatro periodos que se deben abordar de tres maneras distintas.
1.- Mensajes recibidos antes del último backup: Esta fase ya está resuelta con la recuperación de la base de datos de WhatsApp del backup de iCloud recuperando la cuenta de Apple con el duplicado de la SIM.
2.- Mensajes recibidos después de conseguir la SIM: Con el registro de la cuenta de WhatsApp con la nueva SIM, todas las apps de WhatsApp de todos los contactos de Diana recibirían la nueva clave pública y si alguien envía un mensaje en cualquier momento se podrá descifrar.
3.- Mensajes que van entre el último backup y el apagado del terminal:Estos mensajes salieron de Facebook, llegaron a la app del terminal y el sistema no hizo Backup. Facebook podría tener un registro de quién y cuándo los envió y si fueron o no recibidos.
4.- Mensajes que van desde el apagado del terminal al registro de la nueva App: Ahí se puede obtener solo quién envío algún mensaje, pero no el contenido de ellos ni cuántos fueron. Estos se puede garantizar que son mensajes que nunca llegaron a destino y por tanto no fueron leídos.
Si hace no mucho os decía que Apple había cerrado el leak de Siri que permitía saber los datos del dueño del iPhone con solo preguntar "¿Quién soy?" hoy vengo a deciros que tras actualizar a iOS 10.0.0, luego a iOS 10.0.1 y por último a iOS 10.0.2, ya que Apple ha vuelto a convertir a Siri en un autentico agujero para la privacidad de los usuarios de Siri con la pantalla bloqueada. Opción, que por otro lado viene por defecto.
Figura 1: Siri en iOS 10 vuelve a ser un agujero de privacidad para tu iPhone
De nuevo, el truco de bar para robar cuentas con Siri vuelve a funcionar, ya que si preguntas "¿Quién soy yo?" o - "Who am i?" si lo tienes en inglés como yo - resulta que no solo te vuelve a dar todos los datos, sino que además vuelve a permitir hacer llamadas sin necesidad de pedir el passcode.
Figura 2: Ejemplo de robar cuentas de correo electrónico con Siri
En este ejemplo, yo he configurado en la opción de My info que - en lugar de ser yo - era mi compañero Leonardo Amor de Telefónica, y al preguntar por quién soy yo, aparece toda la información introducida en el contacto.
Figura 3: Siri muestra toda la info del contacto con la pantalla bloqueada
Pero lo peor no es eso, es que además se puede, si necesidad de desbloquear el terminal, hacer llamadas a cualquier contacto, poner alarmas despertador, poner citas en el calendario y acceder a la información de las reuniones que ya tengas establecidas. Todo, probado en un iPhone 6 y en un iPhone 7 Plus ayer mismo.
Figura 4: Me he puesto una reunión para ir al doctor a las 7.00
Basta con que digas "llamar a [cualquier contacto]" o "Muéstrame las citas del calendario de mañana" o "Pon una alerta despertador a las 3 de la mañana" para que veas lo que se puede hacer tu terminal bloqueado si tienes activado Siri. Así que...
Figura 5: Desactivar Siri con la pantalla bloqueada y configurar la respuesta a ¿Quién soy yo?
Uno de los proyectos de formación lanzados por los doctores Jorge Ramió y Alfonso Muñoz - autores del libro de Criptografía: De la cifra clásica a RSA, mantienen varios proyectos de seguridad de la información interesantes si quieres formarte en seguridad de la información y seguridad informática. Como sabéis, en el marco de Cryptored lanzaron hace tiempo Intypedia y el Proyecto Thoth de formación, pero también, desde la iniciativa Crypt4you mantienen a día de hoy 6 MOOCs dedicados a la seguridad informática y la seguridad de la información.
Figura 1: Crypt4you. MOOCs gratuitos de Seguridad informática & Seguridad de la información en español
La iniciativa Intypedia acabó estando formada por 15 vídeos de formación en los que participamos muchos amigos y colaboradores de este proyecto - yo cree el guión en el capítulo dedicado a Seguridad de Aplicaciones Web -.
Figura 2: Vídeo de Intypedia dedicado a Seguridad en Aplicaciones Web
En el caso del Proyecto Thoth, centrado en vídeos que enseñan seguridad de la información y que se realiza con la colaboración del programa Talentum de Telefónica, se han alcanzado ya los 38 vídeos con explicaciones que van desde la codificación en BASE64 hasta el cifrado asimétrico por distintos algoritmos de protección de la información.
Figura 3: Aula Virtual de Crypt4you
Centrados ya en la iniciativa Crypt4you, tienes en los 6 MOOCs que tienes disponibles una forma planificada de aprender conceptos clave de seguridad de la información, seguridad informática y criptografía que te vendrán bien en muchos de los campos profesionales de la seguridad informática.
Figura 4: Cursos de Crypt4you en formato MOOC
Además, al ser cursos en formato MOOC están organizados en base a explicaciones detalladas en texto, más el uso de material audiovisual - algunos de los recursos provenientes del Proyecto Thoth - junto con exámenes de autoevaluación que te permite medir el grado de asimilación que estás consiguiendo con la ejecución de cada lección.
Figura 5: Más cursos de Crypt4you
Los seis cursos gratuitos que ahora tienes disponibles en formato MOOC y en idioma español listos para comenzar son los siguientes:
Por si tienes alguna duda aún que te impida comenzar a formarte desde ya con estos cursos, en las FAQs se explican las principales preguntas que te puedes hacer sobre esta iniciativa.
1. ¿Qué tienen de novedoso los cursos de Crypt4you?
Crypt4you es una forma de estudio diferente dentro del nuevo
paradigma de la formación abierta, online y gratuita que se denomina
MOOC, Massive Open Online Course. En este caso con características
propias: contenidos actualizados, una orientación práctica, un plan de
estudio de acuerdo a los intereses de cada estudiante, entrega por
fascículos y cursos siempre abiertos.
2. ¿Qué me aportará Crypt4you?
Te aportará información contrastada por el perfil de sus profesores,
destacados profesionales de la seguridad, miembros de la Red Temática
Criptored y expertos invitados.
3. ¿Debo matricularme y pagar algo para seguir sus cursos y ser un
alumno del Aula Virtual?
No, es gratis. Los cursos de Crypt4you están abiertos a todo público y no es
necesario realizar ninguna inscripción.
4. ¿Los cursos que se ofrezcan tendrán una vigencia en el tiempo?
No, el curso seguirá abierto en el sitio web del Aula Virtual indefinidamente;
puedes comenzarlo cuando lo estimes oportuno.
5. ¿Existe alguna lista de alumnos de los cursos de Crypt4you?
No existe esa lista de alumnos inscritos en un curso de Crypt4you porque
cada alumno puede crearse su propio plan de formación. Por lo tanto no
existirá una simultaneidad en el tiempo de alumnos siguiendo una lección en
particular.
6. ¿Debo tener conocimientos de matemáticas u otras ciencias de la
ingeniería para poder seguir las lecciones?
Es recomendable tener un nivel básico, pero no es necesario. Esto es
debido a que los temas se tratarán siempre desde un punto de vista muy
práctico y conceptual, y dentro de lo posible con un perfil medio de
ingeniería.
7. ¿Cuándo se publican las lecciones de un curso?
Se publicará una nueva lección del curso nuevo actual en Crypt4you
aproximadamente cada 30 días.
8. ¿Me entregarán algún certificado o créditos por seguir el curso?
No se entregará certificación. En el futuro se estudiará esta posibilidad a
través de un formato especial de cursos online.
9. ¿Qué otros cursos se ofrecerán a través de Crypt4you?
Crypt4you ofrecerá cursos de todos los temas relacionados con la
seguridad de la información. Se informará oportunamente los próximos
títulos de cursos en sus redes sociales, en Criptored y a través de Notas
de Prensa en Internet.
10. ¿Puedo usar estos contenidos?
Todo el material de Crypt4you está liberado bajo licencia Creative
Commons (CC) NoCommercial-Attribution-ShareAlike. Ante cualquier
duda al respecto, por favor contacta con nosotros en nuestro correo
electrónico.
Ayer fue el día de ver los proyectos de EQUINOX, el hackathon de ElevenPaths donde durante 24 horas se lanzan proyectos que normalmente no se hacen por falta de tiempo. Ideas locas que nos dejaron 8 proyectos geniales que acabarán como estudios, ideas locas o nuevas características de los productos. Los hackathones tienen eso, son momentos en los que la cabeza explota con ideas que al principio no tienen sentido pero que luego van tomando forma hasta que consiguen aportar algo útil, divertido o diferente.
Figura 1: Joinnovation & KeepCoding Connect. 2 Eventos para Doers en Madrid
Ahora en Madrid va a haber un par de nuevos eventos que tendrán lugar esta semana, así que si te pilla bien y te gusta la programación o quieres orientar tu futuro hacia esta maravillosa profesión, te puedes apuntar.
Figura 2: Momentos del EQUINOX - edición primavera 2016
29 y 30: Joinnovation
El primero de ellos es Joinnovation, empujado por el programa Talentum de Telefónica y que tiene como objetivo algo tan simple como hacer una app en Android que ayude a hacer el mundo un poco mejor.
El reto es grande, las posibilidades infinitas y siempre hay algo que mejorar, así que....los próximos 29 y 30 de Septiembre puedes hacerlo. Yo intentaré estar por allí a ver los equipos y si me da la vida, a ser jurado del evento.
1 de Octubre: KeepCoding Connect
El segundo evento es justo a continuación, el día 1 de Octubre en Madrid, será KeepCoding Connect. Un evento gratuito en el que tendrás sesiones de trabajo además de charlas y presentaciones, donde yo estaré dando una charla llamada Hack Your Future! que tiene más que ver con experiencias personales en el mundo profesional que con la tecnología.
Además, recuerda que si lo tuyo no es la programación, y lo que te gusta es la seguridad informática y el hacking, en las mismas fechas tienes en Albacete - a tiro de tren - la 6ª Edición de la Navaja Negra, así que no tienes excusa para no estar en movimiento.
La historia detrás de esta demanda puede tener cierto tinte de folletín, pero no deja de ser más que un ejemplo del mundo IoT - en este caso Internet of "Sexy" Things - que se nos viene encima y del que reflexionamos hace tiempo con expertos de todo el mundo en el paper que publicamos sobre Seguridad en IoT. En él, había dos dimensiones fundamentales a tener en cuenta sobre las conexiones del mundo físico: la amplitud y la escala. La escala en cuanto al volumen de elementos conectados y la amplitud en cuanto a la cantidad y variedad de partes de nuestra vida que se iban a conectar.
Figura 1: Internet of "Sexy" Things
En la dimensión de la amplitud discutimos en las presentaciones que realizamos sobre aquellos elementos que acabarían siendo conectados, y que van desde piezas de una fábrica industrial hasta los juguetes de los niños, pasando, como no, por los propios humanos con los wereables y dispositivos deportivos. En estos casos, las precauciones en cuanto a privacidad pueden ser de mucho índole, sobre todo cuando aplicamos la derivada del BigData que permite capturar y procesador grandes cantidades de datos, haciendo que se recoja algún dato que de forma individual afecte a un usuario, o que se analicen en su conjunto y revelen algún dato sensible de la vida de la persona.
Figura 3: Un vibrador con una app en iPhone para controlarlo
Ahora el caso ha sido un juguete sexual. Un vibrador que se controla por una app en tu iPhone. Un vibrador que se parea con tu smartphone y permite que se configuren los ritmos del juguete para conseguir un funcionamiento más adaptado a los gustos y requerimientos del sujeto en cada momento del acto. Una app que recoge todos y cada uno de los datos del vibrador y la app, junto con información del usuario y los envía a servidores en Canadá. Y esto puede suponer un problema para la privacidad del usuario.
Figura 4: Información sobre el funcionamiento del vibrador
En el caso de un juguete sexual como un vibrador, socialmente podría llegar a considerarse mal aún en muchas partes de nuestra "moderna" sociedad. Por eso las compras de juguetes sexuales online suelen utilizar empaquetados discretos para garantizar que nadie sepa qué se está comprando. Pero si se almacenan los datos de los usos en unos servidores... el problema perdurará durante toda la vida del almacenamiento de esa información.
Figura 5: Datos recolectados del vibrador
Si la app envía los datos a unos servidores con información del dueño y/o usuario, puede que ahora no, pero a lo mejor dentro de 1 mes, o de 1 año o de 5 años, alguien sea capaz de encontrar un fallo de seguridad y exponga todos los datos de ese BigData y suceda algo como con Ashley Madisson y afecte a la tranquila vida de una persona que, años atrás, decidió disfrutar de su vida sexual con ayuda de la técnica.
Figura 6: Petición de justicia por violar la privacidad del individuo
Esta recolección de datos obliga al usuario a un entrega de confianza en la seguridad de los servidores y las medidas de protección de los mismos mucho más allá incluso de la vida de la empresa. Y no todos están dispuestos a aceptar ese acuerdo.
La recolección de estos datos, no solo puede afectar a la imagen social de una persona, sino que también el sexo es un reflejo de la salud de un individuo y por tanto la información del número de veces que se usa, la duración del uso y las configuraciones de las configuraciones del juguete pueden denotar una determinada información médica del individuo que puede reflejar datos de carácter personal y privado.
Ahora el caso está en manos de la justicia en Estados Unidos, pero el debate que se genera es más que interesante pues, en el futuro, las puertas enviarán datos de los que entran y salen de cualquier sitio, los autos enviaran información de las vibraciones de los asientos, los baños mandarán datos de la temperatura ambiente y los teclados recolectarán el latido del corazón tomándolo de los dedos cuando se pulsan las teclas. Datos, datos, datos que fluirán hacia servidores que los almacenarán y dejarán un rastro nuestro - privado o no - del que podemos vernos afectados en el futuro.
Figura 1: Análisis de todos robots.txt del Top 1 Millón del ranking de Alexa
Si tienes un fichero robots.txt y quieres que nadie lo indexe tienes algunas alternativas pero el fichero seguirá ahí y lo que tienes que garantizar es que tu servidor esté correctamente configurado a nivel de permisos en todas las rutas, aparte de no se ofrecer ningún tipo de información confidencial bajo la premisa de que no se va a indexar o de que nadie lo va a encontrar.
Figura 2: Ficheros robots.txt prohibiendo la indexación de bases de datos
Las arañas que analizan el robots.txt pueden elegir hacer caso omiso del User-Agent: o pueden simplemente no ser arañas, sino simplemente un proceso automático curioseando para saber qué es lo que no quieres que te indexen. Durante cualquier pentest es básico mirar el robots.txt y el sitemap.xml, pero es igual de básico durante la fase de information gathering realizar pruebas de fuerza bruta contra los directorios más comunes en busca de rutas cuya seguridad se ha abandonado a la defensa por oscuridad.
Figura 3: Fichero robots.txt con mucha información jugosa
Hay muchas aplicaciones que disponen de sus propios diccionarios pero lo que realmente motiva es ir un paso más allá y tratar de encontrar tu propio diccionario para buscar Directory Index o información confidencial.
Alexa to Dictionary
AtoD (que viene de Alexa to Dictionary) es un script en Python que te permite crear tu propio diccionario basándote en qué es lo que las web más visitadas del mundo no quieren que se indexe }:F. Haciendo un barrido por todos los ficheros robots.txt de 1.000.000 de URLs y usando ambos esquemas HTTP y HTTPs, nos da como salida dos ficheros, un diccionario que contiene todas las rutas que se han encontrado como Disallowed dentro del robots.txt, ordenadas por número de apariciones, y un fichero de estadísticas para que puedas analizar lo que no quieren que veas.
Puedes modificar su configuración para decirle el número de URLs que quieres que analice tras descargar el fichero top1M desde Alexa. Inicialmente viene configurado para analizar las 1000 primeras pero te invito a que lo pruebes con diferentes configuraciones. Los resultados difieren mucho según el tamaño de la muestra va aumentando.
Figura 5: Ejecución completa de Alexa to Dictionary
Atod automatiza la siguiente secuencia:
- Descarga el fichero. - Lo descomprime. - Mete X procesos paralelos, ya que el sistema de multithreading en Python no es muy eficiente así que opté por usar mejor procesos. - Cada proceso busca por el robots.txt en base a dos esquemas: HTTP y HTTPs. - Se registra todo en un diccionario que luego es volcado a un fichero con todos los directorios no permitidos para indexación, previo postprocesado. - Adicionalmente se construye otro fichero para estadísticas con el número de apariciones de cada una de las rutas no permitidas.
Como todo, esto toma su tiempo, analizar 2000 URLs llevará apenas un par de minutos pero si quieres intentarlo con más de 100K hay que tener paciencia.
El análisis del Millón de robots
Cómo no, yo he querido analizar todas y cada una de las URLs lo que ha resultado en 804.098 entradas después de postprocesado en mi nuevo diccionario. Y como para esto tenemos el fichero de estadísticas, aquí está mi análisis de lo que he podido encontrar como top 10 disallowed en el Top 1 millón de sitios más visitados en Internet.
Figura 6: Top 10 de URLs en los robots.txt del Top 1M de Alexa
Ya mirando el Top 10 te encuentras con cosas muy curiosas, como tecnologías que a día de hoy son poco comunes en una aplicación moderna (Common Gateway Interface), que además puede ser una puerta de entrada para ataques Shellshock, y mucho sitio con Wordpress (wp-admin, xmlrpc.php) que debería estar fortificado en Paranoid Mode. También hay muchos que no quieren que se indexe absolutamente nada (/).
La cuestión es averiguar qué tendrán realmente accesible para lo que podríamos usar nuestro nuevo diccionario quizá }:). Pero los resultados realmente curiosos llegan un poco más adelante y es que simplemente filtrando el Top 100 encontramos rutas como las siguientes:
Y esto es sólo por citar algunos de los que más llaman la atención. Repito de nuevo que AtoD está parametrizado inicialmente solo para las 1.000 primeras URLs de forma que si quieres ejecutarlo para más, las constantes NPROCESS y LIMIT regulan el número de procesos y las direcciones URLs a analizar respectivamente. El script no está parametrizado por línea de comandos así que se lanza con ./atod y a correr sobre cualquier sistema que tenga Python instalado, como tu Kali Linux 2, por supuesto. El porqué no está parametrizado es sencillo, creo que no aporta nada más que complejidad al código añadir un parser para un script relativamente simple, pero si es importante para ti, tienes el código disponible para adaptarlo.
Figura 7: Configuración de parámetros en el script de AtoD
Estoy lejos de ser un experto en programación en Python por lo que soy consciente de que el código es muy mejorable pero para mí hizo bien su trabajo. Espero que te sea de utilidad. Si no lo es, no pasa nada, habrá una versión 2.0 con los códigos HTTP de respuesta, para tener mejor información de esos directorios y saber si está el documento, hay una redirección, o se produce un error en el servidor al acceder. Veremos qué sale en el siguiente artículo
Desde aquí puedes descargar la última versión de AtoD. Sólo necesitas el script. Los ficheros comprimidos son mis resultados contra el total de URLs pero te invito a que uses el script y obtengas los tuyos propios.