Foro de elhacker.net

Seguridad Informática => Desafíos - Wargames => Mensaje iniciado por: kaiserr en 27 Septiembre 2011, 22:18 pm



Título: prueba "Serial"
Publicado por: kaiserr en 27 Septiembre 2011, 22:18 pm
buenas
nos si ponerlo aqui o en warzone perdonar

hoy mismo acabo de resolver la prueba del "serial" y la verdad esque lo hice mas o menos a suerte jaja :(
llevo horas y horas comparando el codigo y la solucion par entender del todo el codigo y hay una parte que no se si es por el cansancio o por que no me entra que no entiendo
he de avisar con es la primera vez que miro un codigo JS , lo que pasa esque la sintaxis es parecida a otros lenguajes y voy entendiendo poco a poco

me dejo de rollos, queria preguntaros si me podeis explicar por encima la funcion de esta parte del codigo, como os he dicho he completado la prueba por suerte y un minimo (o incluso menos) por leer y entender el codigo

aqui va la parte que no me entra

Código:
 for (i = 0; i < sText.length && IsNumber == true; i++) 
      {
      Char = sText.charAt(i);
      if (ValidChars.indexOf(Char) == -1)
         {
         IsNumber = false;
         }
      }
   return IsNumber;
  
   }





EDITO: a parttir de IsNumber= false   tambien lo entiendo
os pongo el codigo completo para guiaros
Código:
function ver (cod) {

if (cod.length != 16){
alert("Codigo No Valido");
return false;
}

var codx =new Array(cod);
var chk = '';
var tmp;
var cvs;
var cvd;

cvd = cod.substr(15,1);
cod = cod.substr(0,15);

 if (cod.length != 15 || IsNumeric(cod) == false){
 alert("Codigo No Valido");
 return false;
 }

 for (i=0;i<cod.length;i++){
   if (i%2 == 0){
   tmp = cod.substring(i,i+1) * 1;
   
   }
   else{
    tmp = cod.substring(i,i+1) * 2;
   }
   
  if (tmp >= 10){
  tmp = tmp.toString();
  tmp = tmp.substr(0,1) + tmp.substr(1,1);
  }
 
 chk = chk.concat(tmp);
 }

tmp = '';


for (i=0;i<chk.length;i++){
tmp = (tmp*1) + (chk.charAt(i)*1);
}


tmp = tmp.toString();
chk = (tmp.substr(0,1)*1) + (tmp.substr(1,1)*1);
chk = chk * 10;
chk = (chk*1) - (tmp*1);
cvs = chk % 10;

  if (cvs == cvd){
 
  return true;
  }
  else{
  alert("Codigo No Valido");
  return false;
  }
}


function IsNumeric(sText)

{
   var ValidChars = "0123456789.";
   var IsNumber=true;
   var Char;

 
   for (i = 0; i < sText.length && IsNumber == true; i++)
      {
      Char = sText.charAt(i);
      if (ValidChars.indexOf(Char) == -1)
         {
         IsNumber = false;
         }
      }
   return IsNumber;
   
   }


Título: Re: prueba "Serial"
Publicado por: roilivethelife en 12 Octubre 2011, 18:09 pm
yo tambien lo resolví con un poco de suerte!!!
que serial probaste??
te envio el que puse yo por privado!


Título: Re: prueba "Serial"
Publicado por: adan-2994 en 13 Octubre 2011, 03:54 am
Yo analize el JS y me estaba enrollando con el codigo , mejor lo guarde en local y de esa manera veia si me devolvia el "true" que esperaba, probando varios seriales, mas bien los seriales q cumplieran la condicion


Título: Re: prueba "Serial"
Publicado por: Mikes95 en 22 Octubre 2011, 13:23 pm
Yo soy novato pero es que muy novato, se algo de HTML, pero en esta prueba solo llego hasta ver el Codigo fuente, desde ahi, nose que hacer... Tampoco se lo que es un codigo serial


Título: Re: prueba "Serial"
Publicado por: kaiserr en 22 Octubre 2011, 16:27 pm
un serial es como una contraseña, un codigo alfanumerico unico para un objeto en particular
nunca has visto programas que te piden que introduzcas un serial ? o algun juego?
pues eso :)


Título: Re: prueba "Serial"
Publicado por: Mikes95 en 22 Octubre 2011, 21:49 pm
Ahh ya entiendo, necesito un programma para esta prueba?


Título: Re: prueba "Serial"
Publicado por: kaiserr en 23 Octubre 2011, 14:57 pm
no
tienes que averiguarlo a partir del codigo


Título: Re: prueba "Serial"
Publicado por: Mikes95 en 23 Octubre 2011, 15:21 pm
Creo que tardare un poco en resolver esto, yo de HTML se poco, solo se que el serial tiene 16 caracteres que solo utiliza 1234567890. hasta ahi llego...


Título: Re: prueba "Serial"
Publicado por: Mikes95 en 24 Octubre 2011, 17:33 pm
La respuesta sale en codigo binario?


Título: Re: prueba "Serial"
Publicado por: crashback en 5 Marzo 2012, 05:04 am

hey amigo me puedes ayudar con serial warzone por favor llevo dias intentado explicame no me des la respuesta solo explicame como va ?


Título: Re: prueba "Serial"
Publicado por: Puntoinfinito en 9 Agosto 2012, 18:00 pm
Bua, llevo como 2 h con la prueba de los coj*nes y no puedo... !!  :(

A ver, por lo que se en el "javascript " de la prueba dice que a de contener 1, 2, 3, 4, 5, 6, 7, 8, 9 y el punto . Y luego sé que la contraseña esta en "ver.php" . La forma donde se pone la contraseña de llama "cob". Si te fijas en el link después de entrar "ver.php" procesa la contraseña para ver si es la correcta: "http://warzone.elhacker.net/web/ver.php?cob=12345". Es decir, como ya e dicho la password esta en "ver.php" .

Ver el código de php es imposible e editarlo, también, entonces la solución estaría en cambiar el código de " http://warzone.elhacker.net/web/codeme.html " . Supongo que en la sección <form></form>, entonces se tendria que editar esa sección y hacer que procese la contraseña en alguna página echa por ti en el que tenga dentro :

Código:
<? 
$cob = "serial_númerico";
?>

Digo yo, ¿no? ¡¡AYUDA!!


Título: Re: prueba "Serial"
Publicado por: kaiserr en 10 Agosto 2012, 00:19 am
No te compliques xdd Como dije lo hice mas o menos a suerte, lee el codigo y lo sabras. Te reiras cuando la pases jaja


Título: Re: prueba "Serial"
Publicado por: Puntoinfinito en 10 Agosto 2012, 17:21 pm
ver(document.forms[0].cob.value) xD

Mira que era facil eh...


Título: Re: prueba "Serial"
Publicado por: l1nse1 en 6 Septiembre 2012, 15:09 pm
si alguno de los que ya lo resolvio me puede ayudar por lo que entiendo es un codigo de letras y numero 2º debe tener un tamaño de 15 caracteres o estoi mui equibocado


Título: Re: prueba "Serial"
Publicado por: kaiserr en 6 Septiembre 2012, 23:44 pm
Citar
var ValidChars = "0123456789.";


Título: Re: prueba "Serial"
Publicado por: l1nse1 en 7 Septiembre 2012, 03:52 am
a es que como el codigo dice
 if (cod.length != 15 || IsNumeric(cod) == false){
 alert("Codigo No Valido");
 return false;

interprete qe si el codigo  es diferente de 15 caracteres o si es era codigo numerico seria falso
epro ahora veo que es si no es codigo numerico dara falso

y otra cosa alguien me podria explicar mas menos este codigo
que ase esto cod.substring(i,i+1) y  esto (chk.charAt(i)*1) no entiendo la funcion que cumplen estas reglas


Título: Re: prueba "Serial"
Publicado por: l1nse1 en 7 Septiembre 2012, 04:09 am
si mas que nada el problema que tengo es eso que no entiendo bien como funcionan las reglas si bien me manejo un poco en java y las reglas de hay si no me equivoco estan en java scrip entiendo el contenido de las condiciones pero no que accion realiza si la condicion es par o impar x ejemplo si me podrian explicar eso muchas gracias ya que me serviria ahora y a futuro


Título: Re: prueba "Serial"
Publicado por: kaiserr en 8 Septiembre 2012, 02:13 am
Como dije al principio del tema, esta prueba lo hice "a boleao"... asi que no te puedo ayudar, lo siento.


Título: Re: prueba "Serial"
Publicado por: THE JOKER 777 en 4 Marzo 2013, 09:26 am
Yo no se nada de nada ni de java ni de html o de script pude pasar el molto facil leyendo sus comentarios ahora estoy con el serial y no puedo gracias a ustedes se que tiene 16 carateres  y solo llego hasta aki



function ver (cod) {

if (cod.length != 16){
alert("Codigo No Valido");
return false;
}

var codx =new Array(cod);
var chk = '';
var tmp;
var cvs;
var cvd;

cvd = cod.substr(15,1);
cod = cod.substr(0,15);

 if (cod.length != 15 || IsNumeric(cod) == false){
 alert("Codigo No Valido");
 return false;
 }

 for (i=0;i<cod.length;i++){
   if (i%2 == 0){
   tmp = cod.substring(i,i+1) * 1;
  
   }
   else{
   tmp = cod.substring(i,i+1) * 2;
   }
  
  if (tmp >= 10){
  tmp = tmp.toString();
  tmp = tmp.substr(0,1) + tmp.substr(1,1);
  }
  
 chk = chk.concat(tmp);
 }

tmp = '';


for (i=0;i<chk.length;i++){
tmp = (tmp*1) + (chk.charAt(i)*1);
}


tmp = tmp.toString();
chk = (tmp.substr(0,1)*1) + (tmp.substr(1,1)*1);
chk = chk * 10;
chk = (chk*1) - (tmp*1);
cvs = chk % 10;

  if (cvs == cvd){
  
  return true;
  }
  else{
  alert("Codigo No Valido");
  return false;
  }
}


function IsNumeric(sText)

{
   var ValidChars = "0123456789.";
   var IsNumber=true;
   var Char;

 
   for (i = 0; i < sText.length && IsNumber == true; i++)
      {
      Char = sText.charAt(i);
      if (ValidChars.indexOf(Char) == -1)
         {
         IsNumber = false;
         }
      }
   return IsNumber;
  
   }
podrian ayudarme por favor la retroalimentacion si funciona y eso que no se nada de estas cosas lo que sea que me digan sera util gracias