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 - xavierote

#11
Ingeniería Inversa / Re: Duda Ollydbg
28 Mayo 2008, 14:53 PM
Estate atento con los SHORT JUMP's, ya que si colocas un JMP que es más largo, necesita más bytes de información y te borrará parte de código.

Cuando el OllyDBG lo rellena con NOP's pueden ser dos cosas, o que hayan menos bytes que antes de colocar el salto, o que hayan más y rellene con nop's la siguiente instrucción.

¡Un saludo!
#12
A lo que quieres, tienes que ir introduciendo cosas aprendiendo otras. No esperes en muchas ocasiones verte un tutorial de lo que buscas.

Yo sólo te he llevado a ejemplos de la api que quieres utilizar, es decir, WriteProcessMemory.

Un saludo.
#13
Puees... no tengo ningún tutorial de como utilizar la api, pero tienes ejemplos de como utilizarla en PlanetSourceCode.

Un saludo.
#14
EDITO: Ya ha contestado Cassiani.
#15
Te recomiendo que te veas el código fuente de algun packer con source code, como el upx, para que veas como actúa.

No se si lo conocerás pero, para las api's de windows en visual basic, te recomiendo que te descarges el programa APIGuide en http://allapi.mentalis.org/agnet/apiguide.shtml
Es una especie de documentación de las api's de windows orientado a visual basic.
Está bastante completo y tiene ejemplos para casi todas las api's de windows.

¡Un saludo!
#16
Cita de: cobein en 24 Mayo 2008, 14:27 PM
p-code pseudo code, Native ???

Creo que no me has entendido bien. Da igual que lo compiles en P-Code o en Nativo. Un lenguaje interpretado siempre será más lento que un lenguaje compilado, como bien he dicho antes, hacer un intérprete en visual basic, o en cualquier otro lenguaje, siempre será más lento que traducir un lenguaje a código máquina.

No quiero hacer una discusión sobre esto, así que dejo ya de postear en este post.

¡Un saludo!
#17
Si no me equivoco, es un control de visual basic con el nombre Send_Command y en el evento click.

Ahora, si es esa la duda, ¿has llegado a poner el código en el evento click del control? ¿Existe ese control con ese nombre?

Un ejemplo básico sería:


Private Sub Form_Load()
    send_command_Click
End Sub

Private Sub send_command_Click()
    MsgBox "Hola"
End Sub


¡Saludos!
#18
Cita de: cobein en 24 Mayo 2008, 12:35 PM
A ver, no quiero generar un problema ni mucho menos una discucion, pero si se puede generar e interpretar codigo de maquina desde VB cual es la limitacion?

Yo tampoco quiero generar una discusión, simplemente quería hacer una aclaración de que en cualquier lenguaje se puede hacer un compilador, aunque es un trabajo duro hacer uno totalmente funcional.

Por supuesto, las limitaciones de Visual Basic están en la optimización del código y su potencia. Al ser un lenguaje pseudo-interpretado, su velocidad de ejecucion es menor que un lenguaje compilado. Por tanto, hacer un intérprete de un lenguaje de bajo nivel en visual basic se volvería totalmente inútil, ya que programar en ese lenguaje normalmente se hace por su velocidad y optimización. Interpretarlo en Visual Basic le quitaría las ventajas que tiene un lenguaje de bajo nivel.

La mejor opción en ese aspecto siempre sería hacer una compilación, ya que al parecerse tanto el ensamblador al código máquina, se hace mucho más fácil que con la traducción de un lenguaje de alto nivel.

¡Saludos!
#19
Antes de nada, no soy un fan de Visual Basic, pero mucha gente me hace gracia.

No tiene nada que ver a que visual basic "esté a años luz del asm". Pues claro, asm es de bajo nivel y visual basic es de alto nivel.

También se busca en un compilador que sea portable, es decir, que se pueda portar a distintos sistemas operativos, por tanto programarlo en visual basic es programar un compilador prácticamente para windows, a pesar de haber alternativas de visual basic para otros OS.

El problema es muy sencillo a nivel teórico. Los ficheros PE, o también llamados ejecutables (o exe's), tienen una estructura (una cabecera, el OEP o dirección del punto de inicio del programa, etc....), y esos archivos están en código máquina que es el lenguaje más cercano que se puede traducir literalmente en 1 y 0.

Un compilador lo que hace es traducir un lenguaje (ya sea inventado o alguno real) a código máquina, generando primero la estructura correspondiente para cada sistema operativo, incluyendo las librerías necesarias, y luego introduciendo el código máquina necesario para ejecutarse de la misma manera que se programó en el lenguaje original. (En este punto decidme donde no se puede hacer esto en visual basic).

Luego, primero hay que informarse qué hace realmente un compilador o intérprete, entonces diréis que si que es posible, aunque al no parecerse nada el lenguaje original al lenguaje destino, será mucho más difícil la traducción.

Visual Basic tiene mucha potencia en cuanto al diseño del entorno gráfico del programa, y su método de programación es sumamente sencillo, aunque para algunos incompleto, es cierto. Pero tiene acceso total a las API's de Windows, por tanto control total sobre el sistema, como lo hacen otros lenguajes. Por tanto, antes de comparar hay que conocer. Por supuesto, hay limitaciones en cuanto a la potencia del lenguaje, pero si no se programa un intérprete, ¿para que quieres potencia?

PD: Tanto que os gusta decir que los compiladores se hacen con otros lenguajes, ¿sabéis hacer compiladores con dichos lenguajes?

Un saludo.
#20
He creado un mirror en filefactory.
He puesto la dirección de descarga en el primer post.
Estuve mirando el servidor de Hosting que posteó Sgclt, ¡y es demasiado que todo eso sea gratuito! Pero para subir un simple archivo de poco menos de 200kb, no me iba a crear una cuenta allí. De todas formas la tengo en mis marcadores por si me abro mi web, tener un sitio gratuito donde subirla.

¡Un saludo!