Foro de elhacker.net

Programación => Ingeniería Inversa => Mensaje iniciado por: palomito en 28 Mayo 2012, 07:15 am



Título: como agregar una funcion a un archivo dll?
Publicado por: palomito en 28 Mayo 2012, 07:15 am
lo qe pasa  es qe  abri un archivo dll  con un block de notas  y quiero aumentarles algunas funciones  mas ...pero al guardar el archivo y pegarlo en la carpeta del juego me sale "La aplicación o dll....no es una imagen valida de Windows. "....   debo  hacer algo mas aparte de modificar o  guardar??   ..ustedes diran qe  no es tan solo aumentar letras  pero  es qe  este  juego le  han quitado algunas  acciones  yo solo quiero aumentarla  nada  mas  son solo letras....debo  hacer algo  aparte de  guardar y copiar....o debo  usar  algun programa  para  hacer eso.


Título: Re: como agregar algunos comandos a un archivo dll?
Publicado por: Høl¥ en 28 Mayo 2012, 10:01 am
Prueba usando un editor hexadecimal pienso que es mejor para ese cometido.


Título: Re: como agregar algunos comandos a un archivo dll?
Publicado por: palomito en 28 Mayo 2012, 14:22 pm
loque deseo hacer esto: tengo un programa que solo trae pocas opciones (http://s3.subirimagenes.com:81/otros/previo/thump_7729490dibujo.jpg)  yo quiero aumentarle estas  otras  opciones (http://s2.subirimagenes.com/otros/previo/thump_772946966.jpg)       ya encontre el archivo dll . lo abri y busque las  lineas (http://s3.subirimagenes.com:81/otros/previo/thump_772947777.jpg)   mi idea  era aumentar escribir la opciones  que faltan  en el archivo dll  abierto con el block de  notas  y guardarlo.  pero cuando lo pego el la carpeta del  juego me sale la aplicacion no ha podido iniciar  blablablablaa...pero si pego el archivo original si funciona normal....me entienden? debo hacer algo mas  aparte de solo abrir el block de notas y aumentar letras?...ayudaaa


Título: Re: como agregar algunos comandos a un archivo dll?
Publicado por: Høl¥ en 28 Mayo 2012, 15:01 pm
También deberías poder hacerlo con el bloc de notas, aun así no entiendo del todo que pretendes añadir a la dll y cómo lo estas haciendo, pero con solo añadir unas líneas no tiene porque añadirse una nueva funcionalidad. Debes saber en que parte del código las tienes que añadir.

Y también fíjate en si esta packed, ahí ya está más difícil la cosa y yo ya no te puedo ayudar, soy nulo en unpacking  :laugh:


Título: Re: como agregar algunos comandos a un archivo dll?
Publicado por: Иōҳ en 28 Mayo 2012, 16:32 pm
En primera vista se ve que es un cheat, pero no podes abrir y agregar una función así de simple, creo que debes empezar por aquí:

http://foro.elhacker.net/ingenieria_inversa/faq_iquesteres_nuevo-t345798.0.html


Saludos,
Nox.


Título: Re: como agregar algunos comandos a un archivo dll?
Publicado por: palomito en 28 Mayo 2012, 16:39 pm
claro es  para un juego ..pero  dime  si estoy haciendo algo mal  para qe me salga " windows  no reconoce archivo  balblabla. "... debo hacer otra  cosa aparte  de eso?


Título: Re: como agregar algunos comandos a un archivo dll?
Publicado por: Иōҳ en 28 Mayo 2012, 16:47 pm
Estás modificando la integridad de la DLL, sin saber que estás haciendo, cambiar una simple cadena no le agrega una funcionalidad, eso son lineas de código, debes comenzar por el link que te deje.


Saludos,
Nox.


Título: Re: como agregar una funcion a un archivo dll?
Publicado por: karmany en 28 Mayo 2012, 18:37 pm
Lo primero que debes saber es el formato de la dll. ¿Es realmente una dll?¿Tiene formato PE?
PE: The Portable Executable (PE) format is a file format for executables, object code and DLLs, used in 32-bit and 64-bit versions of Windows operating systems.

A mí no me gusta que lo abras con un editor básico como el notepad, porque luego al guardarlo puedes perder involuntariamente mucha información.

¿La dll se puede cargar en OllyDBG? ¿Te muestra código.?

Pero antes de nada, yo me pregunto lo principal: ¿Para qué quieres solo agregar cadenas de texto? ¿Y la funcionalidad? Deberás luego programar en ensamblador el código para que te dé esos datos que quieres agregar no?


Título: Re: como agregar una funcion a un archivo dll?
Publicado por: palomito en 28 Mayo 2012, 19:48 pm
gracias por  responde amigo.  mira este es el archivo   http://www.mediafire.com/file/c6y8f53c1n23k7c/d3d9.rar                   ....qe  no puedo  solo  aumentar unas linea s con el notepad  y  guardarlo ?....


Título: Re: como agregar una funcion a un archivo dll?
Publicado por: apuromafo CLS en 28 Mayo 2012, 20:04 pm
+1 karmany

palomino, no es de ser malo, pero digamos que un programa lee algo en un archivo
1230  , cuando agregas en el string una palabra mas 12304 seguira leyendo lo mismo
pero todo lo que sigue sera o bien desplazado y quedara no operativo, los exes y dll no trabajan asi como de la nada, trabajan en un formato PE, que refiere la informacin donde comenzar la iat, donde ejecutar la aplicacion y aun mas, el orden lo da el programador, asi que puedes agregar secciones y lugares, pero bien debes programar su funcionalidad
te queda bastante camino por hacer, y pedir ayuda, es que realmente no has leido nada del faq ni de lo que refiere este foro...
seguire esperando donde refien aprendas un poco de PE, y pidas alguna tool o similar, por mientras , lo que haces no tiene ningun sentido como tal...


Título: Re: como agregar una funcion a un archivo dll?
Publicado por: palomito en 28 Mayo 2012, 20:27 pm
bueno  no es tan  facil como parece...al menos me podrian decir  si se puede  como evitar que  tenga  un  tope osea por ejemplo: en una de las  opciones me  da  para ponerlo de  1  a  100  pero en otra de las  opciones solo puedo  ponerlo en 1.....cuando  abri el archivo con el notedpad note  qe en  algunas  opsiones  al costado no  dice nada en blanco ..pero  en la qe  me permite  solo 1.al  costado  dice  %d?  ese  valor vale  1 oqe  no  quiero aumentar ni borrar  nada  solo cambierle  de valor  para aumentar  su capacidad?  no se  si me entienden  ...bueno espero qe si(http://s3.subirimagenes.com:81/otros/previo/thump_7730073ppp.jpg)      o    tambien no se  puede  .?


Título: Re: como agregar una funcion a un archivo dll?
Publicado por: apuromafo CLS en 28 Mayo 2012, 20:30 pm
yo si supiera de ingenieria inversa esperaria que estuviara ejecutado, colocaria un bp en access en el lugar y luego es cambiar a gusto
espero te animes  a leer el faq, luego sabras a que me refiero en 1 mes mas, es mas no solo aprenderas que hay un formato de string (ascii , unicode), sino ademas, veras que hay recursos y formas de llamar a recursos, esas string, y como editarlas
saludos Apuromafo


Título: Re: como agregar una funcion a un archivo dll?
Publicado por: Potato en 28 Mayo 2012, 20:57 pm
jejejejejeje esto me recuerda a algo.....


te lo  traduzco palomito, para hacer lo que quieres hacer se necesita saber de ingenieria inversa..... no basta con poner las palabras en el archivo que abres sino que hay que programar desde dentro del ejecutable (corregirme si me equivoco ) vamos en resumidas cuentas, si quieres hacer lo que quieres hacer tienes que empezar a estudiar ingenieria inversa y con ello  veras un mundo que se te abre..... pero no todo es oro porque el camino es muy largo eso si es bonito porque recompensa......

ahora es tu decision empezar a estudiar o simplemente aceptar que no es tan facil y dejarlo..... yo elegi el camino largo  y dificil pero el que me esta recompensado dia  a dia......

un saludo palomito



Título: Re: como agregar una funcion a un archivo dll?
Publicado por: The Swash en 28 Mayo 2012, 21:34 pm
Creo que el Formato PE y su directorio de exportaciones pueden ser lo que necesites para solucionar tu problema, documentate un poco.

"Formato PE bajo Windows", está en español y lo puedes encontrar en el siguiente enlace:
Código:
http://foro.elhacker.net/empty-t332157.0.html

O preferiblemente el documento que muchos llamamos la bíblia del Formato PE, el PECOFF que es la documentación oficial de Microsoft sobre el tema:
Código:
http://msdn.microsoft.com/en-us/library/windows/hardware/gg463119.aspx

Un saludo,
Iván Portilla.