Foro de elhacker.net

Programación => Ingeniería Inversa => Mensaje iniciado por: Flamer en 23 Mayo 2014, 06:13 am



Título: Como Leer Posicion De Memoria Con Vb6
Publicado por: Flamer en 23 Mayo 2014, 06:13 am
Hola amigos el tema sonara algo confuso por que parece queba en otro subforo y si es asi cambeenlo...
Bueno a lo que boy es que tengo un crackme que genera valores aleatorios y pues alguien ya le hizo keygen en vb y mi pregunta es como leer la posicion de memoria del serial que genera el crackme cuando se esta ejecutando.

Nota: el keygen no funciona si no se esta ejecutando el crackme

lo que ase el keygen es igual al Cheat engine.
Se podria intentar con el Cheat engine pero no sabria que serial buscar ya intente

bueno saludos Flamer y tenia meses con esta duda y pues seme hizo bien abrir un hilo y preguntar aver si alguien de aqui sabia algo


Título: Re: Como Leer Posicion De Memoria Con Vb6
Publicado por: engel lex en 23 Mayo 2014, 06:41 am
mi pregunta es como leer la posicion de memoria del serial que genera el crackme cuando se esta ejecutando.

esto te puede ser de utilidad, es el api para leer posiciones de memoria de procesos
http://msdn.microsoft.com/en-us/library/windows/desktop/ms680553(v=vs.85).aspx (http://msdn.microsoft.com/en-us/library/windows/desktop/ms680553(v=vs.85).aspx)


Título: Re: Como Leer Posicion De Memoria Con Vb6
Publicado por: Mad Antrax en 23 Mayo 2014, 12:45 pm
Prueba de encontrar el pointer que apunta a la variable que deseas sacar y lee el contenido del pointer.

Otra forma sería buscando un patrón de bytes en la memoria que indique el inicio de la estructura de los datos.

Si puedes postear el ejemplo me lo miro


Título: Re: Como Leer Posicion De Memoria Con Vb6
Publicado por: Flamer en 24 Mayo 2014, 01:47 am
Hola antrax perdon por el retraso pero uno no tiene tiempo de estar pegado ala pc todo el dia bueno aqui la muestra.

ultrashare.net/hosting/fl/76c72150e3
 (http://ultrashare.net/hosting/fl/76c72150e3)

saludos flamer y otra cosa el que le iso keygen es mi amigo Faquiver pero me gusto la idea de preguntar aqui y compartir


Título: Re: Como Leer Posicion De Memoria Con Vb6
Publicado por: tincopasan en 24 Mayo 2014, 07:25 am
Flamer:
           no entendi bien que queres, ¿hacer el keygen en vb6? ¿o con el cheatengine? con los dos se puede igual, lo bueno del cheatengine es que practicamente es mas rapido. El programita solo toma como usuario el nombre del pc y en la direccion 402391 lo compara con el usuario ingresado, pero el verdadero esta en eax, por lo tanto si en el momento de la ejecucion lees ese registro ya tenes el usuario a usar, por otro lado el serial verdadero lo pone en 40253A en el registro ecx asi que tendrias los datos en memoria. Depende de lo que quieras hacer es la respuesta mas concreta, programar en vb6 (ya no lo uso mas pero no hay problema) o en cheatengine (lo sigo usando y en este caso es la opcion mas facil) 


Título: Re: Como Leer Posicion De Memoria Con Vb6
Publicado por: Flamer en 24 Mayo 2014, 21:52 pm
Hola tinco la verdad el keygen lo quiero hacer en vb6 y ya estuve investigando la api ReadProcessMemory pero no entiendo nada.
Ejemplo estoy en el celular e:
Código:
variable=ReadProcessMemory(idproceso,region_de_memoria,array_de_bytes,Len(array_de_bytes),aqui_nose_queba)
pordon por el ejemplo pero alguien me podria explicar si estoy bien y que valor tiene que ir en la ultima opcion o mas bien si alguien me envia un ejemplo descargable en un rar y analisarlo mejor.
A y yase que tengo que usar la api OpenProcess la cual meda cero y lo aguardo en idproceso.

Saludos Flamer


Título: Re: Como Leer Posicion De Memoria Con Vb6
Publicado por: MCKSys Argentina en 24 Mayo 2014, 23:08 pm
El ultimo parametro es un puntero a una variable tipo DWORD que recibirá la cantidad de bytes leídos por la API.

En VB declaras la variable como Long y la pasas ByRef.

Saludos!