Título: api hook Publicado por: Cromatico en 18 Marzo 2011, 01:20 am holaaa que tal, queria preguntar una cosita...
Yo tengo programada una aplicacion que funciona como proxy, pero resulta que al pasar todo el flujo de paquetes de entradas y de salidas, y a su vez la misma aplicacion estar haciendo bastantes cosas (como readprocessmemory, etc etc) al parecer genera un poco de LAG entre la comunicacion... Lo que queria saber es si es posible evitar que dependa de mi aplicacion, es decir, hacer un api hook al winsock e interceptar send y recv para mandarlos al handledata de mi aplicacion... Estuve buscando por internet, hace unos dias encontre un articulo de unclose de cobain si no me equivoco, pero lo mire en ese momento y no pude entenderlo, resulta que ahora no logro encontrarlo! Otra cosa que vi es el post: http://foro.elhacker.net/analisis_y_diseno_de_malware/api_hook_delphi_espiar_las_comunicaciones_de_otros_procesos-t263615.0.html Pero esta el delphi y por desgracia no se convertirlo, y creo que tampoco sea tan facil... Gracias!!! edit: ya encontre el unclose de cobain, pero no logre nada :( Título: Re: api hook Publicado por: BlackZeroX en 18 Marzo 2011, 04:46 am .
No se delphi, pero lo que si se es identificar las apis y hay hay apis mas que nada; usa el buscador y veras unas ligas a unos proyectos que hookean apis ( puse las ligas anteriormente ). Dulces Lunas!¡. . Título: Re: api hook Publicado por: 79137913 en 18 Marzo 2011, 14:48 pm HOLA!!!
Mira, te lo traduje lo mejor que pude, no se como usar pointers en vb6 asique eso lo cas a tener que hacer vos. Te dejo el codigo del formulario, la Dll la podes compilar calculo. Y usa una libreria psApi, encontre una para vb6 pero no tiene todas las funciones fijate si la encontras. Entonces tambien te queda por ponerle psapi. a todas sus funciones. *Ahh, el codigo esta traducido, no esta funcional para nada, aviso. Código
GRACIAS POR LEER!!! Título: Re: api hook Publicado por: Cromatico en 18 Marzo 2011, 14:59 pm Hola!! Gracias 79137913 por tomarte la molestia!
Les comento, con mucha busqueda y ayuda logre compilar una dll en DEV C++, que hookea connect send y recv, y la pude inyectar perfectamente en el proceso que queria, la misma dll guarda en un archivo .txt todos los paquetes enviados y recibidos, lo que me faltaria, es enviar ese flujo de paquetes a vb, estuve investigando pero solo encontre formas de interactuar desde vb a c++ enviandole comandos, pero no alrevez, es decir, que todos los eventos de la funcion send de la dll los mande a vb automaticamente, quizas tenga que preguntar en el foro de d/c++ Gracias!! Título: Re: api hook Publicado por: 79137913 en 18 Marzo 2011, 15:34 pm HOLA!!!
Con command$ no podes? Cuando llamas a un ejecutable hecho en vb6 "ejecutable.exe parametros" En command$ aparecen los parametros. Sino... Podes hacer que el programa en c++ mande una pulsacion al form de vb6 entonces cuando este la pulsacion vos abris el archivo de texto (la pulsacion te indicaria que se modifico el archivo de texto). GRACIAS POR LEER!!! Título: Re: api hook Publicado por: Cromatico en 18 Marzo 2011, 16:10 pm claro pero creo q command$ enviaria los parametros solo al abrirlo (corregime)...
Lo que quiero hacer es hacerlo funcionar como un proxy, es decir, tiene que estar abierta mi aplicacion vb, inyectada la dll en el proceso que quiera, y la dll enviar la entrada y salida de paquetes a vb... Como dije, por ahora ya logre inyectar la dll, hookear connect, send y recv, y guardar logs de estas 3 funcione (entrada y salida de paquetes) en un archivo de texto, la dll esta en c++... Pero bueno no se como transferir esa informacion a vb para plasmarla en un richtextbox por ejemplo... Leer el archivo de log que guarda la dll seria medio "trucho" (no me mal interpretes no va contra vos, es que no encontre otra manera de decirlo :P, en otro caso seria una buena alternativa) ya que seria lento al estar todo el tiempo modificando el log la dll y yo leyendolo, SUPONGO... Si alguien tiene algun tutorial de comunicacion entre dll c++ y vb me puede tirar una mano y pasarmelo porfavor :P Los que encontre en internet solo me muestran como enviar una accion desde vb a dll pero no desde la dll a vb directamente.... Gracias! Título: Re: api hook Publicado por: BlackZeroX en 18 Marzo 2011, 17:47 pm .
* Pchar si no mal recuerdo en vb6 es strptr(). aun que debes manejar los byval... * ^ me parece que se interpreta como en C/C++ es decir un Xor * PDWORD() no es necesario. se hace un Casting interno en el api (es solo una suposicion ya que no veo que se este ahciendo algo mas con las variables involucraas). pero en dado caso que lo requieras aqui tienes: Código
Temibles Lunas!¡. . Título: Re: api hook Publicado por: ntaryl en 21 Marzo 2011, 18:52 pm check this
http://files.codes-sources.com/fichier_fullscreen.aspx?id=26027&f=1-Sniffer%5CfrmMain.frm&lang=en |