Prueba Nula: El hash no coincide.

Como buen gallego que soy, quiero compartir con vosotros la receta para cocinar un buen hash a la Gallega.

Si nunca habéis saboreado un hash, solo os diré que su sabor es único, no hay dos iguales. Una vez cocinado, no hay forma de volver atrás para averiguar cuales eran sus ingredientes. Lo que viene a significar para los más técnicos: una función determinista de un solo sentido y resumen.

Para esta receta, lo primero que necesitaremos es una cucharada de bytes recién cosechados. Los podemos comprar en nuestro supermercado de confianza, en la sección de: documentos de texto, fotografías, palabras o incluso imágenes forenses. Esta será la base para nuestra receta de hoy.

Fig 1. Otra buena receta, el pulpo a la gallega.

A continuación, cogeremos nuestros documentos de texto, fotografías… y los cortaremos muy finitos, en trocitos de 1 bit.

Si nos hemos quedado cortos con la cantidad de bits, le podremos añadir un “padding” o relleno, hasta que lleguemos a un número que dividido por 512 nos dé un resto de 448. Si ya tenemos este número antes de empezar, le echaremos otros 512 bits más al recipiente. Los bits que le añadamos tienen que ser de denominación de origen, es decir, de los que empiezan por 1 y luego se van rellenando con 0 hasta que se cumpla la condición anterior.

Ahora cogeremos el bote de los bits little-endian, y le echaremos dos puñados de 32 bits, hasta que lleguemos a los 64 bits.

Le añadimos a la mezcla anterior otras 4 palabras de 32 bits (en hexadecimal) que harán de base. La primera palabra que le echaremos es: 01 23 45 67, la segunda: 89 ab cd ef, la tercera: fe dc ba 98 y finalmente la última: 76 54 32 10.

Ahora volcamos el contenido del recipiente en la sartén y ya podemos comenzar a remover todo con los operadores XOR, OR, AND… mientras se va cocinando  a fuego lento. El truco para un hash consistente está en remover de forma adecuada todas las palabras hasta conseguir una mezcla homogénea de 32 caracteres hexadecimales, que será nuestro hash perfectamente cocinado.

Fig 2 Función hash

Si después de leer la receta del Hash a la gallega no sabes ni por dónde empezar, no te preocupes, por suerte para ti, al igual que para cocinar recetas de toda la vida han inventado la Thermomix, para calcular hashes de ficheros, también hace años que han inventado programas como HashCalc (para Windows) o md5sum / sha1sum… (para Linux) que te calculan los hashes de ficheros a golpe de clic en el ratón. Seguir leyendo

¡Yo no he enviado ese Whatsapp!

Una mañana cualquiera, de un día cualquiera, un amigo, un familiar, un ser querido, te llama pidiendo explicaciones de a ver por qué le has dicho a su esposa que la semana pasada él había estado con otra mujer, tú no entiendes lo que ocurre pero ya te imaginas que nada bueno puede ser. Después de la discusión inicial, de haberte insultado con insultos que ni tan siquiera conocías, llegas a la conclusión de que su mujer recibió un mensaje de Whatsapp tuyo diciéndole que  su marido había sido infiel con otra mujer, pero claro, tú ese mensaje no lo has enviado, ¿o quizás si?.

Fig 1. Logo Whatsapp

Así comienza esta historia: un ciudadano cualquiera que está viendo como en su propio teléfono móvil existe un mensaje de Whatsapp enviado a la esposa de un amigo, el cual no ha enviado pero que le acusan de haberlo hecho. Creo que ha llegado el momento de llamar a un forense, pero no de los que hacen autopsias, si no de los que recuperan fotos eliminadas de la tarjeta SD de la cámara de fotos de tus vacaciones realizan, a través de técnicas científicas, un análisis informático sobre cualquier tipo de dispositivo electrónico, utilizando un protocolo que garantice la integridad de los datos obtenidos y que estos sean válidos para el fin que se han obtenido.

Llegados a este punto, la única esperanza que le queda al protagonista de esta historia (al acusado, no al aventurero) es que alguien puede determinar lo que realmente ha ocurrido, o lo que es lo mismo, alguien cuyo objetivo sea la obtención de la verdad, y ese es un analista forense. Como comentaba al principio, esta historia versa sobre un mensaje de Whatsapp que nadie dice haber enviado, pero que en el teléfono del emisor si consta como enviado. Así que en primer lugar, lo primero que tiene que hacer un analista forense es analizar ese teléfono móvil con la finalidad de buscar una explicación de lo que ha ocurrido. Aunque se nos puedan dar varias hipótesis de trabajo, tenemos que tratar siempre de comenzar por la más probable (la explicación más sencilla es probablemente la correcta), y lógicamente la explicación más sencilla no es que el móvil tenga un malware de control remoto, o que alguien le hubiera cogido el teléfono sin que nuestro protagonista se hubiera enterado, la explicación más sencilla es que hubiera sido el propio usuario del teléfono quien hubiera enviado esos mensajes. Descartada esa opción, más que nada porque si no este articulo ya no tendría sentido, la segunda opción desde mi punto de vista es la del Whatsapp Web, es decir, que alguien se aprovechara de que nuestro protagonista dejó su Whatsapp Web abierto en un PC ajeno, lo que le permitiría a cualquier persona enviar mensajes a través del Whatsapp sin que este se diera cuenta.

Fig 2. Whatsapp Web

Whatsapp Web tiene una serie de características técnicas que pueden ser interesantes para el caso que nos ocupa. La primera de ellas es que realmente se puede utilizar desde cualquier parte del mundo, no es necesario ni que el PC con Whatsapp Web esté cerca del teléfono, ni que ambos estén conectados a la misma red WiFi. Otro dato importante es que Whatsapp Web no funciona si el teléfono no tiene cobertura de datos, aunque nuestro PC tenga Internet, si nuestro teléfono no tiene Internet, Whatsapp web dejará de funcionar y esta es una de las claves del funcionamiento de esta APP, ya que realmente Whatsapp Web no envía ningún tipo de mensaje al destinatario, si no que al enviar un mensaje desde Whatsapp Web, este lo envíe a nuestro teléfono y es nuestro teléfono quien ya lo envía al destinatario del mensaje. Esto quiere decir que Whatsapp Web es una especie de prolongación del Whatsapp que tenemos instalado en nuestro teléfono, ya que por sí solo, no puede funcionar. Seguir leyendo

Glider, la idea

Fig 1. Logotipo GLIDER

En primer lugar, daros la bienvenida a todos los que estáis leyendo este primer artículo de Glider. Quizás algunos os estáis preguntando qué significa eso de «Glider», si es que tiene algún significado. Empezaré presentándome:  me llamo Manuel Guerra, (@CiberPoliES en Twitter) los que ya me conocéis, pues poco tengo que decir. Para el resto, decir que soy un investigador especializado en cibercrimen (lo que vienen siendo delitos de toda la vida pero cometidos a través de las nuevas tecnologías) y sobre todo de aquellos delitos que requieren conocimientos técnicos avanzados para su persecución. Pero esta web no va a ser autobiográfica, ni mucho menos, la idea es otra. Iré publicando de una forma más o menos periódica artículos relacionados con el mundo del Hacking y la Informática Forense, además de cualquier otra aventura que me pueda parecer interesante compartir con todos vosotros.

Ahora vamos a la parte del nombre: Glider, ¿Qué es eso de Glider?, los más avispados quizás ya sepan por dónde van los tiros, o quizás no. Hay un símbolo que cada vez veo más, en camisetas, carteles, páginas web, fotografías de perfil en redes sociales… y este símbolo es el que pongo a continuación:

Fig 2Juego de la Vida

Para muchos un tres en raya, para otros unos círculos sin más y para otros el emblema de la cultura Hacker. – ¿Pero realmente significa algo este símbolo?. – ¡Pues vaya si significa algo!. Este símbolo que parece un tres en raya, es ni más ni menos que un planeador (Glider en inglés), y es un planeador que representa el Juego de la Vida que el matemático John Horton diseñó allá por 1970. Este emblema está íntimamente relacionado con la cultura Hacker por varios motivos: uno de ellos es que apareció al mismo tiempo que las primeras CPU, por lo que este juego se podía convertir en un autentico desafío para programadores de aquella época, ya que al hacer uso de puertas lógicas (AND, OR y NOT), se podían pasar jugando horas y así lograr crear una «célula» que creciera hasta el infinito, ya que en cada ciclo de CPU estás células evolucionarían o morirían en función de unas reglas que explicaré más adelante. Por decirlo así, esto era el «Tamagochi»  de la época, era un autómata que se podía crear o destruir en función de la destreza que se tuviera en la programación del entorno.

Como todo juego, también tiene sus propias reglas que son las siguientes:

1.)  Se necesita un tablero de cuadricula, el cual será el entorno dónde se desarrollara el juego.

2.) Las células sólo tienen dos estados, vivas o muertas.

3.) Si 1 célula muerta, tiene a su alrededor 3 vivas, esta célula nace (En el siguiente ciclo de CPU estaría viva).

4.) Si 1 célula viva tiene 2 o 3 células a su alrededor, sigue viva al siguiente ciclo. En caso contrario esta célula morirá.

A priori, puede parecer un poco complejo, pero realmente se trata de un potente algoritmo que permite crear o destruir vida (artificial) en función de una serie de parámetros preestablecidos y si elegimos un patrón correcto de inicio, lograremos crear vida de forma infinita. Si queréis probar vosotros mismos, en Esta Web, podréis configurar vuestras células para ver cómo van naciendo, muriendo o sobreviviendo. Un truco: si dibujáis el emblema Hacker, lograreis obtener unas células que sobrevivan de forma infinita.

Así que ahora, cada vez que veáis un «Glider» o símbolo Hacker, sabréis cual es su origen y lo que significa, por lo que espero que os encontréis como en casa en este nuevo sitio web que iré alimentado con artículos para poder mantener vivo este Juego, ¡el Juego de la Vida!. Muchas gracias a todos, y bienvenidos a GLIDER.es

¡Ah! y por si todavía queda algún despistado, un Hacker no es un pirata informático, un Hacker es un apasionado, un entusiasta, un experto de las nuevas tecnologías, una persona que trata de romper los limites de la tecnología para crear algo superior.