Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - 4rS3NI(

#21
Buenas

Si es un loop. Fijate como antes del:

                         PUSH  0
                         PUSH  0
                         DEC  ECX
                         JNZ  SHORT  Backup4a.004B753C

Hay un mov Ecx, 44. Entonces ecx va a funcionar como contador, y cada vez que pases por Dec ecx el valor de este registro se va a ir decrementando en 1 hasta llegar a cero. O sea que vas a tener que hacer el loop 44 veces (si te fijas, lo que hace es llenar la pila de ceros con los push 0, o sea que la va preparando para algo...  ::)). Para evitarte molestia, directamente poné un bp despues del jnz y dale f9.
Perdón por no ayudarte más pero en mi máquina se casca el olly y empieza a joder con eso de "el programa no respondio en 5 seg..."

Saludos, y ya nos irás diciendo cómo te va  :)


#22
Buenas

Citar...tras chequearlo con el Lenguaje; presenta las mismas características que el tuto... 

Usa PEID el language es muy viejo

Citar...abro el programa con el DeDe,  y  me encuentro, primeramente  que el número  que pertenece a la:   btnRegisterClick; es otro al del tuto,   004B7534  me digo pues bien, vale, seguiremos adelante...

004B7534 no es más que la dirección en memoria, pueden variar de pc en pc, lo que importa es que estés en el evento correcto en el DeDe (btnRegisterClick)

Citar...Cojo la olla, abro al  menda, localizo la dirección, le doy el correspondiente kosky  (bp),
F9 Run  me sale el programa y busco al pringao (hes register),  pidiendonos  que  amoquinemos  los  urdeles o la pringá;  may  name  is, XXXX, purche  number  is, XXXX, number de  register key  is, XXXXXXXXXX, hay que ver eh, - sorry tío-" tampoco es pa ponerse así";  bueno  sigo,  click aceptar  y,  caigo en pleno coco (el bp); y dice el tuto,  ahora traceamos con F8 y:

F8:  una, dos, tres, cuatro, cinco, seis, siete y; vuelvo a la cuarta dirección contando la del kosky (bp), ahí estoy enrollao dando bueltas...

Pues, por lo que veo, voy a suponer; puede ser que  al volver siempre al mismo bp sea porque te encuentres en un loop, que el programa usa ya sea para ir generando un número o para, directamente, ir comparando. Lo que me hace pensar esto es que te pide:
may  name  is, XXXX, purche  number  is, XXXX, number de  register key  is, XXXXXXXXXX
Entonces lo mas probable es que use tu nombre y ese "purchase number" para generar el serial.
Especifica un poco más y vemos  :D

Saludos




#23
Buenas

Cuando decis:

CitarEntonces, puede que éste sea el motivo por el cual, mientras treceo, me encuentro tres Calls sospechosas con la misma dirección y el mismo módulo, no?
Es más, mientras esto ocurre se va generando un interesante archivo  que es el: mgwin.ini, no?

Lo más probable es que el programa este usando los dígitos del serial (o de algún número) que introdujiste para generar el correcto y luego compararlo mediante métodos variados.

Suponiendo que en esa dirección a la que apuntan las calls tenes algún tipo de algoritmo de generación, lo que estaría haciendo el programa sería tomar un caracter y pasarlo por esas operaciones; escribir el resultado en el archivo mgwin.ini, pasar al otro caracter y hacer otra llamada al mismo algoritmo y así sucesivamente. Esto es una suposición ya que no he visto el programa :

Tomo 1º caracter
Call [algoritmo]
Tomo 2º Caracter
Call [algoritmo]
Tomo 3º Caracter
Call [algoritmo]

[algoritmo]
multiplico
divido
sumo2
Escribo en mgwin.ini
RETN


CitarViendo ésta forma de proceder, ocurre igual con cada instrucción?

Las calls te llevan a subrutinas en las que hay instrucciones que sí se encuentran "tabuladas" (test, cmp etc). Buscá en manuales de ensamblador

(jeje, yo meta "hablar" y quizás ya lo tenias cocinado  ;D)

Saludos
#24
Buenas, no estoy muy seguro de saber qué estás preguntando (me lío con tus metáforas) pero lo intento

Cuando decís:

CitarPor ejemplo: todos estos que resalto y que están entre una Call y otra; son las ordenes, movimientos, verificaciones, comparaciones  u salto, que manda  realizar -cada CALL-, no?

La respuesta es no, cuando te encontrás en Call  unpecked.XXXXX si presionas F7 (en el caso de Olly); recién ingresas en esa call, es decir, te lleva a la dirección XXXXX en el módulo unpecked. Ahí vas a tener varias instrucciones propias de la call, y al llegar a una instrucción (Retn) y ejecutarla, vas a regresar a TEST  EAX,  EAX. Por ello, TEST  EAX,  EAX son las instrucciones siguientes a la Call, y no las instrucciones de esa Call.

00420C6E   MOV DWORD PTR DS:[457CB8],EAX
00420C73   SHL EAX,8
00420C76   ADD EAX,DWORD PTR DS:[457CBC]
00420C7C   MOV DWORD PTR DS:[457CB4],EAX
00420C81   CALL HWORKS32.00424A6F
00420C86   CALL HWORKS32.00423769
00420C8B   TEST EAX,EAX
00420C8D  JNZ SHORT HWORKS32.00420C99
00420C8F   PUSH 10


00424A6F   TEST BYTE PTR DS:[457CB1],80
00424A76   JE SHORT HWORKS32.00424A95
00424A78   CMP DWORD PTR DS:[457CB8],4
00424A7F   JNB SHORT HWORKS32.00424A95
00424A81   MOV DWORD PTR DS:[4589E4],4000
00424A8B   MOV DWORD PTR DS:[4589E8],1000000
00424A95   RETN


En el fragmento de codigo de arriba se ve, cuando llegamos a 00420C81 tenemos una Call, si entramos con F7, vamos a  00424A6F en el módulo HWORKS32, (programa que estoy debuggeando) que es a la direccion a la que apunta. Luego ejecuta todas las intrucciones hasta un Retn en 00424A95 y de ahi vuelve a 00420C86 (la call brillante siguiente a la en negrita  ;D).
Entonces cada call tiene una función propia distinta, imposible tabularlas, a no ser... que dicha call haga referencia a una api de win. En ese caso recurre al winapi

No se si fuí claro o si respondí a la pregunta.

Saludos

Ps: hay variantes para el regreso de una call, no solo el RETN, pero hay tutes que lo explican mejor que yo
#26
Ingeniería Inversa / Re: Dede
11 Junio 2005, 01:14 AM
http://reversing.kulichki.net/files/dizas/dizas.htm

No es la más nueva. En un post había una dirección de una página rusa creo y ahi estaba. Busca

Saludos
#27
Viste el autoexec.bat?

Saludos
#28
Ingeniería Inversa / Re: Ayuda con softice
3 Junio 2005, 19:26 PM
Modificaste el winice.dat?

Saludos
#29
Ingeniería Inversa / Re: Non rula
3 Mayo 2005, 04:13 AM
jajaaja, Anotado  8)

Un saludo
#30
Ingeniería Inversa / Re: Non rula
1 Mayo 2005, 07:45 AM
Buenas, te posicionas encima de la instruccion donde pusiste el HB. boton derecho, breakpoints, remove hardware breakpoint. Si no te acordas de la direccion deja correr el programa y donde pare, ahi es :p


saludos