CTF #nullcon 2012: Programación 5

  • January 30, 2012
  • tuxotron
  • nullcon1.jpg

    Bueno llegamos a la quinta prueba de la categoría y que como veremos no tiene nada de programación, a menos que te quieras crear tu propio crackeador de MD5.

    La prueba consistía en lo siguiente: tenemos una página dónde introducimos cualquier texto y nos devolvía un hash. Si miramos el código fuente de dicha página una vez nos ha dado el hash, encontramos una pista:

    Es decir, password en este case es el texto que nosotros introducimos, a éste se le añade un texto que no conocemos (salt) y se calcula el MD5. Nuestro objetivo es averiguar dicha salt.

    Mi primera idea fue la de introducir passwords de 1 caracter. Empecé con el 1, y con el hash devuelto me fui a un par de sitios online que ofrecen búsquedas en rainbow tables, pero no encontré nada. Luego probé con el 2, 3, a y b. Nada de nada.

    Luego probé con esos hashes, pero usando este script, nada de nada. Básicamente lo único que me quedaba por hacer era atacar al hash por fuerza bruta, cosa que me confirmaron en el irc.

    Ingenuo de mi, ya era tarde y tiempo de irse a la cama, me saqué de la manga un script en ruby, esperando que el hash fuera de 2 ó 3 caracteres y dejé corriendo el script toda la noche.

    Este es el script:

    #!/usr/bin/env ruby
    
    require 'digest/md5'
    
    Hash = "58a813d4c223f80b1473c50f4b45749a"
    mystring = ['0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f']
    
    8.times do |c|
    
      mystring.permutation(c+1).to_a.each do |i| 
        digest = Digest::MD5.hexdigest("1"+i.join)
        if digest == hash
          puts i.join
          break
        end
      end
    
    end

    A la mañana siguiente no sólo no había encontrado nada, sino que además el script todavía estaba corriendo y la máquina se quería morir :(

    Nada, esto es un trabajo para un “pofecioná!”. Llamemos a Juanito.

    Nota: en la web oficial de John the Ripper, tenemos 2 versiones de éste: oficial y una versión mejorada por la comunidad. Esta segunda no es más que la versión oficial con una serie de parches extras creados por terceros para expandir las posibilidades de crackeo de John the Ripper. Entre ellos MD5 puro y duro que es lo que necesitamos, por lo tanto usaremos esa versión mejorada.

    Por lo tanto, usaremos el hash devuelto introduciendo: 1.

    echo "58a813d4c223f80b1473c50f4b45749a" > hash.txt
    tuxotron@tuxotron-laptop:~/opt/john-1.7.9-jumbo-5/run$ ./john --format=raw-md5 hash.txt                                                                                                                
    
    101f303          (?)
    guesses: 1  time: 0:02:00:41 DONE (Wed Jan 25 00:10:21 2012)  c/s: 7579K  trying: 101f2p0 - 101f362
    Use the "--show" option to display all of the cracked passwords reliably
    

    Y en un par de horas obtenemos: 101f303. Recuerda que el hash estaba compuesto por nuestra entrada (1) + la salt, por lo tanto la salt que buscamos es: 01f303

CTF #nullcon 2012: Programación 4

  • January 30, 2012
  • tuxotron
  • nullcon1.jpg

    En este reto nos encontramos con un problema de sustitución.

    Estos son los datos que se nos dan:

    Ciphertext:
    06 15 21 20 05 05 14 00 14 09 14 05 00 06 15 21 20 05 05 14 00 06 09 22 05 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 19 09 24 00 06 09 06 20 05 05 14 00 20 23 05 14 20 25 15 14 05 00 05 09 07 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 06 09 06 20 05 05 14 00 06 15 21 20 05 05 14 00 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 20 23 05 12 22 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 19 09 24 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 06 09 06 20 05 05 14 00 06 15 21 20 05 05 14 00 06 09 22 05 00 26 05 18 15 00 06 15 21 20 05 05 14 00 14 09 14 05 00 06 15 21 20 05 05 14 00 06 09 22 05 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 20 23 05 12 22 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 19 09 24 00 06 09 22 05 00 05 09 07 20 05 05 14 00 06 09 06 20 05 05 14 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 06 15 21 20 05 05 14 00 14 09 14 05 00 06 15 21 20 05 05 14 00 06 09 22 05 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 00 05 09 07 08 20 00 05 09 07 20 05 05 14 00 06 09 22 05 00 06 09 22 05 00 26 05 18 15 00 06 09 22 05 00 14 09 14 05 00 19 05 22 05 14 00 05 09 07 08 20 00 20 23 05 14 20 25 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 20 23 05 14 20 25 00 05 09 07 08 20 00 05 09 07 20 05 05 14 00 06 09 22 05 00 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 19 09 24 00 06 09 22 05 00 05 09 07 20 05 05 14 00 06 09 06 20 05 05 14 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 19 09 24 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 06 20 05 05 14 00 26 05 18 15 00 14 09 14 05 20 05 05 14 00 14 09 14 05 00 20 23 05 14 20 25 06 15 21 18 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 06 09 06 20 05 05 14 00 06 15 21 20 05 05 14 00 06 09 22 05 00 26 05 18 15 00 06 15 21 20 05 05 14 00 14 09 14 05 00 06 15 21 20 05 05 14 00 06 09 22 05 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 00 05 09 07 08 20 00 05 09 07 20 05 05 14 00 06 09 22 05 00 06 09 22 05 00 26 05 18 15 00 06 09 06 20 05 05 14 00 06 15 21 20 05 05 14 00 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 19 09 24 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 06 09 22 05 00 14 09 14 05 00 19 05 22 05 14 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 19 09 24 00 06 09 22 05 00 05 09 07 20 05 05 14 00 06 09 06 20 05 05 14 00 26 05 18 15 00 06 09 22 05 00 14 09 14 05 00 19 05 22 05 14 00 05 09 07 08 20 00 20 23 05 14 20 25 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 14 09 14 05 20 05 05 14 00 14 09 14 05 00 20 23 05 14 20 25 06 15 21 18 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 06 09 22 05 00 14 09 14 05 00 19 05 22 05 14 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 06 20 05 05 14 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 06 09 22 05 00 14 09 14 05 00 19 05 22 05 14 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 06 20 05 05 14 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 19 09 24 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 06 15 21 20 05 05 14 00 14 09 14 05 00 06 15 21 20 05 05 14 00 06 09 22 05 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 06 15 21 20 05 05 14 00 14 09 14 05 00 06 15 21 20 05 05 14 00 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 19 09 24 00 06 09 22 05 00 05 09 07 20 05 05 14 00 06 09 06 20 05 05 14 00 26 05 18 15 00 06 09 06 20 05 05 14 00 06 15 21 20 05 05 14 00 06 09 22 05 00 26 05 18 15 00 19 09 24 00 06 09 06 20 05 05 14 00 20 23 05 14 20 25 15 14 05 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 19 09 24 00 06 09 06 20 05 05 14 00 20 23 05 14 20 25 15 14 05 00 05 09 07 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 19 09 24 00 06 09 22 05 00 05 09 07 20 05 05 14 00 06 09 06 20 05 05 14 00 26 05 18 15 00 14 09 14 05 20 05 05 14 00 14 09 14 05 00 20 23 05 14 20 25 06 15 21 18 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 06 09 22 05 00 14 09 14 05 00 19 05 22 05 14 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 19 09 24 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 20 23 05 12 22 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 06 15 21 20 05 05 14 00 14 09 14 05 00 06 15 21 20 05 05 14 00 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 19 09 24 00 06 09 06 20 05 05 14 00 20 23 05 14 20 25 15 14 05 00 05 09 07 20 05 05 14 00 26 05 18 15 00 06 15 21 20 05 05 14 00 14 09 14 05 00 06 15 21 20 05 05 14 00 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 19 09 24 00 06 09 22 05 00 05 09 07 20 05 05 14 00 06 09 06 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 00 05 09 07 08 20 00 14 09 14 05 00 05 09 07 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 06 09 22 05 00 14 09 14 05 00 19 05 22 05 14 00 05 09 07 08 20 00 20 23 05 14 20 25 00 26 05 18 15 00 20 23 05 14 20 25 00 05 09 07 08 20 00 14 09 14 05 00 05 09 07 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 19 09 24 00 06 09 06 20 05 05 14 00 20 23 05 14 20 25 15 14 05 00 05 09 07 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 19 09 24 00 06 09 22 05 00 05 09 07 20 05 05 14 00 06 09 06 20 05 05 14 00 26 05 18 15 00 06 09 22 05 00 14 09 14 05 00 19 05 22 05 14 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 19 09 24 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 19 09 24 00 06 09 06 20 05 05 14 00 20 23 05 14 20 25 15 14 05 00 05 09 07 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 19 09 24 00 06 09 22 05 00 05 09 07 20 05 05 14 00 06 09 06 20 05 05 14 00 26 05 18 15 00 14 09 14 05 20 05 05 14 00 06 09 22 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 06 09 22 05 00 14 09 14 05 00 19 05 22 05 14 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 19 09 24 00 06 09 06 20 05 05 14 00 20 23 05 14 20 25 15 14 05 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14
    
    How we Obfuscated:
    
    Plain Text = nullcon
    After charset Substitution = 14 21 12 12 03 15 14
    Literal Substitution = fouteen twentyone twelve twelve three fifteen fouteen
    After charset Substitution = 06 15 21 20 05 05 14 00 20 23 05 14 20 25 15 14 05 00 20 23 05 12 22 05 00 20 23 05 12 22 05 00 20 08 18 05 05 00 06 09 06 20 05 05 14 00 06 15 21 20 05 05 14
    
    charset = 00 means " ",  01 = "a", 02="b".... 26="z", 30 = "0", 31="1" .... 39="9"
    
    Reiterate till you find meaning text
    

    Tenemos el texto a descifrar (primer bloque de datos), luego tenemos el método usado para cifrar dicho texto y por último tenemos la correspondencia de caractares. Y dice que iteremos hasta encontrar un texto con sentido.

    Lo primero que hice fue crearme una cadena de caracteres, en la que de acuerdo con los datos dados, cada carácter esté en la posición que se corresponda.

    subs_string = " abcdefghijklmnopqrstuvwxyz@@@0123456789"
    

    Como vemos, el primer carácter (posición 0) es el espacio en blanco, luego desde la posición 1 a la 26 tenemos el alfabeto (inglés) y los números empezando en la posición 30 de la cadena. Las ‘@’ entre las letras y los números son mero relleno, esas posiciones (27, 28 y 29) nunca serán accedidas. Podríamos haber usado cualquier otro carácter.

    Otra estructura de datos que uso es un map, para poder traducir de letras a números. Esto lo fui rellenando a mano a medida que iba ejecutando iteraciones, porque si te fijas hay varios números que están mal deletreados (suponiendo que esto es inglés).

    El script con el que solucioné este reto es el siguiente:

    #!/usr/bin/env ruby
    
    ciphered_text = "06 15 21 20 05 05 14 00 14 09 14 05 00 06 15 21 20 05 05 14 00 06 09 22 05 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 19 09 24 00 06 09 06 20 05 05 14 00 20 23 05 14 20 25 15 14 05 00 05 09 07 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 06 09 06 20 05 05 14 00 06 15 21 20 05 05 14 00 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 20 23 05 12 22 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 19 09 24 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 06 09 06 20 05 05 14 00 06 15 21 20 05 05 14 00 06 09 22 05 00 26 05 18 15 00 06 15 21 20 05 05 14 00 14 09 14 05 00 06 15 21 20 05 05 14 00 06 09 22 05 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 20 23 05 12 22 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 19 09 24 00 06 09 22 05 00 05 09 07 20 05 05 14 00 06 09 06 20 05 05 14 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 06 15 21 20 05 05 14 00 14 09 14 05 00 06 15 21 20 05 05 14 00 06 09 22 05 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 00 05 09 07 08 20 00 05 09 07 20 05 05 14 00 06 09 22 05 00 06 09 22 05 00 26 05 18 15 00 06 09 22 05 00 14 09 14 05 00 19 05 22 05 14 00 05 09 07 08 20 00 20 23 05 14 20 25 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 20 23 05 14 20 25 00 05 09 07 08 20 00 05 09 07 20 05 05 14 00 06 09 22 05 00 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 19 09 24 00 06 09 22 05 00 05 09 07 20 05 05 14 00 06 09 06 20 05 05 14 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 19 09 24 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 06 20 05 05 14 00 26 05 18 15 00 14 09 14 05 20 05 05 14 00 14 09 14 05 00 20 23 05 14 20 25 06 15 21 18 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 06 09 06 20 05 05 14 00 06 15 21 20 05 05 14 00 06 09 22 05 00 26 05 18 15 00 06 15 21 20 05 05 14 00 14 09 14 05 00 06 15 21 20 05 05 14 00 06 09 22 05 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 00 05 09 07 08 20 00 05 09 07 20 05 05 14 00 06 09 22 05 00 06 09 22 05 00 26 05 18 15 00 06 09 06 20 05 05 14 00 06 15 21 20 05 05 14 00 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 19 09 24 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 06 09 22 05 00 14 09 14 05 00 19 05 22 05 14 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 19 09 24 00 06 09 22 05 00 05 09 07 20 05 05 14 00 06 09 06 20 05 05 14 00 26 05 18 15 00 06 09 22 05 00 14 09 14 05 00 19 05 22 05 14 00 05 09 07 08 20 00 20 23 05 14 20 25 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 14 09 14 05 20 05 05 14 00 14 09 14 05 00 20 23 05 14 20 25 06 15 21 18 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 06 09 22 05 00 14 09 14 05 00 19 05 22 05 14 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 06 20 05 05 14 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 06 09 22 05 00 14 09 14 05 00 19 05 22 05 14 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 06 20 05 05 14 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 19 09 24 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 06 15 21 20 05 05 14 00 14 09 14 05 00 06 15 21 20 05 05 14 00 06 09 22 05 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 06 15 21 20 05 05 14 00 14 09 14 05 00 06 15 21 20 05 05 14 00 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 19 09 24 00 06 09 22 05 00 05 09 07 20 05 05 14 00 06 09 06 20 05 05 14 00 26 05 18 15 00 06 09 06 20 05 05 14 00 06 15 21 20 05 05 14 00 06 09 22 05 00 26 05 18 15 00 19 09 24 00 06 09 06 20 05 05 14 00 20 23 05 14 20 25 15 14 05 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 19 09 24 00 06 09 06 20 05 05 14 00 20 23 05 14 20 25 15 14 05 00 05 09 07 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 19 09 24 00 06 09 22 05 00 05 09 07 20 05 05 14 00 06 09 06 20 05 05 14 00 26 05 18 15 00 14 09 14 05 20 05 05 14 00 14 09 14 05 00 20 23 05 14 20 25 06 15 21 18 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 06 09 22 05 00 14 09 14 05 00 19 05 22 05 14 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 19 09 24 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 20 23 05 12 22 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 06 15 21 20 05 05 14 00 14 09 14 05 00 06 15 21 20 05 05 14 00 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 19 09 24 00 06 09 06 20 05 05 14 00 20 23 05 14 20 25 15 14 05 00 05 09 07 20 05 05 14 00 26 05 18 15 00 06 15 21 20 05 05 14 00 14 09 14 05 00 06 15 21 20 05 05 14 00 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 19 09 24 00 06 09 22 05 00 05 09 07 20 05 05 14 00 06 09 06 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 00 05 09 07 08 20 00 14 09 14 05 00 05 09 07 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 06 09 22 05 00 14 09 14 05 00 19 05 22 05 14 00 05 09 07 08 20 00 20 23 05 14 20 25 00 26 05 18 15 00 20 23 05 14 20 25 00 05 09 07 08 20 00 14 09 14 05 00 05 09 07 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 19 09 24 00 06 09 06 20 05 05 14 00 20 23 05 14 20 25 15 14 05 00 05 09 07 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 19 09 24 00 06 09 22 05 00 05 09 07 20 05 05 14 00 06 09 06 20 05 05 14 00 26 05 18 15 00 06 09 22 05 00 14 09 14 05 00 19 05 22 05 14 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 19 09 24 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 19 09 24 00 06 09 06 20 05 05 14 00 20 23 05 14 20 25 15 14 05 00 05 09 07 20 05 05 14 00 26 05 18 15 00 20 23 05 14 20 25 00 20 23 05 14 20 25 20 08 18 05 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 20 23 05 14 20 25 00 20 23 05 14 20 25 06 09 22 05 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 20 23 05 14 20 25 19 09 24 00 06 09 22 05 00 05 09 07 20 05 05 14 00 06 09 06 20 05 05 14 00 26 05 18 15 00 14 09 14 05 20 05 05 14 00 06 09 22 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 06 09 22 05 00 14 09 14 05 00 19 05 22 05 14 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 19 09 24 00 14 09 14 05 00 20 23 05 14 20 25 20 23 15 00 06 09 22 05 00 26 05 18 15 00 19 09 24 00 06 09 06 20 05 05 14 00 20 23 05 14 20 25 15 14 05 00 20 23 05 14 20 25 00 06 09 22 05 00 06 09 22 05 00 06 15 21 20 05 05 14".split()
    subs_string = " abcdefghijklmnopqrstuvwxyz@@@0123456789"
    
    first_pass = ""
    
    ciphered_text.each do |i|
      first_pass += subs_string[i.to_i]
    end
    
    puts first_pass
    
    mymap = {}
    mymap['fouteen'] = 14
    mymap['nine'] = 9
    mymap['five'] = 5
    mymap['twenty'] = 20 
    mymap['zero'] = 0
    mymap['six'] = 6
    mymap['twentytwo'] = 22 
    mymap['fifteen'] = 15
    mymap['twentyone'] = 21
    mymap['eigteen'] = 18
    mymap['twentythree'] = 23 
    mymap['twentyfive'] = 25
    mymap['twelve'] = 12
    mymap['twentysix'] = 26
    mymap['eight'] = 8
    mymap['seven'] = 7
    mymap['nineteen'] = 19
    mymap['twentyfour'] = 24
    mymap['four'] = 4
    mymap['three'] = 3
    mymap['two'] = 2
    mymap['six'] = 6
    mymap['one'] = 1
    mymap['sixteen'] = 16 
    mymap['thirtyeight'] = 38 
    mymap['thirtyfour'] = 34
    
    second_pass = ""
    first_pass.split.each do |i|
      second_pass += subs_string[mymap[i]]
    end
    
    puts second_pass
    
    third_pass = ""
    second_pass.split.each do |i|
      third_pass += subs_string[mymap[i]]
    end
    
    puts third_pass
    
    

    Lo ideal sería ejecutar un bucle, pero decía el objecto mymap lo iba construyendo a en cada iteración. Y luego también tendrías que saber cuando parar, es decir, saber en que iteración el texto obtenido es legible y con sentido. Como ves sólo se necesitan 3 iteraciones para llegar a nuestra solución. El script, una vez ejecutado, imprime una línea por cada paso, siendo la última línea y por lo tanto nuestro flag:

    sedulously eschew obfuscatory hyperverbosity and prolixity 84 roedy green
    

Reaccionando contra ACTA

  • January 30, 2012
  • cybercaronte
  • stop-acta

    NOTA: este excelente artículo es obra de nuestro amigo Newlog , que como ya sabéis, forma parte de la comunidad OverFlowed Minds donde puedes encontrar todo tipo de material sobre seguridad informática.

    Cuando me disponía a escribir esta entrada, pensaba dar una explicación clara y concisa de lo que es o puede llegar ser el pacto internacional llamado ACTA. Sin embargo, navegando por Internet me he topado con un vídeo muy representativo que en dos minutos describe exactamente lo que podría ser nuestro futuro... Un futuro mucho más próximo de lo que creemos.

    Antes de continuar, para poneros en situación, echadle un ojo al vídeo:

    Ya conocéis el atraco al que nos han sometido con Sinde, donde las fuerzas del estado se pueden tomar la libertad de cerrar cualquier web sin NINGÚN tipo de mediación de un juez - que pueda decretar lo que es legal o ilegal sin ningún tipo de interés personal-. Ahora es la llamada 'Sección Segunda' la que decidirá en todo momento qué es legal y qué no lo es. Pero bueno, parece que esto aún lo podíamos medio solucionar adquiriendo un hosting fuera del país.

    Pero ahora llega ACTA. Un tratado internacional y mundial. Y además no sólo se focaliza en los contenidos de internet, ahora ya son palabras mayores... estamos hablando de cosas como ¡medicinas!, cualquier cosa sujeta a una patente - y sabe dios que hoy en día todo está sujeto a patentes-.

    Orwelliano...

    No os negaré que parece que en los círculos políticos más altos no hay más que manzanas podridas, sin embargo, hace unos días Marietje Schaake, miembro del Parlamento Europeo nos sorprendió a todos escribiendo una entrada en Reddit dónde nos instaba a luchar contra ACTA y nos explicaba cómo hacerlo.

    Puede que lo que dijo parezca un tópico, pero instó a la comunidad a contactar con todos los diputados de cada país responsables de aprobar o denegar ACTA en el Parlamento Europeo. Como habréis leído, hace unos días, en una reunión que se hizo en Japón, España firmó ACTA. ¿Habéis leído alguna notícia en los diarios? No, seguro que no. Aun así, no todo está perdido. Como nos informó Marietje, tenemos hasta el 12 de Junio - que es cuando se toma la decisión final en el Parlamento Europeo - para luchar por nuestra libertad.

    Es por esta razón que hace un par de días me puse a programar un simple script para obtener todas las direcciones de correo electrónico de todos los diputados de cada uno de los países europeos implicados - entre ellos España -. De modo que ahora, sólo necesitas copiar y pegar las direcciones electrónicas  respectivas a tu país [ES] y enviarles un par de líneas a todos esos políticos para explicarles qué es lo que están a punto de aceptar.

    Así pues aquí estamos, ante un momento crucial en la lucha por nuestros derechos.

    Lo cierto es que no se si nos van a escuchar o si, como la mayoría de veces, nos van a ignorar. Lo que sé seguro es que, esta noche y las que me quedan, voy a dormir con la conciencia tranquila, sabiendo que he hecho 'lo que he podido'. Y que cuando mi hijo me pregunte cómo hemos llegado a esta situación, orgulloso le podré explicar que luché y perdí... O quizá, que luché y gané.

    Y tu, ¿cómo vas a dormir las noches que te quedan?

    Newlog / Overflowed Minds