febrero 09, 2012

Solución al reto de ESET en la @BugCon 2012

el 2 y 3 de febrero visité la ciudad de México par asistir a la @BugCon 2012, se dice que la convención de Hackers más grande de México. 

Imagen 01- llegando a la Bugcon

Allí el día 2 de febrero asístí al taller "Jugando Wargames para desarrollar habilidades de Hacking"  que impartió el gran @hecky  y en el cual tuve la fortuna de llevarme el premio por resolver mas retos ;) 
Imagen 02, Premio del WarGame 

Y como para probar que lo aprendido en el taller y que mi maestro @Hecky estuviera orgulloso de su alumno XD.  me propuse entrar al reto  de ESET LA  (si lo que hacen Nod32)  y pues les comparto como fué que resolví  estos retos.

Todo comenzó cuando @isegar de @EsetLa nos regaló un folleto de propaganda de ESET y que contenía la leyenda: 
El desafío comienza aquí: lxxt://hiwejmswiwix.gsq/fyk-gsr-gleppirki/
por lo que para poder entrar al reto había que descifrar la dirección para acceder correctamente al desafío, al ver que en la parte de la URL "http" contenía dos "xx" (como las dos tt de en http) lo que me hizo sospechar de una rotación con el  "método cesar" de encriptamiento así que saqué el programita que hace rotaciones y pude obtener lo siguiente:
imagen 03 - Descifrando la dirección con rotación de 22 posiciones.

y aquí es donde comienza la aventura:
imagen 04 - Inicio del desafío en la dirección encontrada.

El desafio consistía de 7 niveles que te permitirían acceder a los codiciados boletos para la rifa de un PS3 yo resolví 6 de los 7 y aquí les cuento como lo hice. la mayoría de los niveles eran de JavaScript (que no domino) 

Así de veía la primera pantalla 


Revisando el código fuente de la página se puede ver un JavaScript que valida el Pass: 

<scr1pt language=JavaScript type="text/javascript">
{
var a="nivel2";
function check() {
     if (document.a.c.value == a){
         document.location.href=document.a.c.value+".htm";
     }
     else {
           alert ("Seguir intentando...");
          }
     }
}
</scr1pt>
que además de darnos el pass nos dice la dirección del siguiente nivel:  http://desafioseset.com/bug-con-challenge/nivel2.htm

NIVEL 2
Esta página también era protegida por un JS así que sólo teniamos que oprimir cancelar para detener el script  y ver el código fuente:

<script language=JavaScript type="text/javascript">
    var pass, n;
    pass=prompt("Por favor ingrese la contraseña!","");
    if (pass=="l2l") {
        window.location.href=pass+".htm";
        n=3;
    }
    else {
        alert("No, esa no es....");
    }
</script>


aquí copiamos la constante con la que se hace la condición y armamos la nueva url que lleva al siguiente nivel:
http://desafioseset.com/bug-con-challenge/l2l.htm

Nivel 3
En este nivel también un JavaScript nos cortaba el paso al siguiente nivel, viendo el código fuente de la página podiamos ver al guardián:

<script language=JavaScript type="text/javascript">
function pass()
{
    var pw, Aingabe;
    pwd=window.document.alinkColor;
    Aingabe=prompt ("Bienvenido al Nivel 3, ingresa el p4ssw0rd por favor,");
    if (Aingabe==pwd){
        window.location.href=String.fromCharCode(115,105,103,117,101,115,105,103,117,105,101,110,100,111)+".htm";
    }
    else {
        alert("Ah ah ah, trata de nuevo...");
    }
}
function pass2(){
    var password, pr;
    pr = prompt("Bienvenido al Nivel 3, ingresa el p4ssw0rd por favor,");
    if (pr = "nivel3#"){
        window.location.href=String.fromCharCode(123,105,149,101,105,103)+".htm";
    } else {
        alert("And then!?");
    }
}
</script>

el metodo fromCharCode del objeto String me hace sospechar de códigos ascii por lo que tomo los numeros que se pasan a la función y como soy medio huevón para codificar pues  los metí a un excel y usé la función =caracter() y este es el resultado:

así que vamos ala URL
http://www.desafioseset.com/bug-con-challenge/siguesiguiendo.htm

y accedemos al

NIVEL 4
al llegar a esta página encuentras una leyenda que dice click acá el final así que el "sentido aracnido" indica que ahí debe haber algún script así que a inspeccionar el código:

<scr1pt language=JavaScript type="text/javascript">
var _0xb376=["\x43\x6F\x6E\x74\x72\x61\x73\x65\xF1\x61","","\x33\x73\x74\x30\x20\x6E\x30\x20\x74\x33\x72\x6D\x31\x6E\x34\x20\x34\x63\x34","\x68\x72\x65\x66","\x6C\x6F\x63\x61\x74\x69\x6F\x6E","\x76\x69\x2E\x68\x74\x6D","\x4D\x6D\x6D\x2C\x20\x6E\x6F\x2C\x20\x74\x72\x61\x74\x61\x20\x64\x65\x20\x6E\x75\x65\x76\x6F\x2E\x2E\x2E\x0A\x53\x69\x20\x6E\x65\x63\x65\x69\x73\x74\x61\x73\x20\x61\x79\x75\x64\x61\x2C\x20\x66\x69\x6A\x61\x74\x65\x20\x64\x6F\x6E\x64\x65\x20\x68\x61\x63\x65\x73\x20\x63\x6C\x69\x63","\x73\x69\x67\x75\x65\x73\x69\x67\x75\x69\x65\x6E\x64\x6F\x2E\x68\x74\x6D"];var pass,i;pass=prompt(_0xb376[0],_0xb376[1]);if(pass==_0xb376[2]){window[_0xb376[4]][_0xb376[3]]=_0xb376[5];i=4;} else {alert(_0xb376[6]);window[_0xb376[4]][_0xb376[3]]=_0xb376[7];} ;
</scr1pt>

Primero pendé en decodificar el Hexadecimal para ver que decía, batallé durante un momento hasta que vi que el propio script hacía alerts de diferentes posiciones del vector así que sólo agregué al código un alert de la posición 2 y me regresó la contraseña esperada en el NIVEL 5 pero al hacer lo mismo con  la parte verdadera de la condición se podía construir la URL:
Lo que nos hacía saltar de inmediato al ...

NIVEL 6
Al revisar el código fuente de este nivel se podían observar dos scipts uno "a la vista" y el otro oculto, así que para no perder tiempo probando el pass que estaba a la vista (pues ya era el nivel 6 así que no podía ser tan fácil de inmediato me tiré por el segundo script."traslation.js"

var pass,pwd;
var i,j,k;
pass=prompt("Correcto! Y ahora decime esta pass:","");
j = 0;
pwd ="s3cr3tc0d3";
for(i=0; i < 15; i++){
    j = j + i;
}
k = 3;
j = j * k;
pwd = pwd + j;
if (pass==pwd) {
    window.location=pwd+".htm";
}
else 
    alert("Justo esa no es, segui probando...");


aquí como ya de plano me dio flojera hacer operaciones en mi cabecita hice un "alert(pwd)" justo antes del if  y salio el passwor y por consiguiente la URL del siguiente nivel: s3cr3tc0d3315
http://desafioseset.com/bug-con-challenge/s3cr3tc0d3315.htm
NIVEL 7

ya en el último reto y comenzando la última conferencia del  @BugCon, he de decir que no me alcanzó el tiempo ni la cabeza para resolver el último reto he leido ya que había que hacer un ataque de fuerza bruta para saber que numero era el que daba un entero para cumplir con la condición del script así que me quedé a uno de poder participar en el sorteo del PS3.
les dejo el último script pero sin solución a ver si hay algún animado que lo quera resolver, yo ya tengo la respuesta pero dejemos el misterio en el aire :)


<script type="text/javascript">
function preprocesar() {
nombre = document.getElementById("nombre").value;
passwd = parseInt(document.getElementById("passwd").value, 16);

suma = 0;
llave = 'DEADC0DE';
if(nombre.length >= 6 && passwd > 0) {
    for(i=0; i <= nombre.length; i++) {
        a = nombre.charCodeAt(i);
        b = llave.charCodeAt(i%llave.length);
        c = (a | b) & ~(a & b);
       
        suma += c;
    }
   
    a = suma;
    c = passwd;
   
    b = Math.sqrt(c - Math.pow(a,2));
    if(b == Math.floor(b) && b > 0) {
        alert("Viste que era facil ;)");
        window.location = "comprobar.php?a="+nombre+"&c="+c.toString();
    } else {
        alert("Password incorrecto :(");
    }
}
}
</script>



Esta fue una buena experiencia porque jugabas contra el tiempo y los demás participantes, aprendí mucho de esta experiencia y pronto estaré compartiendo más sobre este evento.

saludos seguros

enero 27, 2012

Wargames de seguridad informática

Ultimamente he estado muy entusiasmado resolviendo varios retos que me he en encontrado en páginas que se denominan "wargames" básicamente son retos diseñados por expertos en varios temas como programación, seguridad, criptografía y demás cosas raras de este mundo digital;   y que te permiten sentir la adrenalina tal y como lo hace algún "balckHat" de la red.

Ponen a prueba tus conocimientos y experiencia, pero sobre todo tu INGENIO.

Tipicamente WarGame viene del término militar "juego de Guerra" que son ejercicios tácticos para preparar a los soldados en situaciones que se podrían presentar en una situación real.

Si les gusta resolver acertijos y les late la seguridad informática aquí les dejo algunas direcciones para que se entretengan un rato.

Espero los disfruten como yo.
Saludos Seguros.

http://www.sinfocol.org
http://wargame.oversec.org/
http://www.codebit.org/

Seguro que hay más pero estos son lo que voy resolviendo de momento.

enero 24, 2012

kryptos una escultura encriptada

últimamente he estado resolviendo unos wargames para ir ejercitando el musculo analítico y la verdad es que están de los mas divertidos. 

Y gracias a estos juegos he descubierto que le había estado dando la vuelta a un tema que parecía no atraerme, que es el de la crptografía, pero resulta que son los retos que casi he terminado en su totalidad :)

Y resolviendo el reto fue que conocí esta escultura tan peculiar. 

Kryptos es el nombre de una escultura que contiene mensaje ocultos es del artista y Jim Sanborn, situada en los jardines de C.I.A. en Langley, Virginia U.S.A.

Fue hecha en 1990 y ha habido mucha epeculación sobre el significado críptico de los mensajes que contiene.


Comprende cuatro secciones y tres, han sido resueltas, quedando una cuarta sección con códigos sin resolver.

Nota ( para quien quiera conocer detalles) códigos sin resolver:

http://en.wikipedia.org/wiki/Unsolved_codes

así que aquí hay un buen reto para quienes quieran probarse a sí mismos.






La escultura está hecha de pizarra (teja) roja y verde, cuarzo blanco, madera petrificada, cobre y calamita (piedra imán)


El nombre Kryptos viene del griego “escondido” y el tema de la escultura se denomina “Reunión de Inteligencia" .


La característica más prominente de esta pieza artística, es que está formada como una gran mampara vertical de cobre en forma de “S” asemejándose a un rollo de pergamino, o a una hoja de papel saliendo de una impresora de computadora y cubierta con caracteres crípticos.

Estos caracteres consisten en 26 letras del “Standard” alfabeto romano y signos de interrogación cortados del cobre, también cerca de dos mil letras colocadas en códigos enigmáticos, mensajes en Morse, ángulos raros, una rosa naútica...

Como se dijo al principio, contiene cuatro mensajes enigmáticos, separados, de los cuales tres han sido resueltos.


Solution 1
Keywords: Kryptos, Palimpsest
BETWEEN SUBTLE SHADING AND THE ABSENCE OF LIGHT LIES THE NUANCE OF ILLUSION

(ENTRE LA SUTIL SOMBRA Y LA AUSENCIA DE LUZ DESCANSA EL MATIZ DE LA ILUSIÓN )

Solution 2


Keywords: Kryptos, Abscissa
IT WAS TOTALLY INVISIBLE HOWS THAT POSSIBLE ? THEY USED THE EARTHS MAGNETIC FIELD X THE INFORMATION WAS GATHERED AND TRANSMITTED UNDERGRUUND TO AN UNKNOWN LOCATION X DOES LANGLEY KNOW ABOUT THIS ? THEY SHOULD ITS BURIED OUT THERE SOMEWHERE X WHO KNOWS THE EXACT LOCATION ? ONLY WW THIS WAS HIS LAST MESSAGE X THIRTY EIGHT DEGREES FIFTY SEVEN MINUTES SIX POINT FIVE SECONDS NORTH SEVENTY SEVEN DEGREES EIGHT MINUTES FORTY FOUR SECONDS WEST X LAYER TWO

(ERA TOTALMENTE INVISIBLE Y COMO ES POSIBLE ? ELLOS USARON LOS CAMPOS MAGNETICOS DE LA TIERRA. LAINFORMACION FUE REUNIDA Y TRASMITIDA SUBTERRANEAMENTE A UN LUGAR DESCONOCIDO. SABE LANGLEY ACERCA DE ESTO?

ELLOS DEBEN SABERLO. ESTA ENTERRADO POR AHÍ EN ALGUN LUGAR. QUIEN CONOCE EL SITIO EXACTO? SOLO W.W. ESTE FUE SU ULTIMO MENSAJE AT 38 GRADOS 57 MINUTOS 6.5 SEGUNDOS NORTE, 77 GRADOS 8 MINUTOS 44 SEGUNDOS OESTE ESTRATO 2. )
Nota: en abril 2006, Sanborn contactó el Grupo Kryptos (on line community) para informarles que la solución de la parte 2 estaba equivocada ya que él había cometido un error en la escultura omitiendo un “X”, usada por razones de estética y que significa “interrupción” , y el texto debería terminar así: 4 SEGUNDOS OESTE, ESTRATO 2

Solution 3




SLOWLY DESPARATELY SLOWLY THE REMAINS OF PASSAGE DEBRIS THAT ENCUMBERED THE LOWER PART OF THE DOORWAY WAS REMOVED WITH TREMBLING HANDS I MADE A TINY BREACH IN THE UPPER LEFT HAND CORNER AND THEN WIDENING THE HOLE A LITTLE I INSERTED THE CANDLE AND PEERED IN THE HOT AIR ESCAPING FROM THE CHAMBER CAUSED THE FLAME TO FLICKER BUT PRESENTLY DETAILS OF THE ROOM WITHIN EMERGED FROM THE MIST X CAN YOU SEE ANYTHING Q (?)

( DESPACIO DESESPERADAMENTE DESPACIO, LOS RESTOS DE LOS ESCOMBROS DEL PASADIZO QUE SOBRECARGABA LA PARTE BAJA DE LA ENTRADA, FUE QUITADA. CON MANOS TEMBLOROSAS YO PRODUJE UNA PEQUEÑA BRECHA EN LA ESQUINA SUPERIORIZQUIERDA Y ENTONCES AMPLIANDO EL AGUJERO UN POQUITO, INSERTÉ UNA VELA Y ESPIÉ EN EL AIRE CALIENTE QUE ESCAPABA DE LA CAMARA, CAUSANDO QUE LA LLAMA FLAMEARA, PERO AL CABO, DETALLES DEL INTERIOR DE LA HABITACIÓN EMERGIERON DE ENTRE LA NEBLINA, PUEDES VER ALGO ¿ )



Nota: esta es una referencia de Howard Carter - parafraseada y mal deletreada –


en su relato de la entrada a la tumba de Tutankhamon en 1922.


Solution 4


Part 4 remains publicly unsolved, though there is an active Yahoo! Group (formed in 2003) that coordinates the work of over 1000 members toward decryption of the code.


Solución 4 aun QUEDA POR RESOLVER.

............................................................

La fuente: aquí 

enero 11, 2012

Piensa antes de entrar: ¿Yo Hactivista?

Este Post se quedó en el tintero el año pasado, de hecho creo que se quedó ahí porque la revista B:secure me lo publicó en su sitio ;)  entonces lo voy a sacar de los borradores, y aunque es del mes de abril, aquí se los dejo para lectura de cultura general :)


----------------------------------------------------------------------
¿Te han invitado ultimamente a unirte a una ataque DDoS a traves de internet? si parece muy facil, pero antes de entrar piensalo dos veces, muchas de las ocasiones quien invita a este tipo de actos sale limpio y son los novatos o lammers los que pagan las consecuencias.

Hace poco tiempo me hacía la pregunta: “Hactivismo ¿Cómo para que?” tratando de analizar que es lo que están pensando lograr los hactivistas de nuestro país antes de aventurarse a realizar alguna manifestación cibernética. Ya concluía que el hecho de tirar unos cuantos Servers no tenia mayor relevancia que alimentar el ego de quien lo lograba, pero ¿Pensarían en el impacto social antes de comenzar?

He leído un par de artículos sobre como la está pasando ahora Bradley Manning considerado un traidor por su país y héroe por otros, Bradley Manning es el soldado americano que se encargo de filtrar los documentos del pentágono a wikileaks utilizando un disco CD regrabable que contenía música de Lady Gaga

Pero como el lo relata en un artículo que publica  la nación::
"Quiero que la gente vea la verdad, independientemente de quienes sean, porque sin información no podemos tomar decisiones serias como ciudadanos. Si hubiera sabido hace tiempo lo que sé ahora... o a lo mejor solo soy joven, inocente y estúpido".

De alguna manera el tenia muy claro lo que quería hacer: “Cambiar al mundo poniendo a disposición del publico información” y eso, eso es una causa. No me voy a centrar en definir si lo que hizo está bien o está mal, simplemente reitero que el soldado Manning tenía una causa bien definida.

¿Que logro Bradley Manning?

Para su persona: logró un castigo ejemplar, a mi gusto raya lo que la constitución de los EU considera castigo inusual; El mismo lo relata en el artículo de la nación:
Bajo las condiciones actuales, además de dejarme desnudo por las noches, se me mantiene en régimen de aislamiento. Durante 23 horas al día me siento a solas en mi celda. Los guardias me controlan cada cinco minutos durante el día, preguntándome si estoy bien. Debo responder con algún gesto afirmativo. Por la noche, si los guardias no pueden verme con claridad, porque me he cubierto con una manta o estoy acurrucado contra la pared, me despiertan para asegurarse de que estoy bien. No puedo tener sábanas o almohada. No puedo tener mis enseres personales en mi celda. Solo puedo tener un libro o una revista a la vez para leer algo. El libro o la revista se me quitan por la noche, antes de dormir. Tampoco puedo hacer ejercicio en mi celda. Si intento hacer flexiones, sentadillas o cualquier otro tipo de ejercicio físico, los guardias me obligan a detenerme. Finalmente, solo puedo hacer una hora de ejercicio fuera de mi celda cada día. Ese ejercicio consiste en caminar en círculos, haciendo ochos, en una habitación vacía


Para el resto del mundo: Ha desatado una verdadera guerra en Internet en donde Hacktivistas o Gobiernos quieren controlar la nube, una nube que de momento nos pertenece a todos y que a muchos nos gusta libre.

Pero seguramente algo ocurrirá, como ya ha ocurrido en los países del medio oriente en los que gobiernos han sido derrocados por la organización de los ciudadanos a través de las redes sociales electrónicas, pero lo que pocos saben es que el gobierno Egipcio había mandado comprar un Kit de explotación para tratar de parar las manifestaciones 2.0 atacando las computadoras de los ciudadanos en el sitio de f-secure se puede ver la cotización de dicho kit al gobierno por parte de una empresa llamada “gamma international UK”. Lo cual demuestra que hay una ciberguerra llevándose acabo en medios electrónicos.


Tal vez el soldado Manning no tiene que ver en este caso de la caída Egipcia, pero sin duda alguna es uno de los detonantes de la gran escalada de publicaciones de información y ataques por parte de grupos como “anonymous”, Manning ha cambiado para muchos la concepción de Internet y con esto ha logrado su causa.
Su desenlace seguramente será marcado por algún acto electrónico de esta ciberguerra.

Saludos Seguros!
Felipe L Valero

arrancó el 2012 y se viene la BugCon via @empleosTI

Pues ha comenzado un año más y con este llegan nuevos proyectos y nuevas metas y hay que aprovechar para realizar muchas pues este año en especial muchos creen que es el último que nos queda XD.

Entre todas las cosas que me he propuesto realizar este año está en la lista asistir a la @bugCon un evento que reune a profesionales y entusiastas de la seguridad informática, hace dos años tuve que decidir entre asistir al @BugCon o al congreso en seguridad informática en Toluca en el 2010 y por designios de la vida tuvimos que elegir el de Toluca, quedándome con las ganas de ir a este evento que ese año en especial tenía entre sus conferencistas a varias personalidades internacionales del medio.

Afortunadamente publicaron en la página las ponencias y algunas reseñas lo que me motivo a poner en mi lista amarilla el "deber" de asistir al @bugcon ya que se realiza en nuestro país y aunque sería muy osado compararlo con la DEFCON o la BLACKHAT, este evento tiene ya una buena talla en México.

También desde hace algunos meses comencé a seguir a @empleosTI quienes siempre están difundiendo además de oportunidades de trabajo, eventos y capacitaciones. Ellos son un #Must en tu Time Line, Gracias a ellos me enteré que el @bugCon este 2012 se realizará en el mes de febrero los días 2 y 3 en el Distrito Federal, así que para estar actualizados en cuanto a eventos en nuestro país, capacitaciones y oportunidades laborales yo les recomiendo seguir a estos chicos y a estar en contacto con su portal de certificaciones:


Me he propuesto actualizar el blog mas frecuentemente, así que como de repente mi cabeza anda divagando en muchas cosas, ustedes pueden ir pujando para que salga el próximo post.

Les deseo el mayor de los éxitos y aquí nos leemos.