elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado:


+  Foro de elhacker.net
|-+  Programación
| |-+  Ingeniería Inversa (Moderadores: karmany, .:UND3R:., MCKSys Argentina)
| | |-+  Problema con un programa en Visual Basic
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: 1 [2] 3 4 Ir Abajo Respuesta Imprimir
Autor Tema: Problema con un programa en Visual Basic  (Leído 23,758 veces)
anjz

Desconectado Desconectado

Mensajes: 34


Ver Perfil
Re: Problema con un programa en Visual Basic
« Respuesta #10 en: 13 Febrero 2006, 20:33 pm »

Bueno, ya he conseguido desactivar la proteccion de tiempo ;D

He hecho un pequeño manual muy sencillo y paso a paso de como hacerlo
lo podeis descargar aqui:

http://www.geocities.com/anjsweb/5minutos.doc
En línea

javyer

Desconectado Desconectado

Mensajes: 14


Ver Perfil
Re: Problema con un programa en Visual Basic
« Respuesta #11 en: 13 Febrero 2006, 23:04 pm »

Muchas gracias por las molestias amigo. He estado afuera estos días y voy a leer y poner en práctica el manual. Ya te contaré. Saludos.
En línea

javyer

Desconectado Desconectado

Mensajes: 14


Ver Perfil
Re: Problema con un programa en Visual Basic
« Respuesta #12 en: 13 Febrero 2006, 23:20 pm »

He estado siguiendo las instrucciones pero cuando se ejecuta y pasa (creo los 5 min.) aparece el siguiente error en pantalla: "Error "50003" en tiempo de ejecución: Error inesperado". ¿A qué puede deberse?.
También tengo 2 dudas:
- Cuando estamos en la dirección del salto y hacemos doble clic para cambiar la instrucción y cambiamos la instrucción original:  JNZ SHORT Gedo.005221C7  por la nuestra: JMP 005221B1 se me va a la pantalla CPU - main thread. Ahí es cuando tengo que hacer doble click y cambiar esos valores, lo hago, ¿tengo que picar despues en Assemble?. Cuando lo hago las letras son rojas y pone "JMP SHORT Gedo. 005221B1". ¿Tengo después que picar con el botón secundario hacemos Copy to executable > Selection?.
- Cuando dices "... podriamos cambiar jnz por jz así el programa funcionaría justo al revés..." , ¿por qué jz funciona al revés?, ¿de dónde sale eso?. Y por último, ¿por qué al cambiar la dirección se pone JMP XXXXX?, ¿de dónde sale JMP?.
Saludos y gracias.
« Última modificación: 14 Febrero 2006, 00:19 am por javyer » En línea

anjz

Desconectado Desconectado

Mensajes: 34


Ver Perfil
Re: Problema con un programa en Visual Basic
« Respuesta #13 en: 14 Febrero 2006, 01:25 am »

Lo voy a mirar mejor, pero lo probé, pasaron los cinco minutos y seguia funcionando, si que noté que al cerrar el programa me tiró un error, pero fue al cerrarlo. De todos modos voy a ver si le busco una mejor solución como registrarlo por ejemplo. Si esque se puede.

Respondiendo a tus preguntas, SI es como tu lo mencionas. Cambias la instruccion y le das a assemble, y entonces tus cambios  salen en color rojo. Mas tarde las instrucciones que hayas cambiado (en este caso solo una) las seleccionas y haces copy to executable > selection y asi de esta manera guardos los cambios en un ejecutable.

Lo de podemos cambiar jnz por jz, es por lo siguiente.

JNZ Significa Jump if Not Zero es decir Salta si No es Cero. Por encima se hace alguna comparación de dos registros y si coinciden pues sería zero y si no coinciden seria not zero. En este caso JNZ SHORT Gedo.005221C7 nos lleva a la direccion 005221C7 si una comparacion que ha hecho algo mas arriba no  coincide. ¿Y que compara? pues no nos importa, asi de simple, el programa evaluara ciertas condiciones y demas, y pondrá ciertos valores en unos registros segun unas condiciones, el caso es que no nos interesa que salte. PERO SI NO ESTA REGISTRADO LO QUE SEA QUE COMPARE PARECE NO COINCIDIR. y por eso caemos en "se te acabo el tiempo".
Por eso si cambiamos jnz por jz. Saltará si es cero (es decir si la comparacion coincide) pero como hemos dicho que al no estar registrado nunca coinciden pues no saltará a la zona mala y nosotros contentos.

No se si te habré aclarado pero vaya, leelo con calma. De todos modos los manuales de ratón para comenzar y aprender de estas cosas son ideales. Si te interesa este tema te los recomiendo.

En línea

anjz

Desconectado Desconectado

Mensajes: 34


Ver Perfil
Re: Problema con un programa en Visual Basic
« Respuesta #14 en: 14 Febrero 2006, 01:35 am »

Te pongo un ejemplo para que entiendas mejor por que ponemos un jmp.
Voy a asemejar un codigo inventado en español que se supone que sería como el ensamblador.
Lo de que sean esos registros o esos valores me lo he inventado, solo es un ejemplo.

01---> en el registro eax se introduce 1
02---> en el registro ecx se introduce 2
03---> comparame eax con ecx (si coincidiesen seria zero sino seria not zero)
04---> salta si no es zero a la instruccion 45.
05
06
07
.
.
.
45--->LO SIENTO SE ACABO EL TIEMPO.


Si queremos evitar caer en la instruccion 45 podriamos poner en vez de "salta si NO es zero", un "salta si es zero".

O usar un jmp que significa salta por huevos, le da igual lo que haya salido en la comparacion. un jmp es un "salta por narices a la direccion que te indique"

por lo tanto si cambiamos "salta si no es zero a la direccion 45"
y ponemos "salta por narices a la instuccion 05" pues es como si nada pasara por que le dice que salte por narices a la siguiente instruccion. Vamos lo normal, el programa sigue su curso liena a linea en vez de ir a la 45.

Espero haberte aclarado.
En línea

javyer

Desconectado Desconectado

Mensajes: 14


Ver Perfil
Re: Problema con un programa en Visual Basic
« Respuesta #15 en: 14 Febrero 2006, 09:36 am »

Ok, todo mejor. Esperaré que me digas algo del error. Lo he hecho varias veces tanto con el cambio del registro cómo con la opción de que nunca se agote el tiempo y me da el mismo error. Saludos.
En línea

anjz

Desconectado Desconectado

Mensajes: 34


Ver Perfil
Re: Problema con un programa en Visual Basic
« Respuesta #16 en: 14 Febrero 2006, 21:43 pm »

Pues, la verdad esque la dirección esa que nos apuntamos del W32Dasm no se si es exactamente la dirección de la ventanita esa que dice que se te agotó el tiempo.

Igual está mal partiendo desde esa base.
Ese es el problema que le veo yo. No se como localizar exactamente la instrucción de el mensaje y por tanto la direccion en donde se decide si paso o no paso el tiempo.

Esque en las API que usa no me sale la _vbaend ni tampoco la rtcmsgbox(que es la que se usa para crear mensajes emergentes del estilo al que nos aparece diciendo que se acabó el tiempo).
No se por donde pillarlo.

Pero NO SABE NADIE??? me extraña. Yo esque no se mucho mucho, estoy aprendiendo. A ver si alguién que sepa algo mas sobre aplicaciones en VB se involucra un poquillo  ;)
En línea

javyer

Desconectado Desconectado

Mensajes: 14


Ver Perfil
Re: Problema con un programa en Visual Basic
« Respuesta #17 en: 14 Febrero 2006, 23:00 pm »

Haber si hay suerte y ayuda alguién. Espero noticias tuyas por si encuentras algo, ok?. Saludos
En línea

aragorn666

Desconectado Desconectado

Mensajes: 3


Ver Perfil
Re: Problema con un programa en Visual Basic
« Respuesta #18 en: 14 Febrero 2006, 23:16 pm »

Nada de nada ni idea como principiante que soy no se
« Última modificación: 15 Febrero 2006, 16:56 pm por fcxadsfasdfasdfasdfasdfasdfasdfasdf » En línea

aragorn666

Desconectado Desconectado

Mensajes: 3


Ver Perfil
Re: Problema con un programa en Visual Basic
« Respuesta #19 en: 14 Febrero 2006, 23:20 pm »

.
« Última modificación: 15 Febrero 2006, 15:17 pm por fcxadsfasdfasdfasdfasdfasdfasdfasdf » En línea

Páginas: 1 [2] 3 4 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
programa visual basic 2010
.NET (C#, VB.NET, ASP)
chocola 9 13,629 Último mensaje 21 Marzo 2011, 22:14 pm
por chocola
Mi primer programa en Visual Basic :) « 1 2 »
Programación Visual Basic
Luna71c0 16 10,232 Último mensaje 4 Agosto 2011, 00:34 am
por Luna71c0
Un reto Programa en Visual Basic .Net « 1 2 3 »
Ingeniería Inversa
elmejorb 29 18,181 Último mensaje 17 Febrero 2012, 01:52 am
por .:UND3R:.
Programa de visual basic no funciona en otras pcs
Programación Visual Basic
Novato261 4 2,644 Último mensaje 17 Mayo 2013, 21:35 pm
por Shell Root
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines