Aunque lo he posteado también en ingeniería inversa, lo pongo aquí ya que puede resultar de mucha utilidad a cualquier programador para embeber archivos o bytes o lo que quieran...
Hace un tiempo en el siguiente enlace:
Compromiso de karmany
me comprometí a hacer un programa que sirviera para añadir bytes a la última sección. Lo he ido mejorando poco a poco y lo envío ahora ya que pienso que puede ser de utilidad.
Bueno, por fin después de corregir ciertos fallos (que sólo se producían en Windows XP chino) he conseguido sacar la versión estable 0.1.1
Características:
-Sólo trabaja con datos hexadecimales
-Permite añadir bytes (o embeber archivos) en cualquier sección de un ejecutable, incluído el PE Header!
-Permite añadir bytes (o embeber archivos) al final de cualquier ejecutable, fuera de las secciones.
-Permite añadir cuantas secciones se quieran (hay que tener en cuenta el tamaño del PE Header ya que sino podemos sobreescribir la primera sección).
Flag: E0000020 nombre:karmany
-Multilenguaje. He enviado 3 lenguajes: Chino simplified, inglés (por defecto y no hace falta librería) y español. Simplemente hay que poner la librería language.dll que corresponda junto al programa.
-La librería language.dll en inglés es simplemente para que cada uno la modifique y ponga el idioma que uno quiera.
-El archivo de ayuda ha sido EMBEBIDO con "Add PE bytes". Este es por ej. uno de los usos que podemos utilizar.
-Tiene soporte UNICODE y permite abrir cualquier archivo con este formato.
-El archivo de ayuda está embebido y pienso que el programa es tan fácil de usar que no requiere del mismo.
-Está programado en VC++ 8.0 pero los movimientos de bytes están en ensamblador para aumentar la velocidad al máximo.
-Cuando se pulsa el botón para añadir bytes aparece un messagebox contra lamers. Es código virtualizado.
Este programa lo hice porque a un forero se lo prometí y he intentado hacerlo lo mejor posible. Espero que os sea de utilidad y sin dudarlo, cualquier problema que os salga comentarmelo por email, estaré agradecido.
Un saludo.
PD. Quiero dar las gracias especialmente a crfan que me ha ayudado a descubrir varios bugs importantes. Gracias desde aquí.
Quiero destacar que estoy trabajando en la nueva versión 0.1.2. Se corregirán varios bugs y lo más importante es que crearé un instalador evitando usar Molebox ya que saltan varios falsos positivos.
Datos del rar:
Tamaño: 196.092 bytes
HASH md5-128: D83132275D899CB07C70DA2D3EC96022
Contraseña: karmany
Enlace:
Add PE bytes 0.1.1 por karmany
Otro enlace:
Add PE bytes 0.1.1 por karmany
Actualización librería idioma Chino simplified:
Chinese Simplified Update
Otro enlace:
Chinese Simplified Update