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

 

 


Tema destacado: Los 10 CVE más críticos (peligrosos) de 2020


+  Foro de elhacker.net
|-+  Programación
| |-+  Ingeniería Inversa (Moderadores: karmany, .:UND3R:., MCKSys Argentina)
| | |-+  Como modificar String no Unicode
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: Como modificar String no Unicode  (Leído 5,871 veces)
ClubIce

Desconectado Desconectado

Mensajes: 5


Ver Perfil
Como modificar String no Unicode
« en: 16 Marzo 2010, 02:51 am »

Hola comunidad,

Estoy traducciendo una Aplicacion, y sucede que algunas de las Strings del EXE no estan en formato Unicode, por lo cual El ResHacker ni El XN Resource Editor me las detexta (Soy principiante). entonces alguien conoce algun metodo para editarlas podiendo insertar mas bytes, es que si lo hago con un editor hexadecimal, no me permitiriaañadir mas bytes porque me daña la apliccion :(
En línea

MCKSys Argentina
Moderador Global
***
Desconectado Desconectado

Mensajes: 5.513


Diviértete crackeando, que para eso estamos!


Ver Perfil
Re: Como modificar String no Unicode
« Respuesta #1 en: 16 Marzo 2010, 03:29 am »

Quizás deberías pensar que si no están en UNICODE, es porque no fueron pensadas para ser traducidas...  :P
En línea

MCKSys Argentina

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

bizco


Desconectado Desconectado

Mensajes: 698


Ver Perfil
Re: Como modificar String no Unicode
« Respuesta #2 en: 16 Marzo 2010, 03:39 am »

tampoco desanimes al chaval ;), mueve las cadenas de sitio y punto. una cadena tiene una direccion fija, pues tu buscas un espacio para escribir pones ahi lo que necesites y cambias la direccion por la nueva.
En línea

ClubIce

Desconectado Desconectado

Mensajes: 5


Ver Perfil
Re: Como modificar String no Unicode
« Respuesta #3 en: 16 Marzo 2010, 21:26 pm »

Quizás deberías pensar que si no están en UNICODE, es porque no fueron pensadas para ser traducidas...  :P

Pues si deben ser traducidad porque forman parte de la interface del programa.

tampoco desanimes al chaval ;), mueve las cadenas de sitio y punto. una cadena tiene una direccion fija, pues tu buscas un espacio para escribir pones ahi lo que necesites y cambias la direccion por la nueva.

Bueno, si no es mucha mestia, me podrias explicar como se hace eso ????
En línea

MCKSys Argentina
Moderador Global
***
Desconectado Desconectado

Mensajes: 5.513


Diviértete crackeando, que para eso estamos!


Ver Perfil
Re: Como modificar String no Unicode
« Respuesta #4 en: 17 Marzo 2010, 00:34 am »

Si están en la sección de recursos, las puedes editar con un editor de recursos.

Si no están ahi, es porque están en la sección de datos. Para editarlas, puedes usar un editor hexa y listo. El tema es que, quizás, no estén en UNICODE, sino en ANSI (lo cual facilita la tarea ;))

Saludos!
En línea

MCKSys Argentina

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

LSL

Desconectado Desconectado

Mensajes: 239

Cls


Ver Perfil
Re: Como modificar String no Unicode
« Respuesta #5 en: 17 Marzo 2010, 01:01 am »

Citar
Citar
Cita de: ctlon en Ayer a las 03:39
tampoco desanimes al chaval , mueve las cadenas de sitio y punto. una cadena tiene una direccion fija, pues tu buscas un espacio para escribir pones ahi lo que necesites y cambias la direccion por la nueva.


Bueno, si no es mucha mestia, me podrias explicar como se hace eso ????
eso se hace para crackear y aparentar estar registrado, etc, es decir para poca cosa, pero para traducir todo un programa es un trabajo de monos, que quizas no valga la pena, seguro que para cuando termines ya han sacado una versión mejor del programa.
Pero te digo mas o menos como se hace con el ollydbg, con el menu desplegable search for all referenced text strings, buscas las cadenas de texto,  te fijas en la direccion de memoria donde se encuentra, tambien te fijas en la direccion de memoria donde el programa hace la llamada a la direccion donde esta el texto original, entonces buscas un sitio libre dentro del codigo, donde escribir la nueva cadena traducida, anotas en la direcion offset que empieza, y en el lugar donde se llama a la cadena original le cambias la direcion indicando la de donde se encuentra la nueva cadena, asi llamara siempre a la nueva cadena en vez de la vieja.

Esto a veces tiene un problema añadido, que es que en un programa compilado eficientemente, existen pocos lugares vacios donde escribir muchas cadenas largas. Aunque tambien se pueden hacer injertos de nuevas secciones, pero ya todo esto no es tan facil como con los editores de recursos (mejor es simplificar el texto original para no salirte del espacio original).

Tambien hay veces que con los editores de recursos te dejan insertar nuevos controles de texto dentro de los formularios, para escribir el texto que te falte en la traducción.
 
En línea

Saludos.

LSL.
ClubIce

Desconectado Desconectado

Mensajes: 5


Ver Perfil
Re: Como modificar String no Unicode
« Respuesta #6 en: 17 Marzo 2010, 02:07 am »

Citar
Citar
Cita de: ctlon en Ayer a las 03:39
tampoco desanimes al chaval , mueve las cadenas de sitio y punto. una cadena tiene una direccion fija, pues tu buscas un espacio para escribir pones ahi lo que necesites y cambias la direccion por la nueva.


Bueno, si no es mucha mestia, me podrias explicar como se hace eso ????
eso se hace para crackear y aparentar estar registrado, etc, es decir para poca cosa, pero para traducir todo un programa es un trabajo de monos, que quizas no valga la pena, seguro que para cuando termines ya han sacado una versión mejor del programa.
Pero te digo mas o menos como se hace con el ollydbg, con el menu desplegable search for all referenced text strings, buscas las cadenas de texto,  te fijas en la direccion de memoria donde se encuentra, tambien te fijas en la direccion de memoria donde el programa hace la llamada a la direccion donde esta el texto original, entonces buscas un sitio libre dentro del codigo, donde escribir la nueva cadena traducida, anotas en la direcion offset que empieza, y en el lugar donde se llama a la cadena original le cambias la direcion indicando la de donde se encuentra la nueva cadena, asi llamara siempre a la nueva cadena en vez de la vieja.

Esto a veces tiene un problema añadido, que es que en un programa compilado eficientemente, existen pocos lugares vacios donde escribir muchas cadenas largas. Aunque tambien se pueden hacer injertos de nuevas secciones, pero ya todo esto no es tan facil como con los editores de recursos (mejor es simplificar el texto original para no salirte del espacio original).

Tambien hay veces que con los editores de recursos te dejan insertar nuevos controles de texto dentro de los formularios, para escribir el texto que te falte en la traducción.
 

lo que estoy traduciendo e sun Juego, y las Strings que te estoy hablando son como variables. haber si nos entendemos mejor.
En línea

bizco


Desconectado Desconectado

Mensajes: 698


Ver Perfil
Re: Como modificar String no Unicode
« Respuesta #7 en: 17 Marzo 2010, 03:38 am »

LSL has dicho exactamente lo mismo que le digo yo no se pq dices:

Citar
eso se hace para crackear y aparentar estar registrado, etc, es decir para poca cosa

no se de donde entiendes en lo que puse eso.

ClubIce probaste lo que ya te dije?.

push 123456  ; 123456 apunta a una cadena, pero tu necesitas mas bytes.

Buscas un sitio donde escribir tu nueva cadena y modificas el push 123456 por push nueva direccion.
En línea

LSL

Desconectado Desconectado

Mensajes: 239

Cls


Ver Perfil
Re: Como modificar String no Unicode
« Respuesta #8 en: 17 Marzo 2010, 19:43 pm »

ctlon, lo que puse, quiero que entiendas que no es para contradecirte, ni lo saco del contexto de tus palabras, y quizás no me expliqué bien o suficientemente para que me entiendan.

cuando le digo al compi que pide ayuda de cómo se hace lo que tu le indicas, le digo "eso se hace para crackear y aparentar estar registrado, etc., es decir para poca cosa", con ello quiero decirle, que: el cambiar las direcciones de sitio, se puede hacer para cambiar las instrucciones a ejecutar en el programa (crackear) y para cambiar texto cuando queremos aparentar estar registrado, y con lo de (para poca cosa) quiero decir que yo lo hago solo para poco texto (imaginate que tenga que cambiar la dirección de unos cuantos megabytes de lineas de texto, porque seguro que mientras mas cosas cambiemos mas probabilidades de que luego el programa no funcione como es debido, y sobre todo al carecer de suficientes espacios vacios, experiencia y conocimientos para modificar el tamaño de las secciones.
 
Pero si para el compi es su gusto hacerlo, y no es mucho lo que tiene que modificar, (el es quien tiene que valorar si es mucho o poco) a continuación más o menos le explicaba como se hace para localizar el presunto texto, y tomar nota de las direcciones de llamada, ampliándole un poco más a mi manera el proceso que le apuntabas en tu post.
En línea

Saludos.

LSL.
bizco


Desconectado Desconectado

Mensajes: 698


Ver Perfil
Re: Como modificar String no Unicode
« Respuesta #9 en: 17 Marzo 2010, 20:29 pm »

ok perdona entonces, entendi mal  :-*.
En línea

Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Como convertir Unicode a ascii
Programación Visual Basic
thecirujano 4 6,916 Último mensaje 8 Febrero 2011, 15:49 pm
por LeandroA
como retornar un int como un string c++?
Programación C/C++
andrex.125 2 3,571 Último mensaje 16 Mayo 2013, 20:26 pm
por andrex.125
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines