Buenas!
Tengo un pequeño problemilla. Tengo que hacer un programa que a partir de unos datos que se le dan, cree otro ejecutable.
El típico ejemplo sería el troyano que crea servidores personalizados a partir de ciertos datos.
Mi pregunta es la siguiente: Como lo hago?
Demasiado general.
Entonces más concreta:
Como empiezo? Lo meto en un editor hexadecimal y miro donde están los datos? Como creo el archivo en sí desde otro archivo?
Desde ya, gracias.
Saludos.
Necesitas conocer la estructura de un ejecutable y luego es reletivamente sencillo. Leete el documento titulado "The portable executable file format from top to bottom" de Randy Kath.
Saludos.
Buenas Slasher Keeper!
He hecho lo siguiente:
He creado un programa de ejemplo, donde solo hay un Label que pone "HOLAAAAAAAAAAAAAAA". Luego lo abró con un editor Hexadecimal, y busco el Label. Sustituyo algunas A por algunas B y guardo, ejecuto y funciona, sale HOLAAABBBBBBBB. Ok, si ahora pongo en cada A el byte 00, sale HOLA, es decir, anulo las A. Esto supongo que os parecerá lógico, si sabeis usar un editor de estos, jeje.
Bueno, pues mi idea era la siguiente:
Necesito crear un ejecutable, que coja otro ejecutable y le modifique una URL. Mi idea era poner una URL larguisima, para que el usuario, al poner la suya, sea más corta y el resto lo tapo con 00. Ahora bien, sé que tengo que rellenar con 00 y sé la cantidad, porque lo puedo hacer con Len(url), pero nosé como abrir el archivo en Visual Basic para hacer esto, donde localizar la cadena y como sustituirlo.
Gracias por adelantado.
Saludos,
Ertai
Por cierto... Alguien tiene el crack del WinHex 12.25? ;D ;D
Saludos,
Ertai
no pidas cracks, hay editores gratuitos. por ejemplo:
open archivo for binary as #N
despues te desplazas hasta la posicion N y escribes tus datos.
Y como sigo?
Es que en el editor, salen lineas con offsets y en cada línea hay diferentes bytes.
Pero es que no tengo ni idea de como leer y modificar esos bytes, y he buscado en Google y nada, no hay nada tan específico.
Saludos,
Ertai
si lo hay, lee sobre manejo de ficheros en vb y veras como si lo explica.
Valeeee, por fin lo encuentro y aparte he conseguido entender este editor hexadecimal!!!
Aquí dejo el código:
Sacado de la web del Guille y modificado por mí
Private Sub Command1_Click()
Dim nFic As Integer
Dim sFic As String
Dim sCadena As String
'sCadena tiene 20 caracteres
sCadena = "Prueba de una cadena"
sFic = "hola.exe"
nFic = FreeFile
Open sFic For Binary As nFic
Put nFic, 4647, sCadena ' el 4647 es el offset donde se empieza a escribir
Close nFic
'leer los datos guardados
nFic = FreeFile
Open sFic For Binary As nFic
Get nFic, , sCadena
Print sCadena
Close nFic
End Sub
Gracias Cara_Webo por insistir en que lo buscará, me podrías recomendar un editor hexadecimal libre? Es que el que tengo yo es de pago y el libre que me bajado es una *****.
Saludos,
Ertai
te puedo decir pero no te va a gustar. puedes usar uno comercial, pero aqui no pidas el crack.