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

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


+  Foro de elhacker.net
|-+  Programación
| |-+  Ingeniería Inversa (Moderadores: karmany, .:UND3R:., MCKSys Argentina)
| | |-+  Verificar si una dll está cargada en un ejectuable?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: 1 [2] Ir Abajo Respuesta Imprimir
Autor Tema: Verificar si una dll está cargada en un ejectuable?  (Leído 9,443 veces)
Hendrix
In The Kernel Land
Colaborador
***
Desconectado Desconectado

Mensajes: 2.276



Ver Perfil WWW
Re: Verificar si una dll está cargada en un ejectuable?
« Respuesta #10 en: 10 Febrero 2012, 11:55 am »

Fijate esto: http://msdn.microsoft.com/en-us/library/windows/desktop/aa813706(v=vs.85).aspx

Este es el campo interesante: http://msdn.microsoft.com/en-us/library/windows/desktop/aa813708(v=vs.85).aspx

De ese array (InMemoryOrderModuleList) sale el listado de modulos cargados (el mismo que usa Olly)

Ni te digo si te pones a jugar con eso...  ;)

Saludos!

Este método es utilizado por algunos Rootkits. Al eliminar el modulo de la lista de módulos, la librería no se puede descargar de memoria. Te lo digo por si te interesa darle más protección :)

Te comento que la opción del CRC comprobado en modo servidór no es la mejor opción. Alguien que te quiera modificar la libreria, sencillamente tiene que sniffar el tráfico de tu libreria, copiarse el CRCR (aunque sea cifrado), modificar tu libreria, poner un hook a tu función de envio de datos y enviar siempre ese CRC.

Las tareas de ofuscación de código son realmente tediosas, pero sería una buena opción. Ofuscar lo más que puedas el código y al detectar modificaciones, sencillamente crashear el proceso y/o juego. Como te han dicho, pon varias funciones de comprobación de código, lo más enrevesadas posible. Por ejemplo, si lo programas en C puedes agregarle basura en ensamblador...

Y como has comentado antes, espero que lo subas para que podamos trastear un poco :D es un tema realmente interesante :D

Saludetes!!
En línea

"Todos los días perdemos una docena de genios en el anonimato. Y se van. Y nadie sabe de ellos, de su historia, de su peripecia, de lo que han hecho, de sus angustias, de sus alegrías. Pero al menos una docena de genios se van todos los días sin que sepamos de ellos". - Juan Antonio Cebrián
Pinkof

Desconectado Desconectado

Mensajes: 26


Ver Perfil
Re: Verificar si una dll está cargada en un ejectuable?
« Respuesta #11 en: 22 Febrero 2012, 18:05 pm »

bueno ya que esta el tema me uno para preguntar algo ya que supongo que estamos hablando del mismo juego..

el juego tiene dentro un serial el cual verifica el servidor si es correcto para entrar.
se podria modificar el servidor y cliente para que envien un serial falso a la hora de pasar por un sniffer pero cuando llegue al servidor diga q es verdadero
pero que solo funcione con ese cliente? o injertos se podria hacer para mentir a los sniffer y alos que abren el cliente con un editor hexadecimal que muestre un serial para la vista huamana pero que sea otro para el trafico de datos..

espero que me hayan entendido salu2

PD: ejemplo.
Serial Cliente : 123456789
Serial en el servidor 987654321 >> transforma 123456789 a 987654321

quizas me este faltando algo que no puedo darme cuenta
En línea

.:UND3R:.
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.118


Ingeniería inversa / MASM


Ver Perfil WWW
Re: Verificar si una dll está cargada en un ejectuable?
« Respuesta #12 en: 22 Febrero 2012, 22:20 pm »

bueno ya que esta el tema me uno para preguntar algo ya que supongo que estamos hablando del mismo juego..

el juego tiene dentro un serial el cual verifica el servidor si es correcto para entrar.
se podria modificar el servidor y cliente para que envien un serial falso a la hora de pasar por un sniffer pero cuando llegue al servidor diga q es verdadero
pero que solo funcione con ese cliente? o injertos se podria hacer para mentir a los sniffer y alos que abren el cliente con un editor hexadecimal que muestre un serial para la vista huamana pero que sea otro para el trafico de datos..

espero que me hayan entendido salu2

PD: ejemplo.
Serial Cliente : 123456789
Serial en el servidor 987654321 >> transforma 123456789 a 987654321

quizas me este faltando algo que no puedo darme cuenta

Si mal no me equivoco el cliente envía el serial en texto plano, en este caso si se utiliza un sniffer sería muy fácil detectarlo, una manera para ocultarlo de manera visual sería que el serial no contenga palabras, sino alguna secuencia de códigos hexadecimales, esto lo hace más difícil visualmente. Claro que si el atacante sabe más o menos como trabaja el cliente no nos serviría mucho.

En cuanto a mi caso, aparte de empaquetar el ejectuable realicé un injerto dentro de una función del juego que se encarga de descifrar el serial. Es decir que si en mi caso si alguien lograra desempaquetarlo (muy fácil a mi criterio el packer que utilicé, se asimila a UPX) si utilizara main cracker (para los que no saben es una aplicación encargada de mostrar el offset en donde se almacena el serial, versión, IP), no verían el serial correcto ya que en el Entry Point el serial sigue cifrado, Luego de esto en mi cliente calcula el tamaño de la aplicación, si este excede el peso del .exe empaquetado (por lo general su peso es menor), el cliente se cierra.

Saludos
En línea


Solicitudes de crack, keygen, serial solo a través de mensajes privados (PM)
x64core


Desconectado Desconectado

Mensajes: 1.908


Ver Perfil
Re: Verificar si una dll está cargada en un ejectuable?
« Respuesta #13 en: 22 Febrero 2012, 23:12 pm »

UND3R esperamos la dll o el project para jugar  :rolleyes:
En línea

MCKSys Argentina
Moderador Global
***
Desconectado Desconectado

Mensajes: 4.963


Diviértete crackeando, que para eso estamos!


Ver Perfil
Re: Verificar si una dll está cargada en un ejectuable?
« Respuesta #14 en: 23 Febrero 2012, 00:05 am »

Luego de esto en mi cliente calcula el tamaño de la aplicación, si este excede el peso del .exe empaquetado (por lo general su peso es menor), el cliente se cierra.

Podrias pasar el EXE a ver si es "anti-crackers"...  ;D
En línea

MCKSys Argentina

"Si piensas que algo está bien sólo porque todo el mundo lo cree, no estás pensando."

.:UND3R:.
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.118


Ingeniería inversa / MASM


Ver Perfil WWW
Re: Verificar si una dll está cargada en un ejectuable?
« Respuesta #15 en: 23 Febrero 2012, 01:04 am »

por el momento les dejo la web de los programadores de la dll por si quieren observarla.

http://www.tdagameguard.com.ar/

Saludos
En línea


Solicitudes de crack, keygen, serial solo a través de mensajes privados (PM)
Иōҳ


Desconectado Desconectado

Mensajes: 563


Ver Perfil
Re: Verificar si una dll está cargada en un ejectuable?
« Respuesta #16 en: 23 Febrero 2012, 15:24 pm »

Estás ayudando con el anticheat?

Podemos chitiar un rato con el game y "malograr las partidas" coff coff.... y... así ayudarte?  :xD

PD: No me di cuenta XD, es un sistema anticheat jee.. pensé que era un game con el sistema anticheat u.u

Nox.
« Última modificación: 23 Febrero 2012, 15:27 pm por Иōҳ » En línea

Eres adicto a la Ing. Inversa? -> www.noxsoft.net
.:UND3R:.
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.118


Ingeniería inversa / MASM


Ver Perfil WWW
Re: Verificar si una dll está cargada en un ejectuable?
« Respuesta #17 en: 23 Febrero 2012, 21:54 pm »

Estás ayudando con el anticheat?

Podemos chitiar un rato con el game y "malograr las partidas" coff coff.... y... así ayudarte?  :xD

PD: No me di cuenta XD, es un sistema anticheat jee.. pensé que era un game con el sistema anticheat u.u

Nox.

El sistema anticheat lo incluí en el servidor de juegos que estoy trabajando jeje :B
En línea


Solicitudes de crack, keygen, serial solo a través de mensajes privados (PM)
Иōҳ


Desconectado Desconectado

Mensajes: 563


Ver Perfil
Re: Verificar si una dll está cargada en un ejectuable?
« Respuesta #18 en: 24 Febrero 2012, 21:09 pm »



A entonces me cito

Podemos chitiar un rato con el game y "malograr las partidas" coff coff.... y... así ayudarte?  :xD



x;D

Nox
En línea

Eres adicto a la Ing. Inversa? -> www.noxsoft.net
Páginas: 1 [2] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Verificar si esta conectado a internet
Programación Visual Basic
akss_wm 1 1,333 Último mensaje 2 Marzo 2006, 21:39 pm
por Sancho.Mazorka
verificar Si Web Está Online
Programación Visual Basic
Rudy21 3 1,697 Último mensaje 5 Octubre 2008, 07:04 am
por seba123neo
Como verificar si mi payload está deñada
Bugs y Exploits
.:UND3R:. 3 4,416 Último mensaje 21 Febrero 2014, 09:40 am
por adastra
¿Cuanto les esta tardando zone-h en verificar?
Dudas Generales
alienmaster 1 1,209 Último mensaje 14 Octubre 2014, 00:17 am
por peib0l
verificar si un numero esta repetido en matriz « 1 2 3 »
Programación C/C++
SojatDotar 25 12,494 Último mensaje 7 Julio 2015, 00:35 am
por SojatDotar
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines