Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: Krnl64 en 7 Junio 2006, 02:59 am



Título: Dejar de Depender de MSVBVM.DLL
Publicado por: Krnl64 en 7 Junio 2006, 02:59 am
Buenas a todos.

Bueno, vengo a dejarles una forma de dejar de depender de

MSVBVM.DLL

Si desensamblamos esta DLL, veremos que las funciones que posee todas estan referidas a KERNEL32, USER32, OLEAUT32,GDI32, ADVAPI y a NTDLL.

Por lo tanto, si declaramos las funciones necesarias llamando al Kernel y a NTDLL, le pasamos los paramatros necesarios y retocamos el EXE resultante...

Vencemos la limitacion.

Es laborioso pero FUNCIONA !!!

Salu2


Título: Re: Dejar de Depender de MSVBVM.DLL
Publicado por: scod en 7 Junio 2006, 05:54 am
ya lo hiciste? como?

xD y ps si ya no queremos depender de esta dll,. porque mejor no unsar otro lenguaje? xD :p

salutes


Título: Re: Dejar de Depender de MSVBVM.DLL
Publicado por: LuckyMonkey en 7 Junio 2006, 16:26 pm
Y ya puestos para qué depender de kernel32??? mejor llamamos a las funciones de ntdll.dll directamente xDDD

No depender de esta libreria dá problemas a cambio de ninguna ventaja. Entonces mi duda: Para que?


Título: Re: Dejar de Depender de MSVBVM.DLL
Publicado por: _Sergi_ en 7 Junio 2006, 20:37 pm
Ni Win9x, ni WinME ni Win2000 tienen la máquina virtual de Visual Basic (MSVBVM.DLL) en el sistema. Ejecutar un programa hecho en VB en esos sistemas es imposible, a no ser que el usuario haya instalado manualmente     la máquina virtual de Visual Basic (MSVBVM.DLL).


Título: Re: Dejar de Depender de MSVBVM.DLL
Publicado por: Eternal Idol en 7 Junio 2006, 20:43 pm
La pregunta mas bien seria: ¿Vale la pena estar editando el EXE a mano (con el nivel de conocimiento que eso implica) en vez de aprender algun lenguaje que no tenga este tipo de dependencias?


Título: Re: Dejar de Depender de MSVBVM.DLL
Publicado por: _Sergi_ en 7 Junio 2006, 21:24 pm
Si, y la respuesta es no. No vale la pena.

Si la dependencia de la máquina virtual te da problemas, lo mejor es sencillamente, cambiar de lenguaje.


Título: Re: Dejar de Depender de MSVBVM.DLL
Publicado por: Eternal Idol en 7 Junio 2006, 21:32 pm
Si, y la respuesta es no. No vale la pena.

Si la dependencia de la máquina virtual te da problemas, lo mejor es sencillamente, cambiar de lenguaje.

Es lo que me parece a mi ...


Título: Re: Dejar de Depender de MSVBVM.DLL
Publicado por: Ironhorse en 7 Junio 2006, 22:55 pm
Exactamente, la principal (tal vez unica) ventaja de VB sobre otros lenguajes es la facilidad y rapidez que permite hacer el desarrollo de una aplicacion, si desechamos esa ventaja por un mal menor como depender de una libreria, el lenguaje no tiene razon de ser.


Título: Re: Dejar de Depender de MSVBVM.DLL
Publicado por: Krnl64 en 8 Junio 2006, 05:12 am
A ver.

Como decis, es mas facil cambiar de lenguaje y no tener esa dependencia.

Pero para quien de verdad quiera vencer esa limitacion, esa es la forma. Ya dije que no es facil, y que es laboriosa.

La opcion, va de gusto del consumidor.

Salu2


Título: Re: Dejar de Depender de MSVBVM.DLL
Publicado por: JuszR en 8 Junio 2006, 05:37 am
Y ya puestos para qué depender de kernel32??? mejor llamamos a las funciones de ntdll.dll directamente xDDD

No depender de esta libreria dá problemas a cambio de ninguna ventaja. Entonces mi duda: Para que?
¿Para qué depender de kernel32.dll? Simplemente para que funcione en la pc. Cualquier programa, sea hasta en C/C++, va a depender de USER32.DLL, KERNEL32.DLL. :P

La pregunta mas bien seria: ¿Vale la pena estar editando el EXE a mano (con el nivel de conocimiento que eso implica) en vez de aprender algun lenguaje que no tenga este tipo de dependencias?
Seguro que no. Mejor usar C/C++/Asm. :)


Título: Re: Dejar de Depender de MSVBVM.DLL
Publicado por: Eternal Idol en 8 Junio 2006, 08:34 am
Pero para quien de verdad quiera vencer esa limitacion, esa es la forma. Ya dije que no es facil, y que es laboriosa.

Bueno, no creo que lo hayas dicho del todo claro para la amplia mayoria de usuarios de VB. Es decir, no creo que lo puedan hacer con que simplemente les digas que hay que editar el binario ...


Título: Re: Dejar de Depender de MSVBVM.DLL
Publicado por: Krnl64 en 8 Junio 2006, 14:13 pm
Hombre, para hacer eso que dije hacen falta conocimientos del formato EXE que evidentemente no explique.

Ademas, creo que no soy el indicado para explicarlo.

Solo conozco lo justo el formato PE y habra gente que pueda explicarlo mejor que yo

Solo es cuestion de conocimientos y tiempo para el que se proponga hacerlo.

Salu2


Título: Re: Dejar de Depender de MSVBVM.DLL
Publicado por: LuckyMonkey en 8 Junio 2006, 14:42 pm
Bueno, la única grácia estaría en programar una aplicación en otro lenguaje que cambiara todas las direcciones de la IAT para que apuntasen a las librerias de las que depende la maquina virtual, ahún así esto no bastaría ya que cambiarán las llamadas a las funciones y habría que terminar cambiando el binario entero. Muy dificil y poco sentido tiene todo esto.

Citar
Y ya puestos para qué depender de kernel32??? mejor llamamos a las funciones de ntdll.dll directamente xDDD

No depender de esta libreria dá problemas a cambio de ninguna ventaja. Entonces mi duda: Para que?
¿Para qué depender de kernel32.dll? Simplemente para que funcione en la pc. Cualquier programa, sea hasta en C/C++, va a depender de USER32.DLL, KERNEL32.DLL. tongue

Cómo la mayoría de posts que he visto tuyos en este foro, tampoco quiero ofender, pero creo que te metes en percales de los que no tienes idea. Ya sé que todo programa depende de ntdll. Así que no lo has entendido, kernel32 depende de ntdll y teóricamente también sería posible liberarse de ella y hacer llamadas directamente a ntdll, a lo que me referia es que siempre podemos estar liberandonos de dependencias necesarias, pero esto no tiene sentido ni utilidad. Y además, estás equivocado, no toda aplicación depende de user32. (mirate el sc.exe por ejemplo)

La verdad que no recordava que win9x... no disponen de ella. Ahún así tampoco gana utilidad por ello ya que el trabajo que requiere a cambio de el rango de pcs que lo aprovecharían....


Título: Re: Dejar de Depender de MSVBVM.DLL
Publicado por: Krnl64 en 8 Junio 2006, 20:12 pm
Perdone LuckyFox, si ofendi su SABIDURIA.

DIFICIL ----> PERO NO IMPOSIBLE

Para empezar, yo no dije nada de eliminar la dependencia de NTDLL.

Tampoco dije que TODOS los programas usen USER32.

Lo que dije es que dentro de la DLL de la maquina virtual de VB estan las dependencias, anclajes, declaraciones o como quieras llamarlo a otras librerias.

Estas pueden llamarse directamente desde el EXE compilado.

Que yo sepa, los archivos binarios de siempre se pueden
editar.

Vuelvo a repetir que no es facil, pero tampoco Imposible.

Respecto a la opinion de que no tengo ni idea, paso de retarme con nadie, aunque no creo que nadie que tenga 5 post sea ninguna autoridad para decir que nivel posee ningun integrante del foro.

No tengo que demostrarte mis conocimientos en absoluto.

No vaciles diciendo que sabes tanto, y dedicate a aprovechar tus conocimientos y aprender algo util.

Basta de niños de 15 años que se creen grandes hackers y luego no saben ni como funciona 1 telefono celular.


Podrias mirarte los post del Treeview, encriptacion en Base64 o el de OBDC de 32 bits.

Despues me dices los conocimientos que poseo.

POSDATA: NO JUZGUES A NO SER QUE QUIERAS SER JUZGADO

Salu2



Título: Re: Dejar de Depender de MSVBVM.DLL
Publicado por: LuckyMonkey en 9 Junio 2006, 20:57 pm
Krnl64 te has ido de la olla, has leído bien mi post? en la segunda parte a partir de la cita de X.Cyclop estaba hablando con X.Cyclop. Ahora mejor?

Y ya de paso no he dicho que yo sea ninguna autoridad y con éste nick llevo 5 con otro del que perdí cuenta de correo y pass a saber cuantos :)


Título: Re: Dejar de Depender de MSVBVM.DLL
Publicado por: vbasicred en 12 Junio 2006, 05:46 am
Hola.

Bueno a mi lo unico que me interesa es aprender.

Tienes un ejemplo de un proyecto que no demenda de MSVBVM.DLL. Me gustaria estudiarlo para saber como lo lograste.