Páginas

domingo, 8 de noviembre de 2026

Solucion al Crackme De Devast8a

Hola amigos hoy veremos el crackme de devast8a este fue publicado en crackmes.de en  23. Dec, 2008 aquí una foto


Como podemos ver parece que la clave tiene 55 dígitos, así que lo abrimos con el x32dbg y nos vamos a los string y nos muestra esto


Y hay podemos ver el mensaje correcto así que damos clic en él y nos lleva a esta zona


Así que ponemos un breakpoint cerca de esa zona como lo muestra la imagen para después ejecutarlo con F9 y poner como serial "123456" y nos detenemos donde le indicamos, acto seguido nos vamos traceando con F8 y pasando el xor de la línea 00A81143 damos clic derecho a la dirección así como en la imagen


Y vemos lo siguiente en el DUMP 


Acto seguido si seguimos traceando con F8 y al pararnos en la dirección 00A81147 vemos que los datos que están en el DUMP van cambiando así que seguimos para ver qué valor queda aquí les muestro lo que queda


Hay podemos ver la frase que se formó es "Waxing my car will not result in expert karate training" y si seguimos traceando en la línea 00A81156 vemos que compara el primer dígito del serial que ingrese que es "123456" así que no queda duda el serial es la frase de arriba así que lo reiniciamos y la ingresamos

y nos muestra esto


Por otra parte, también lo probé con IDA pro y el código que me muestra es este

int __cdecl main(int argc, const char **argv, const char **envp)
{
  int i; // eax
  char v5[56]; // [esp+4h] [ebp-BCh] BYREF
  char v6[128]; // [esp+3Ch] [ebp-84h] BYREF

  v5[0] = 45;
  v5[1] = 27;
  v5[2] = 2;
  v5[3] = 19;
  v5[4] = 20;
  v5[5] = 29;
  v5[6] = 90;
  v5[7] = 23;
  v5[8] = 3;
  v5[9] = 90;
  v5[10] = 25;
  v5[11] = 27;
  v5[12] = 8;
  v5[13] = 90;
  v5[14] = 13;
  v5[15] = 19;
  v5[16] = 22;
  v5[17] = 22;
  v5[18] = 90;
  v5[19] = 20;
  v5[20] = 21;
  v5[21] = 14;
  v5[22] = 90;
  v5[23] = 8;
  v5[24] = 31;
  v5[25] = 9;
  v5[26] = 15;
  v5[27] = 22;
  v5[28] = 14;
  v5[29] = 90;
  v5[30] = 19;
  v5[31] = 20;
  v5[32] = 90;
  v5[33] = 31;
  v5[34] = 2;
  v5[35] = 10;
  v5[36] = 31;
  v5[37] = 8;
  v5[38] = 14;
  v5[39] = 90;
  v5[40] = 17;
  v5[41] = 27;
  v5[42] = 8;
  v5[43] = 27;
  v5[44] = 14;
  v5[45] = 31;
  v5[46] = 90;
  v5[47] = 14;
  v5[48] = 8;
  v5[49] = 27;
  v5[50] = 19;
  v5[51] = 20;
  v5[52] = 19;
  v5[53] = 20;
  v5[54] = 29;
  v5[55] = 0;
  printf(Format: "HINT: The password is %d letters long\n", 55);
  printf(Format: "Enter Password: ");
  gets(a1: v6);
  for ( i = 0; i < 55; ++i )
    v5[i] ^= 0x7Au;
  if ( !strcmp(v6, v5) )
    printf(Format: "Congrats you have got the password\n");
  else
    printf(Format: "Sorry, The password was incorrect\n");
  system(Command: "pause");
  return 0;
}

Bueno creo que eso es todo saludos Flamer

sábado, 7 de noviembre de 2026

Solucion Como Pescar Un Serial En El Crackme 1 De Skirby

Hola amigos hoy veremos como atrapar un serial para nuestro nick en el crackme de Skirby, para los que no sepan el crackme es el de este hilo


Como ven yo encontré el serial para mi nick, como lo digo en ese hilo es algo sencillo y verán que no soy un profecional, ya que les diga como lo hice, otra cosa el crackme es de nivel 4 y no por eso voy a saber tanto como piensan y por otra cosa el crackme es muy viejo a como pude ver se publicó en la página de beatrix y en crackmes.de en el año 2008 y en reddit también fue publicado



Bueno a darle primero lo abrimos con x32dbg e ingresamos nombre y serial yo pondré "Flamer" y como serial "0123456789" aquí la foto
  


Ahora nos iremos a buscar las string y vemos el serial que ingresamos este


Bueno y si les quedan dudas y para estar seguros quieren probar otro serial mas efectivo ingresamos el serial "5555555555555555555555555555555555" y nos muestra esto


Como pueden ver esa línea es la correcta, ya que nos muestra el serial que ingresamos así que damos doble clic a ver donde nos lleva y nos dirige hasta aquí



Como podemos ver hay se muestra 2 valores o 2 string que se muestran el serial que ingresamos y otro... y podemos ver que tiene 10 dígitos, así que yo ingresare de nuevo "0123456789" y a ver que pasa


Como podemos ver si vamos cambiando digito por dígito el serial va cambiando hasta que concuerde o sea igual al de arriba ejemplo este es el serial que me muestra al ingresar "0123456789"

"1035649161"
"012=45:787"

Asi que cambiamos el primer valor, el cero a 1 y me muestra esto

"1035649161"
"?12=45:787"

Así que iré probando seriales dígito por dígito hasta dar con el que sea igual al de arriba y el primer digito la O y el segundo digito no cambia si lo modifico así que pongo el valor que me muestra arriba es el 0 y así sucesivamente es ir probando dígitos hasta que concuerden y un dato que nos dio el usuario que presento el crackme es que el serial está separado por guiones "-" así que ingresaré el guion quedando así



Bueno como pudimos ver la primer parte del serial está en la línea 00401494, la segunda esta en la línea 00401687 aqui una foto 


la tercera está en la línea 00401812 y es igual es ir probando los dígitos del serial


Otra cosa hay veces que el serial ingresado es similar al de arriba y no muestra el cartelito correcto así que si está complicado y para la última parte es una constante siempre será el valor 4BE708B1, pero creo que mejor quieren como lo hice pues bueno en este momento no he podido con el depurador x32dbg por los hilos que no me dejan tracear, pero la primera vez que lo logre fue con el x32dbg, pero como no puedo seme hizo más fácil ahora hacerlo con IDA aquí lo explico.... Asi que lo abrimos con IDA y nos muestra esto


Como ven yo aquí ya lo tengo si ustedes no lo tienen tendrán que presionar el botón New y buscar su ubicación en su PC y después parece esto


Ahora damos OK  y nos muestra esto


Después de esto presionamos la letra G y ponemos la dirección 00401943 que es donde se encuentra la parte donde se genera esa última parte del código y lo ponemos


Y nos muestra la siguiente zona


Acto seguido presionamos F5 y damos que si al mensaje que aparece y nos mostrara el código un poco más entendible como en c++ esto
 

Así como pueden ver el código se encuentra más entendible, así que yo analice el código y para hacerlo más simple aquí les dejo el código un poco más sencillo para que analicen como funciona

v24=string ^ 0x44950FB1
v25=v24 & 0x3E0000
if((v24 & 0x3E0000)==0x320000) 
{
   v25 = v24 & 0xFC00000;
   if ( (v24 & 0xFC00000) == 0xF400000 )
   {
      v25 = v24 & 0x1FFE0
      if ( v25 == 1792 )  //El valor 1792 esta en decimal asi que en Hexadecimal es 700 
      {
          alert("correcto") //Yo agregue esto no aparece en IDA jajaja
      }
   }
}

Así que para encontrar el valor es así:

F400000 and FC00000  = F400000 

F400000 xor 44950FB1= 4BD50FB1

4BD50FB1 xor 320000 = 4BE70FB1

4BE70FB1 xor 700   =  4BE708B1

Asi que la clave para Flamer es: 

O03K64716O-CME3CECCMT-H328Y7N8F2-4BE708B1

Y nos muestra el siguiente mensaje


Bueno creo que es todo por hoy espero les haya gustado saludos Flamer y ven que no soy un experto así fue como encontré el serial esa vez, pero si les adelanto que el keygen lo estoy haciendo lo que llevo es la primera parte del serial, pero como meda flojera lo dejo y cuando tengo tiempo vuelvo a el en fin bay


miércoles, 4 de noviembre de 2026

Solucion al Crackme 6 De Enigmagroup

Hola amigos hoy veremos la solución del crackme 6 de la página de enigmagroup, aclaro este crackme lo resolví cuando estaba la página activa, hoy que lo resolví me dio otro resultado y pienso es porque la página ya no está activa, también aclaro no soy experto y solo me conformo sacando el mensaje correcto y creo que no encontré la clave que había encontrado al principio y es porque creo que el crackme se conectaba a la página bueno empecemos ya ustedes verán... Al ejecutarlo nos aparece este mensaje


Asi que descargamos el archivo MSinet.ocx y lo aguardamos en la carpeta "SysWOW64" ya que es de 64 bits nuestro sistema y lo registramos con el comando

regsvr32 C:\Windows\SysWOW64\msinet.ocx

Aclaro el CMD lo tenemos que abrir como administrador y si su sistema es de 32 bits se aguarda en la carpeta "System32"....despues de esto nos arroja el cartelito de registro exitoso, ahora ya podemos ejecutar el crackme y es este


Así que pasamos abrirlo con el x32dbg y al presionar F9 e ingresar el nombre y serial nos arroja este error


Así que nos iremos a módulos y buscaremos la API que compara y es esta vbaStrCmp y nos muestra esto y ponemos un breakpoint


Así que damos clic y nos manda a esta zona


Así que nos iremos más arriba donde genera el error, nos iremos hasta la línea 004030B6 y ponemos un breakpoint y lo ejecutamos pondremos como nombre "polon" y serial "123456" y si nos fijamos más arriba como que manda llamar un archivo


Creo que por eso da error porque el archivo ya no está en línea así que para validar el programa modificaremos las líneas 0040310B y 00403155 le pondremos MOV EDI,0 


Ya que le pusimos 0 nos iremos traceando hasta la línea 00403210 y nos muestra esto


Hay podemos ver con que compara con "error code" y mas adelante nos muestra esto

 

Asi que en los 2 campos ponemos ese valor y nos arroja esto


No se si esto cuenta como solución, pero es la que yo encontré y la primera vez que lo solucione los seriales eran Nombre= "Controller" y Serial= "verify1337"

Bueno espero les haya gustado saludos flamer

martes, 3 de noviembre de 2026

Solucion al Crackme MyCrackIt De Devastator

Hola amigos hoy veremos el crackme de devastador es algo sencillo, pero entretenido bueno para pasar el rato aquí una foto de la víctima


Asi que primero buscamos las string y nos muestra esto


Asi que damos clic en el mensaje well done que quiere decir bien hecho y nos muestra esto


Como podemos ver cuando llegue al mensaje correcto no veo que mande llamar la API MessageBoxA asi que ojo con ese dato no se muestra como cuando se ejecuta el mensaje incorrecto, despues de mostrar el mensaje correcto salta para mandar llamar la API EndDialog que cierra el programa...asi que nos vamos mas arriba para ver que nos muestra y en la linea 004010E0 vemos el salto decisivo, es el que nos manda al cartelito correcto y el incorrecto asi que nos iremos mas arriba en la linea 00401044 y ponemos un breakpoint


Ahora pasaremos a ejecutarlo y pondré lo siguiente


Y se detiene justo donde le indicamos así que nos vamos traceando y vemos que hace una resta en la línea 00401082 resta el valor que ingresamos en el primer cuadro de texto con 200E4


Así que para que EAX valga D  tiene que se 200E4 + D = 200F1  como se mira arriba el número a ingresar tiene que ser 131313 que en hexadecimal es 200F1 asi que lo volvemos ejecutar y seguimos

Nota: yo me guie como arriba en la línea  00401064 está un push que contiene D


Y vemos que unas líneas abajo en la línea 004010B3 xorea la palabra que ingresamos "polonesis" con estos valores

24 0B 15 1C 13 0A 04 36 06 17 2F 64 64


El resultado se aguarda en el dump aquí


Y seguimos traceando y con F8 y en la línea  004010D3 vemos que carga la cadena resultante del xoreo con un PUSH lo carga a la pila creo que lo usara en la API GetProcAddress y si es la correcta no salta en el la instrucción JE y creo que es la API MessageBoxA ya que esa es la que no se mira en el CALL mas abajo en la línea 0040116A y así que para ingresar MessageBoxA lo tenemos que convertir a hexadecimal y luego xorearlos 

MessageBoxA = 4D 65 73 73 61 67 65 42 6F 78 41

XOR

                          24 0B 15 1C 13 0A 04 36 06 17 2F 

--------------------------------------------------------------------------

 information     69 6E 66 6F 72 6D 61 74 69 6F 6E

Y si ingresamos esos valores nos arroja esto


OJO: tiene que ser una API de la librería USER32.DLL y con 11 digitos......yo intente con la API AppendMenuA y si entra no salta en la línea 004010E0, pero no muestra el mensaje, ya que esa API no se encarga de eso

Bueno saludos Flamer

sábado, 31 de octubre de 2026

Solucion Al Crackme 1 de Bocvk

Hola amigos hoy veremos la solución del primer crackme de bocvk, ya publiqué la solución del segundo y tercero, ahora toca al primero y con esto damos por finalizado la serie de estos crackmes de bocvk

Para empezar primero lo abrimos con el x32dbg y buscamos las string



Y como pueden ver hay esta el mensaje correcto y el incorrecto, así que damos doble clic y no envía a esta zona


Como podemos ver hay esta la API GetDlgItemTextA que se encarga de tomar el serial ingresado y más abajo compara con 8, esto quiere decir que el serial tiene que tener 8 dígitos porque si no el salto se cumple así que yo ingresare como serial "12345678" y no se les olvide poner el breakpoint que está en la imagen


Y damos clic al botón OK y se detiene justo donde le indicamos, como el serial tiene 8 dígitos la condición la cumplimos, así que nos vamos traceando hasta la línea 004010B1 que es un CALL y entramos a el presionando F7 y nos muestra el siguiente código

0040114A | 33D2                     | xor edx,edx                                    |
0040114C | 33C9                     | xor ecx,ecx                                    |
0040114E | 8B91 24314000            | mov edx,dword ptr ds:[ecx+403124]              | ecx+403124:"12345678"
00401154 | 83F2 02                  | xor edx,2                                      |
00401157 | 8991 4C314000            | mov dword ptr ds:[ecx+40314C],edx              |
0040115D | 41                       | inc ecx                                        |
0040115E | 3BC8                     | cmp ecx,eax                                    |
00401160 | 74 02                    | je crackme #1.401164                           |
00401162 | EB EA                    | jmp crackme #1.40114E                          |
00401164 | 33D2                     | xor edx,edx                                    |
00401166 | 33C9                     | xor ecx,ecx                                    |
00401168 | 8B91 74314000            | mov edx,dword ptr ds:[ecx+403174]              | ecx+403174:"crackmes"
0040116E | 83C2 03                  | add edx,3                                      |
00401171 | 8991 9C314000            | mov dword ptr ds:[ecx+40319C],edx              |
00401177 | 41                       | inc ecx                                        |
00401178 | 3BC8                     | cmp ecx,eax                                    |
0040117A | 74 02                    | je crackme #1.40117E                           |
0040117C | EB EA                    | jmp crackme #1.401168                          |
0040117E | C3                       | ret                                            |

Como podemos ver si lo tracean lo que hace el primer ciclo xorea cada dígito del serial ingresado con 2  y da como resultado "3016745:" y lo que hace el segundo ciclo es que le suma ala palabra "crackmes" 3 a cada dígito y como resultado de esta suma da "fudfnphv" y salimos del CALL y luego compara en la línea 004010C0


Ahora para revertir esto lo que aremos es copear la palabra "fudfnphv" e ingresarla como serial y la palabra que nos de esa será nuestro serial correcto y nos da la palabra "dwfdlrjt"


Así que ingresamos "dwfdlrjt" y nos arroja esto


Bueno amigo eso es todo espero les haya gustado saludos Flamer y con esto damos por finalizado los crackmes de el usuario bocvk

viernes, 30 de octubre de 2026

Copiar y Descargar el Codigo HTML De Una Pagina Web Ya Cargada

Hola amigos hoy veremos como descargar el código fuente de una página web ya sé que si damos clic derecho y ver código fuente se puede ver y copiar, pero que pasa si lo hacemos así no podemos descargar los elementos que se cargan después eso se puede ver si damos clic derecho y luego en inspeccionar, hay veremos elementos que se cargaron después, me refiero al código DOM (Document Object Model o Modelo de Objetos del Documento)

Para hacer esto seme ocurrió probar este código primero, lo probé en una página de Instagram

const code = document.documentElement.outerHTML;
const a = document.createElement('a');
   a.href = 'data:text/plain;charset=utf-8,' + encodeURIComponent(code);
   a.download = 'pagina.html'; 
   a.click();

Si se descarga pero si aparece esta ventana


Aparece porque yo tengo configurado el navegador así, y si aparece se me pierde el mause... Pero solo doy en enter y se descarga y listo ya tenemos el código completo... Pero ami seme ocurrió otro método y lo cale en la página de Instagram con una ventana de incógnito, para eso nos iremos a Instagram a cualquier perfil y damos clic derecho y luego en inspeccionar



Después nos iremos a la pestaña consola y borramos lo que hay así



Ahora copeamos el siguiente código y lo pegamos en la consola....NOTA: yo estoy desde una ventana de incógnito, no por miedo, sino por mi privacidad... no peguen códigos de desconocidos en la consola si no saben lo que hace, ya que como dice el mensaje pueden ser víctimas de robo de cuenta, seguimos 

const code = document.documentElement.outerHTML; 
document.write('<textarea id="log" style="width:70%; height:400px;"></textarea>');
document.getElementById('log').value = code;

const boton = document.createElement('button');
boton.textContent = 'Copiar El Codigo HTML';
boton.onclick = () => navigator.clipboard.writeText(code);
document.body.appendChild(boton);

Este código ya no descargará el código, lo que hace es crear un cuadro de texto con el código HTML adentro y aparte un botón para copiarlo aquí lo muestro



Solo damos clic en copiar y lo pegamos en el bloc de notas y aguardamos como "pagina.html" y veremos lo siguiente


Como vemos nos muestra las imágenes y lo demás, esto no pasaría si damos clic derecho, ver código fuente y copiar tal código

Bueno eso es todo saludos Flamery podría haberlo hecho en Node.js o Python, pero no mejor preferí hacerlo de forma manual...y otra cosa son cosas simples las que enseño, ya que no soy profesional no me considero uno, soy tan solo un novato que está aprendiendo y publica lo que está aprendiendo